SBEL Logo

Syllabus. Student Feedback.


Syllabus

Feedback: Midsemester pdf.


Class Forum


ECE/ME/EMA/CS759 Forum


Primer document. Collection of all ME759 slides.


Primer - Elements of Processor Architecture. The Hardware-Software Interplay. pdf

PDF file with all slides: pdf.


Default Midterm Projects


Default Midterm Projects. Banded linear system pdf. CFD with SPH pdf.


Reading Assignments


Manferdelli paper, 2007.

Amdahl paper, 1967.

Knuth paper on premature optimization, 1974.

Dongarra, Sterling, Simon & Strohmaier paper, 2005.

Nickolls & Dally paper, 2010.

Glaskowsky, whitepaper on Fermi architecture.

Volkov & Demmel paper, 2008.

Intel’s paper on debunking GPU performance, 2010.

Vuduc et al. paper on GPU-CPU performance comparison, 2010.

Bell & Garland, 2009. Conference paper, or longer technical report.

Thrust - GPU Gems - PDF.

Better Performance at Lower Occupancy - Vasily Volkov.


Assignments


Summary of HW extension requests html.

Assignment 11 - Due: 12/04 (11:59 PM cutoff) pdf.

Assignment 10 - Due: 11/25 (11:59 PM cutoff) pdf.

Assignment 09 - Due: 11/18 (11:59 PM cutoff) pdf.

Assignment 08 - Due: 11/04 (11:59 PM cutoff) zip.

Assignment 07 - Due: 10/28 (11:59 PM cutoff) pdf.

Assignment 06 - Due: 10/21 (11:59 PM cutoff) zip.

Assignment 05 - Due: 10/14 (11:59 PM cutoff) zip.

Assignment 04 - Due: 10/07 (11:59 PM cutoff) pdf. Source files: 1 2 3 4

Assignment 03 - Due: 09/30 (11:59 PM cutoff) pdf.

Assignment 02 - Due: 09/23 (11:59 PM cutoff) pdf. Prefix Scan 1990 paper of Blelloch

Assignment 01 - Due: 09/16 (11:59 PM cutoff) pdf.


Lectures [PDF , Audio]


11-06-2013: Wrap-up, Collective Activities in MPI. Closing Remarks: CUDA, OpenMP, MPI. Lecture Audio.

11-04-2013: Non-blocking Send/Recieve Operations. Collective Activities in MPI. Lecture Audio.

11-01-2013: Building and Running MPI code on Euler. Blocking Send/Recieve Operations. Lecture Audio.

10-30-2013: Parallel Computing using the Message Passing Interface approach. Introduction. Lecture Audio.

10-28-2013: OpenMP API. OpenMP Loose Ends. Examples. Lecture Audio.

10-25-2013: Sections and Tasks in OpenMP. Data scoping. OpenMP Synchronization. Lecture Audio.

10-23-2013: Parallel computing with OpenMP, intro. Lecture Audio.

10-21-2013: Wrap-up, GPU computing with Thrust. The CUDA ecosystem. GPU Computing wrap-up. Lecture Audio.

10-18-2013: CUDA Streams, wrap-up. GPU computing with Thrust. Lecture Audio.

10-16-2013: Prefix Scan, Wrap Up. CUDA Streams. Lecture Audio.

10-14-2013: CUDA Execution Configuration and Instruction Optimization Heuristics. Parallel Prefix Scan in CUDA. Lecture Audio.

10-11-2013: Tiling in CUDA. Array Reduction. Lecture Audio.

10-09-2013: Atomic Operations. Profiling CUDA Code Lecture Audio. Debugging CUDA pdf.

10-07-2013: CUDA Shared Memory. Synchronization. Atomic operations. Lecture Audio.

10-04-2013: Thread Divergence. Memory Accessing Issues. Lecture Audio.

10-02-2013: Example, ShMem Use. CUDA Scheduling Issues. Lecture Audio.

09-30-2013: The CUDA Memory Space. Lecture Audio.

09-27-2013: The CUDA API. Lecture Audio.

09-25-2013: CUDA Execution Configuration. Thread Indexing. Lecture Audio.

09-23-2013: GPU Computing Intro. The CUDA Programming Model. Lecture Audio.

09-20-2013: Big Iron HPC. Lecture Audio.

09-18-2013: Parallel Computing: Why?, and Why now? Lecture Audio.

09-16-2013: Caches. Virtual Memory. Lecture Audio.

09-13-2013: Pipelining. Measuring Computer Performance. Memory Aspects. Lecture Audio.

09-11-2013: Elements of Processor Architecture. Lecture Audio.

09-09-2013: End, Quick Overview of C Programming. Logging into Euler. Debugging with gdb. Lecture Audio.

09-06-2013: Quick Overview of C Programming. Lecture Audio.

09-04-2013: ME964 Syllabus. Course overview. Lecture Audio.


Other Resources


Tutorial, C Programming Language

Tutorial, C++ Programming Language

Job Scheduling on Euler.

Overview slides, Build Management with CMake.

GPU Gems 3

GPU Gems 2

GPU Gems

CUDA Online Documentation

CUDA Programming Guide

CUDA Forum on NVIDIA website

Fermi Architecture Overview, 2010.

cuda-gdb Debugger. User Manual.

© Simulation Based Engineering Laboratory, Dan Negrut 2014.

SBEL is led by Vilas Associate Professor Dan Negrut in the Department of Mechanical Engineering at UW-Madison.

[News] [Publications] [Projects] [People] [Animations] [Resources] [Outreach] [Courses] [Forum] [Contact]
UW Logo