GPU Code Optimization and Auto-Tuning Made Easy with Kernel Tuner: A Hands-On, Bring Your Own Code Tutorial
TimeMonday, 15 November 20218am - 12pm CST
DescriptionGraphics Processing Units (GPUs) have revolutionized the HPC landscape. The first generation of exascale supercomputers is currently being built, and most of these systems will have GPUs as their main computing platform. The performance of GPU applications strongly depends on how the software has been optimized for the hardware. There are many different implementations and code optimizations to consider that can also be parameterized, creating vast search spaces that are infeasible to search by hand. As such, automated performance tuning (auto-tuning) techniques are crucial to optimize such applications.
In this tutorial, you will learn how to use Kernel Tuner, an easy-to-use tool for auto-tuning GPU code using simple Python scripts. Kernel Tuner supports OpenCL, CUDA, C++, and Fortran. We take a step-by-step approach to explain the auto-tuning basics, building up to more complex search spaces with many tunable parameters and inter-dependencies.