NVIDIA Deep Learning Institute 2020

Tuesday, October 27, 2020 - Wednesday, October 28, 2020

This event will be held remotely.

This event is hosted by NVIDIA.
NVIDIA GPUs are among the world’s fastest and most efficient accelerators delivering world record performance on both HPC and AI workloads.  NVIDIA provides optimized software stacks, development tools, and libraries through CUDA-X that can be leveraged directly through CUDA C/C++ programming or through high-level programming languages like OpenACC.  These tools and methods form a mature development ecosystem that allows researchers to become productive quickly without any GPU programming experience.  Whether you’re creating a new application or trying to speed up an existing one, these courses will help you learn the most efficient, effective path forward.

Fundamentals of Accelerated Computing with CUDA C/C++
Course Description:  The CUDA computing platform enables the acceleration of CPU-only applications to run on the world’s fastest massively parallel GPUs. Experience C/C++ application acceleration by:

  • Accelerating CPU-only applications to run their latent parallelism on GPUs
  • Utilizing essential CUDA memory management techniques to optimize accelerated applications
  • Exposing accelerated application potential for concurrency and exploiting it with CUDA streams
  • Leveraging Nsight Systems to guide and check your work

Upon completion, you’ll be able to accelerate and optimize existing C/C++ CPU-only applications using the most essential CUDA techniques and Nsight Systems. You’ll understand an iterative style of CUDA development that will allow you to fast track accelerated applications.

Prerequisites: Basic C/C++ competency including familiarity with variable types, loops, conditional statements, functions, and array manipulations.
Technologies: C/C++, CUDA

Fundamentals of Accelerated Computing with OpenACC
Course Description:  Learn the basics of OpenACC, a high-level programming language for programming on GPUs. This course is for anyone with some C/C++ experience who is interested in accelerating the performance of their applications beyond the limits of CPU-only programming. In this course, you’ll learn:

  • How to profile and optimize your CPU-only applications to identify hot spots for acceleration
  • How to use OpenACC directives to GPU accelerate your codebase
  • How to optimize data movement between the CPU and GPU accelerator

Upon completion, you'll be ready to use OpenACC to GPU accelerate CPU-only applications.

Prerequisites: Basic experience with C/C++
Technologies: OpenACC, C/C++