GPU Bootcamp is an exciting and unique way for scientists and researchers to learn the skills needed to start quickly accelerating codes on GPUs. Held as a virtual event in November, this two-days event will introduce you to available GPU libraries, programming models, and platforms where you will learn the basics of GPU programming through extensive hands-on collaboration based on real-life applications using the OpenACC programming model.

Moreover, you will get hands-on experience on how to use NVIDIA Nsight tools and NVTX to profile your applications. 

Event will start at 9AM CST both days.

Event Format 

The bootcamp will be hosted online in the China Standard Time zone. All communication will be done through Zoom, Slack and email. 

Prerequisites

Basic experience with C/C++ or Fortran. No GPU programming knowledge is required.
This event has limited capacity, so please make sure that prerequisites are met before applying.  

Day 1: November 17, 2020

Welcome (Moderator): 09:00

Connecting to Hackathon cluster 

Introduction to GPU Programming with OpenACC 

  • Introduction to GPU programming (15 min)
    • What is a GPU and Why Should You care?
    • What is GPU Programming?
    • Available Libraries, Programming Models, Platforms
  • Introduction to OpenACC (45 min)
    • What is OpenACC and Why Should You Care?
    • Profile-driven Development
    • First Steps with OpenACC
    • Lab 1
  • OpenACC Data Management (45 min)
    • CPU and GPU Memories
    • CUDA Unified (Managed) Memory
    • OpenACC Data Management
    • Lab 2
  • Break 
  • Gangs, Workers, and Vectors Demystified (45 min)
    • GPU Profiles
    • Loop Optimizations
    • Lab
  • Mini-application challenge 
    • Overview of the mini-application (15 min)
    • Review steps to acceleration (5 min)
    • Application challenge (offline, support through slack)

Day 2: November 18, 2020

Welcome (Moderator): 09:00

Mini-application Solution Walk-through 

Introduction to NVIDIA ® Nsight™ Tools 

  • Overview of Nsight Tools
  • How to profile a serial application with NVIDIA Tools Extension (NVTX) 
  • Overview of optimization cycle with Nsight Systems

Profiling mini-application 

  • Profile a sequential weather modeling application (integrated with NVTX APIs) with NVIDIA Nsight Systems to capture and trace CPU events and time ranges
  • Understand how to use NVIDIA Nsight Systems profiler’s report to detect hotspots and apply OpenACC compute constructs to the serial application to parallelise it on the GPU
  • Learn how to use Nsight Systems to identify issues such as underutilized GPU device and unnecessary data movements in the application and to apply optimization strategies steps by steps to expose more parallelism and utilize computer’s CPU and GPU

Wrap-up and event conclusion 

Event Focus
HPC

Important Event Dates

  • CAS-ITP GPU Bootcamp Application Deadline
  • CAS-ITP GPU Bootcamp Day 1
  • CAS-ITP GPU Bootcamp Day 2