The Introduction to High-Performance GPU Architectures training course introduces the programming techniques required to develop general purpose software applications for GPU hardware.
The course begins by examining the programming models of both OpenCL and NVIDIA's CUDA development framework. Next, participants will learn how GPU hardware architectures differ from traditional CPU architectures and the changes in the programming environment (development, debugging, and validation). The course concludes with participants learning about optimization strategies.
The lab environment for this course utilizes Nvidia hardware (Nvidia GTX480 and Tesla C2070)Â to illustrate CUDA/OpenCL concepts and to allow training participants to experimentally investigate performance issues, debugging techniques, and code examples.
Purpose
| Learn about CUDA programming, profiling, and debugging techniques required to develop general purpose software applications for GPU hardware |
Audience
| Software developers who need to implement high performance applications (e.g. numerical computing areas: finance and engineering) |
Role
| Software Developer |
Skill Level
| Intermediate |
Style
| Lecture | Hands-on Activities | Labs |
Duration
| 1 Day |
Related Technologies
| CUDA |
Â
Learning Objectives
- Describe programming models of both OpenCL and NVIDIA's CUDA development framework
- Explore how GPU hardware architectures differ from traditional CPU architectures
- Evaluate CUDA programing, profiling and debugging techniques