AMD Instinct™ GPU Training

All communication will be done through Zoom, Slack and email.
Learn how to use and program HLRS's system Hunter.

This course will give a deep dive into the AMD Instinct™ GPU architecture and its ROCm™ ecosystem, including the tools to develop or port HPC or AI applications to AMD GPUs. Participants will be introduced to the programming models for the MI200 series GPUs and MI300A APU. This course gives you crucial insights how to use and program HLRS's system Hunter which is equipped with the MI300A APUs.

The new unified memory programming model makes writing HPC applications much easier for a wide range of GPU programming models. We will cover how to use pragma-based languages such as OpenMP, the basic GPU programming language HIP, and performance portable languages such as Kokkos and RAJA. In addition, there will be presentations on other important topics such as GPU-aware MPI, and Affinity. The AMD tool suite, including the debugger, rocgdb, and the profiling tools rocprof, rocprof-sys, and rocprof-compute will also be covered.

A short introduction will be given into the AMD Machine Learning software stack including PyTorch, JAX and Tensorflow and how they have been used in HPC.

Veranstaltungsort

Online course
Organizer: HLRS, University of Stuttgart, Germany

Veranstaltungsbeginn

05. Mai 2025
13:00

Verstaltungsende

08. Mai 2025
17:00

Sprache

Englisch

Einstiegslevel

Mittel

Themenbereiche

Hardware-Beschleuniger

Themen

Code-Optimierung

GPU-Programmierung

Maschinelles Lernen

MPI+OpenMP

OpenMP

Zurück zur Liste

Prerequisites and content levels

Prerequisites

Some knowledge in GPU and/or HPC programming. Participants should have an application developer's general knowledge of computer hardware, operating systems, and at least one HPC programming language.

See also the suggested prereading below (resources and public videos).

Content levels

Basic: 1 hours
Intermediate: 7 hours
Advanced: 6 hours

Learn more about course curricula and content levels.

Resources
  • Book on HIP programming - Porting CUDA
    • Accelerated Computing with HIP,  Yifan Sun, Trinayan Baruah, David R Kaeli,
      ISBN-13: ‎ 979-8218107444
  • Book on OpenMP GPU programming
    • Programming Your GPU with OpenMP, Tom Deakin and Tim Mattson,
      ISBN-13: ‎ 978-0262547536
  • Book of parallel and high performance computing topics
    • Parallel and High Performance Computing, Manning Publications, Robert Robey and Yuliana Zamora,
      ISBN-13: ‎ 978-0262547536
  • ENCCS resources
  • AMD Lab Notes series on GPUOpen.com

    • Finite difference method - Laplacian part 1
    • Finite difference method - Laplacian part 2
    • Finite difference method - Laplacian part 3
    • Finite difference method - Laplacian part 4
    • AMD matrix cores
    • Introduction to profiling tools for AMD hardware
    • AMD ROCm™ installation
    • AMD Instinct™ MI200 GPU memory space overview 
    • Register pressure in AMD CDNA2™ GPUs
    • GPU-Aware MPI with ROCm
    • Creating a PyTorch/TensorFlow Code Environment on AMD GPUs
    • Jacobi Solver with HIP and OpenMP offloading
    • Sparse matrix vector multiplication - part 1
  • Quick start guides at Oak Ridge National Laboratory

Instructors

Bob Robey, AMD Global Training Lead for Data Center GPUs

Additional AMD Staff.

Learning outcomes

After this course, participants will

  • have learned about the many GPU programming languages for AMD GPUs
  • understand how to get performance scaling
  • have gained knowledge about the AMD programming tools
  • have gotten an introduction to the AMD Machine learning software
  • know about profiling and debugging.

Agenda (subject to change)

All times are CEST.
Day 1 (Mon) - AMD Programming Model, OpenMP and MPI

12:45 - 13:00 Drop in to Zoom

  • 13:00 HLRS Intro
  • 13:10 AMD Presentation Roadmap and Introduction to the System for Exercises
  • 13:20 Programming Model for MI200 and MI300 series
  • 13:45 Programming Model Exercises
  • 14:00 Break
  • 14:10 Introduction OpenMP® Offloading
  • 14:40 OpenMP® Exercises
  • 14:55 Break
  • 15:10 Real-World OpenMP® Language Constructs
  • 15:45 OpenMP® Language Constructs Exercises
  • 16:00 Advanced OpenMP® - zero-copy, debugging and optimization
  • 16:30 Advanced OpenMP® Exercises
  • 16:50 Wrapup
Day 2 (Tue) - MPI and HIP and interoperability

12:45 - 13:00 Drop in to Zoom

  • 13:00 HIP and ROCm
  • 14:00 HIP Exercises
  • 14:15 Break
  • 14:30 Porting code to HIP
  • 14:50 Porting Exercises
  • 15:00 Optimizing HIP Code
  • 15:40 HIP Optimization Exercises
  • 16:00 Break
  • 16:15 OpenMP® and HIP Interoperability
  • 16:40 Interoperability Exercises
  • 16:55 Wrapup
Day 3 (Wed) - Performance Portable languages, C++ Std Par, MPI and Machine Learning

12:45 - 13:00 Drop in to Zoom

  • 13:00 Performance Portability Frameworks; Intro to Kokkos
  • 13:30 Kokkos Exercises
  • 13:50 Break
  • 14:00 C++ Standard Parallelism
  • 14:30 C++ Std Par Exercises
  • 14:50 Break
  • 15:00 GPU-Aware MPI on AMD GPUs
  • 15:30 MPI Exercises
  • 15:50 Break
  • 16:00 ML/AI on AMD GPUs
  • 16:30 ML/AI Exercises
  • 16:55 Wrapup
Day 4 (Thu) - AMD Debuggers and Profiling Tools

12:45 - 13:00 Drop in to Zoom

  • 13:00 Debugging with Rocgdb
  • 13:40 Rocgdb Exercises
  • 14:00 Break
  • 14:15 GPU Profiling - Performance Timelines
  • 14:55 Timeline Profiling Exercises
  • 15:15 Break
  • 15:30 Kernel Profiling with rocprof-compute
  • 16:15 Kernel Profiling Exercises
  • 16:45 Additional Training Resources
  • 16:55 Wrapup

Registration information

Register via the button at the top of this page.
We encourage you to register to the waiting list if the course is full. Places might become available.

Please be aware that the talks and Q'n'A sessions will be recorded. You declare that you are aware of and consent to the recording by registering.

Registration closes on April 20, 2025.

Fees

This course is free of charge.

Contact

Tobias Haas phone 0711 685 87223, training(at)hlrs.de

HLRS Training Collaborations in HPC

HLRS is part of the Gauss Centre for Supercomputing (GCS), together with JSC in Jülich and LRZ in Garching near Munich. EuroCC@GCS is the German National Competence Centre (NCC) for High-Performance Computing. HLRS is also a member of the Baden-Württemberg initiative bwHPC.

Further courses

See the training overview and the Supercomputing Academy pages.

Ähnliche Trainingskurse

Alle Trainingskurse

Februar 17 - 21, 2025

Stuttgart, Germany


März 17 - 21, 2025

Dresden, Germany


März 24 - 28, 2025

Hybrid Event - Stuttgart, Germany


April 01 - 04, 2025

Mainz, Germany


April 08 - 09, 2025

Online


Mai 09 - 23, 2025

Hybrid Event - Stuttgart, Germany


Mai 27 - 28, 2025

Online


Juni 17 - 18, 2025

Online