MeluXina: Introduction to OpenMP Programming

Supercomputing Training


MeluXina: Introduction to OpenMP Programming

31 May 2023 

Online

Initiated and managed by

About the event

The Luxembourg SuperComputing Competence Center is hosting an online introduction to OpenMP programming (for multicore shared memory) course for half a day. The first part will be dedicated to theory, and the second will focus on hands-on challenges on the MeluXina supercomputer.

For whom? 
Both current or prospective users of large hybrid CPU/GPU clusters and supercomputers, who might develop or parallelise their scientific computing applications using multicore CPUs, are encouraged to participate!

What will you learn and how? 
Participants from this course will learn Multicore (shared memory) CPU programming using the OpenMP programming model, such as parallel region, environmental routines, and data sharing. Furthermore, understanding the multicore shared memory architecture and how parallel threads blocks are used to parallelise the computational task. Since we deal with multicores and parallel threads, proper parallel work sharing and the synchronisation of the parallel calls are to be studied in detail. Finally, participants will also learn to use the OpenMP programming model to accelerate linear algebra (routines) and iterative solvers on the Multicore CPU. Participants will learn theories first and implement the OpenMP programming model with mentors' guidance later in the hands-on tutorial part.  

Learning outcomes 
After this course, participants will be able to: 

Understanding the shared memory architecture
  • Unified Memory Access (UMA) and Non-Unified Memory Access (NUMA)
  • Hybrid distributed shared memory architecture
Implement OpenMP programming model
  • Parallel region 
  • Environment routines 
  • Data sharing 
Efficient handling of OpenMP constructs 
  • Work sharing
  • Synchronisation constructs
  • Single Instruction Multiple Data (SIMD) directive
Apply the OpenMP programming knowledge to parallelise examples from science and engineering:
  • Iterative solvers from science and engineering
  •  Vector multiplication, vector addition, etc.

Prerequisites
Priority will be given to users with good experience with C/C++ and/or FORTRAN. No prior parallel programming experience is needed.
   
Computing Resources
Participants attending the event will be given access to the MeluXina supercomputer during the session. To learn more about MeluXina, please consult the Meluxina overview and the MeluXina – Getting Started Guide

component teaserparticipants not found

component teasercontacts not found