This lesson is still being designed and assembled (Pre-Alpha version)

GPU Programming

FIXME: home page introduction

Prerequisites

FIXME

Schedule

Setup Download files required for the lesson
00:00 1. Introduction What is a Graphics Processing Unit?
Can a GPU be used for anything else than graphics?
Are GPUs faster than CPUs?
00:20 2. Programming your GPU using CuPy How can I copy my data to the GPU?
How can I do a calculation on a GPU?
How can I copy the result back to my computer?
00:20 3. Programming your GPU using Numba How can I copy my data to the GPU?
How can I do a calculation on a GPU?
How can I copy the result back to my computer?
00:20 4. Closure Day 1 How do I organise the computations on my GPU in an efficient manner?
00:30 5. Your First GPU Kernel How can I parallelize a Python application on a GPU?
How to write a GPU program?
What is CUDA?
01:40 6. Registers, Global, and Local Memory What are registers?
How to share data between host and GPU?
Which memory is accessible to threads and thread blocks?
02:25 7. Shared Memory and Synchronization Question
02:25 8. Constant Memory Question
02:25 Finish

The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.