ACES: GPU Programming
Overview
Instructor: Jian Tao
Time: Tuesday, November 12, 2024 1:30PM-4:00PM CT
Location: Online using Zoom
Prerequisites: Current ACCESS ID, Linux/Unix skills, experience with C or C++
This short course covers basic topics in CUDA programming on NVIDIA GPUs. Topics include CUDA architecture; basic language usage of CUDA C/C++; and writing and executing CUDA code.
Registration will open up on this webpage the week before the class.
Course Materials
Previous Course Materials
Learning Objectives and Agenda
Learning objectives:
- Understand the Basics of CUDA: Learn the fundamentals of CUDA, including its architecture, and how it exposes GPU parallelism for general-purpose computing.
- Familiarize with CUDA Programming: Understand how to write CUDA programs, including how to manage devices, memory, and execute kernels on the GPU
- Learn Parallel Programming Concepts: Grasp the concepts of parallel programming in CUDA, including how to launch kernels, manage threads, and optimize performance.
Agenda:
- GPU as an Accelerator
- Running CUDA Code on ACES
- CUDA C/C++ Basics
- Unified Memory Programming
- Device Management
Note: During the class sessions many aspects of the material will be demonstrated live on the ACES cluster. Attendees will also log in to ACES to complete exercises themselves.