
Description: This is an introductory to intermediate-level hands-on course on OpenMP. OpenMP is a standard parallel programming API that supports multi-platform shared-memory multiprocessing in C, C++, and Fortran.
This one-day course covers the fundamentals of OpenMP compiler directives, library routines, and environment variables through step-by-step hands-on examples. Case studies will explore different approaches to loop parallelism. We will also discuss task constructs for irregular programs and target constructs for accelerators such as GPUs.
Participants will gain practical programming experience with OpenMP, including how to compile and run multithreaded OpenMP code on various Alliance clusters.
Teacher: Jemmy Hu (SHARCNET, University of Waterloo)
Level: Introductory
Format: Lecture + Hands-on
Certificates: Completion
Prerequisites: Basic knowledge of C, C++, or Fortran.