3 credits, MWF 3:30pm, Call # 223257
Instructor: Prof. Umit V. Catalyurek
Course Objective and Learning Goals
The students will be introduced to the architecture and system design of emerging architectures. The course will focus on the reasons for the architectural idiosyncrasies introduced with these architectures, on the programming difficulties associated with these architectural qualities, on techniques for managing these difficulties, and how best to augment/alter the designs of these systems to minimize the programming cost of future revisions of the hardware. Additionally, the course will act as a primer for students to emerging architectures, such that they become exposed to the exciting developments in the field and might conduct future research with these technologies in mind.
Prerequisites
Prereq: ECE 662 or CS&E 675.01 or CS&E 675.02.
Prereq by topic: C/C++, parallel programming knowledge.
Text
No textbook is required.
Suggested reading:
Week

Topic

1 
Introduction to Architectural Trends, Introduction to CUDA 
2 
CUDA API, Example Matrix Multiplication 
3 
GPU/CUDA Threading Hardware, Memory Review: Shared Memory, Data Layout, Memory Conflicts 
4 
CUDA Optimizations: Memory, Control Flow, Arithmetic 
5 
No Class; Work on homework, Paper Presentation & Term Project 
6 
Student Paper Presentations 
7 
Introduction to Cell BE & Cell SDK: Motivation, Architecture, and Logistics 
8 
Cell BE Programming: 'Hello World' variants, HPC Programming Models, Cell BE Tools and Libraries 
9 
IBM Cell Simulator, Applications, and Published papers 
10 
Students term projects presentations 
Exam

Term project reports are due 
Grading
Component

Contribution
to Overall Grade

5 Homeworks

30% 
Paper presentation

15% 
Progress Report

10% 
Term Project Report

30% 
Term Project Presentation

15% 
General Comments:
 Lecture notes, details of assignments, drop boxes: visit http://carmen.osu.edu
 No Class:
 Jan 19^{th}: Martin Luther King Day
 The week of Feb 2^{nd}: work on homework, paper review and term project!
 Monday March 2^{nd}
 Assignments are due to beginning of the class on the due date.
 Late Submissions: 5% after 3:30pm, additional 10% for each day
Assignments:
 Homework #1: CUDA  Matrix Multiplication. Due: Fri Jan 23, 2009.
 Homework #2: CUDA  Profiling Array Reversal. Due: Fri Feb 6, 2009.
 Paper Review. Due: Wed Feb 11, 2009.
 Homework #3: CUDA – Cooccurrence Matrix Computation.
 Homework #4: Cell – Matrix Multiplication.
 Homework #5: Cell – Cooccurrence Matrix Computation.