This course has been recorded Spring 2016 and is comprised of two instructor-led classes that include interactive lectures, hands-on exercises, and office hours with the instructors.

You’ll learn advanced OpenACC techniques to further accelerate your code. The course will cover code optimization with profiling tools and advanced multi-GPU programming including the use of Multi-Process Service (MPS).

This advanced course assumes previous experience with OpenACC directives. If you want to join the course and don’t have OpenACC experience yet, we recommend watching the recorded OpenACC Overview course.

Class #1: Advanced Profiling of OpenACC Code (1 hour including Q&A)
Description: In this class you will learn how to use the profiler to improve the experience of accelerating and optimizing code for a GPU. This class will use the PGI profiler, NVIDIA profiler, and OpenACC to accelerate the Kirchhoff 2D Depth Migration included with Seismic Unix.
Recording: Download, Slides, Q&A
Office Hours for Class #1 (1 hour of Q&A)
Recording: Download, Slides, Q&A
Class #2: Advanced multi-GPU Programming with MPI and OpenACC (1.5 hours total, 30 min for Q&A)
Description: In this class you will learn multi-GPU programming with MPI and OpenACC and how it enables applications to scale on a GPU cluster. We will talk about Debugging and Profiling of MPI+OpenACC applications, how to use the Multi-Process Service (MPS) to improve acceleration of MPI parallel legacy applications and different domain decomposition strategies.
Recording: Download, Slides, Q&A

The hands-on lab exercises for each class will be available for FREE at Lab Sign with OPENACC promo code.

Resources