GPU Programming by NVIDIA
Dates: April 27 - 28, 2016
Agenda: April 27th | Day 1
Introduction to GPU programming: 9AM - 4:30PM
- High Level Overview of GPU architecture
- OpenACC: An introduction on compiler directives to specify loops and regions of code in standard C, C++ and Fortran to be offloaded from a host CPU to an attached accelerator
- Hands-On examples: Focusing on data locality
- GPU-Accelerated Libraries: discussion including AmgX, cuSolver, cuBLAS and cuDNN
- Basics of GPU Programming: An introduction to the CUDA C/C++ Language
- 4 Hands-On examples: Illustrating simple kernel launches and using threads
Agenda: April 28th | Day 2
Performance and Optimization with an Intro to Deep Learning: 9AM - 4:30PM
- Overview of Global and Shared memory usage
- Hands-On examples: Illustrating a 1D Stencil and Matrix Transpose
- Using NVIDIA Profiler to identify performance bottlenecks
- Advanced Optimization: Using Streams and Concurrency to overlap communication and computation
- Hands-On examples: Using CUBLAS with Matrix Multiply