CMSC 828E: Seminar on Scientific Computing on Graphical Processors

 

Class: TuTh......12:30pm- 1:45pm (CSI 3120)

 

Office Hours: Tuesday 2:00 -3:15 and by appointment, in AVW 3365.

 

Instructor: Ramani Duraiswami E-mail: ramani AT umiacs.umd.edu;     

Textbook: None.

 

This course is project oriented, and will involve discussions of papers, parallel programming strategies for particular classes of scientific computing problems.

 

Collaboration Policy:  You may study together and discuss problems and methods of solution with each other to improve your understanding. You are welcome to discuss assignments in a general way among yourselves, and on joint projects. However, you must clearly cite where this is the case.

 

You are responsible for checking this page.

Policy: Honor code http://www.studenthonorcouncil.umd.edu/code.html

Grading: Project 40%, Homework 25%, Class/Forums/Wiki Participation 35%

DATE

LECTURE

CONTENTS

Reading/Remarks

01/27, 2009

(Tuesday)

Lecture 0

Class canceled due to the weather

 

01/29, 2009

(Thursday)

Lecture 0

Introduction to the course. Introductions. Grading. What the course is about. Participation. Projects.

 

Forums Wiki

02/03, 2009

(Tuesday)

Lecture 1

Trends in scientific computing. Growth in problem size. Growth in datasets. Trends in computer architecture. End of Moores law. GPU

G. Moore, "Cramming More Components onto integrated circuits," Electronics, 38, 1965

02/05, 2009

 

(Thursday)

Lecture 2

Introduction to the GPU architecture. GPU model of parallelism. Concurrency. Threads. CUDA. Memory. Scheduling.

Peter Zalutskis CUDA slides

02/10, 2009

(Tuesday)

Lecture 3

Introduction to CUDA programming

CUDA 2.1 programming guide

Garland tutorial slides

CUDA U

Homework 1-2

Due Feb 17/24

Getting started programming

 

02/12, 2009

(Thursday)

Lecture 4

CUDA programming

 

02/17, 2009

Lecture 5

Matrix multiplication

 

02/19, 2009

Lecture 6

Kate DeSpain

FFTs on the GPU

Govindaraju et al. SC08 paper talk

02/24, 2009

Lecture 7

Global and Shared Memory access issues

Read Chapter 5 of the manual

02/26, 2009

Lecture 8

Event link.

Talk by David Luebke

NVIDIA EVENT (RSVP)

03/03/2009

Lecture 9

Thread organization

 

03/03/ 2009

Homework

Homework, implement a simple version of the parallel prefix scan algorithm to sum up a vector (based on the SDK), and benchmark your application.

Read papers below

 

03/05/2009

Lecture 10

Adam Odonovan

Parallel prefix scan; CUDA Performance Primitives Library

 

M. Harris, G. Blelloch, Sengupta et al.

03/10/2009

Lecture 11

Typical Scientific Computing Problems: A survey

Dense matrix algorithms

Scientific Computing with Case Studies, by Dianne P. O'Leary              

Mike Giles, 

03/12/2009

Lecture 12

Aparna Kotha

Parallel Programming Patterns

UIUC site; UC Berkeley site and article; Wisconsin lectures (from site below)

03/17/2009
03/19/2009

Spring Break

 

 

03/24/2009

Lecture 13

Introduction to Flagon

 

03/26/2009

Lecture 14

Introduction to Jacket

Project discussions

 

03/31/2009

Lecture 15

Project requirements and review

 

04/02/2009

Lecture 16

CUDA CANNY

PIC codes on CUDA

Luo’s paper  code

Stantchev paper

04/07/2009

Lecture 17

The fast multipole method – an introduction to the algorithm

Lecture by Nail Gumerov

 

04/09/2009

Lecture 18

The FMM on the GPU

Lecture by Nail Gumerov

FMM GPU paper

04/14/2009

Lecture 19

Project Updates:

Dickerson: Computing Kerr tails on the GPU

Despain: Adding Multi-GPU support to Flagon

O’Donovan: Displaying scientific calculation results from CUDA

 

Further Case Studies (Finite Difference for PDEs on CUDA)

 

04/16/2009

Lecture 20

Project Updates:

Konda: LVIS data processing in CUDA

Lamphier: SVM on CUDA

 

Continued: Finite Difference for PDEs on CUDA

http://people.maths.ox.ac.uk/~gilesm/hpc/

04/21/2009

Lecture 21

Project Updates (Srinivasan, )

 

04/23/2009

Lecture 22

 

 

04/28/2009

Lecture 23

 

 

04/30/2009

Lecture 24

 

 

05/05/2009

Lecture 25

Designing a CUDA program: Application patterns

 

05/07/2009

Lecture 26

Project demos (DeSpain, Srinivasan)

Lecture: Other CUDA features

 

05/12/2009

Lecture 27

Project demos (Anand, Dickerson, Hakim, Konda, Kotha, Lamphier, Liu, O’Donovan)

 


Useful Links