M5: Advanced CUDA Grid Concurrency

In this fifth module, we will focus on implementing concurrency at the grid level by using CUDA streams along with other ways to increase parallelism via uniform memory and dynamic parallelism.

Pre-recorded Lectures

Note: The pre-recorded videos for M5 will be posted after Tuesday’s lecture.

The pre-recorded lectures are available here: M5 Videos. You can also find the videos under the “Panopto” tab on the MPCS 52072 canvas site.

The lectures are a series of approx 20-30 minute videos divided into the following sections:

  • 5.0: Stream Compaction & RLE

  • 5.1: CUDA Streams

  • 5.2: CUDA Events

  • 5.3: CUDA Streams & Events Demo

  • 5.5: Multi-GPUs

  • 5.6: Unified Memory

Resources/Readings

  • Programming Massively Parallel Processors: A Hands-on Approach
    • Chapter 13

All slide and code materials will be accessible via the course repository.

Synchronous Session (In-Person Lecture)

As a reminder here are the dates and times for the synchronous session for this module:

Week 7

  • Dates/Times
    • Tuesday May 6th @ 5:30pm-7:20pm

  • Session Outline
    • Grid Concurrency

    • Streams and Events

    • Stream Callbacks

Assignment