M4: GPU Patterns and Structures

In this fourth module, we focus on parallel patterns and structures that benefit from GPU acceleration. The patterns discussed in this module can be applied across many different algorithms to help solve them on a GPU. We will provide the naive implementation and then show how each can be improved via optimizations discussed in previous modules. The module will cover the following:

  • Histograms

  • Reductions

  • Map/Stencil

  • Scan

Pre-recorded Lectures

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

The pre-recorded lectures are available here: M4 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:

  • Parallel Prefix Scan (Part 1)

  • Parallel Prefix Scan (Part 2)

Resources/Readings

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

    • Chapter 10

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

Synchronous Session (Remote Lecture)

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

Week 6

  • Dates/Times
    • Wednesday July 10th @ 5:30pm-7:20pm

  • Session Outline
    • Histograms

    • Parallel reductions.

Assignment

  • Project #1, due Wednesday July 24th at 11:59pm CDT