CSE 392/591 - GPU Programming




Home
Schedule
Labs
Links
Policies
Grades

General Info:

Instructor: Prof. Klaus Mueller
    Office hours: SUNY Korea B-471, We 2-3pm (or send email for other arrangements)
    Phone: +82-32-626-1200
    Email: mueller{remove_this}@cs.sunysb.edu

Grader: 

Meeting time and venue:

     SUNY Korea, B-204, MW 10:00 - 11:20 am

Summary:
   Multi-core processors are no longer the future of computing -- they are the present day reality. A typical mass-produced CPU features multiple processor cores, while a GPU (Graphics Processing Unit) may have hundreds of cores. With the rise of multi-core architectures has come the need for advanced programmers to know a new and essential skill: how to program massively parallel processors. This course presents the basic concepts of parallel programming and the GPU architecture. Various techniques for constructing parallel programs are explored in detail. Case studies demonstrate the development process, which begins with computational thinking and ends with effective and efficient parallel programs. We will utilize CUDA, NVIDIA’s software development tool developed specifically for massively parallel environments, as well as OpenCL.
 
Prerequisites:
    Graduate standing
    Working knowledge of C/C++

Texts:
   Required: Programming Massively Parallel Processors, Secomd Edition: A Hands-On Approach by David Kirk and Wen-mei Hwu (book website)

   Reference: CUDA Programming: A Developer's Guide for Parallel Programming with GPUs by Shane Cook

Grading:
    Midterm 30%
    Lab assignments: 30%
    Final Project: 40%