Supercomputing Academy - Introduction to OpenMP

OpenMP is a multithreading framework for C/C++ and Fortran designed for shared memory environments, such as your PC or a single compute node of a cluster. OpenMP directives allow you to parallelize compute-intensive parts of your program to run on multiple cores, with minimal changes to the rest of your code. Since OpenMP is implemented in all major compilers, it is considered one of the simplest and most portable methods for multithreading.
This course takes you from writing your first OpenMP program through standard parallelization patterns, including loop parallelization, work sharing, and synchronization constructs. You'll also learn about advanced features such as tasking, enabling you to effectively utilize modern multicore systems.
The course combines video lectures by Dr. Rolf Rabenseifner with hands-on exercises that you can complete on your own laptop or on the training cluster of the HLRS. Weekly seminars provide opportunities to discuss concepts, review exercises, and address questions.

Veranstaltungsort

Flexible online course: Combination of self-study and live seminars (HLRS Supercomputing Academy)
Organizer: HLRS, University of Stuttgart, Germany

Veranstaltungsbeginn

26. Jan. 2026

Verstaltungsende

06. Feb. 2026

Sprache

Deutsch

Einstiegslevel

Basis

Themenbereiche

Paralleles Programmieren

Supercomputing-Akademie

Themen

OpenMP

Zurück zur Liste

Agenda

  • Introduction to OpenMP
  • Programming and Execution Model
    • Parallel Regions: Team of Threads
    • Syntax
    • Data Environment
    • Environment Variables
    • Runtime Library Routines
  • Worksharing Directives
    • Which thread executes which statement or which operation?
    • Tasks
    • Synchronization Constructs, e.g., Critical Regions
    • Nesting and Binding
  • Data Environment and Combined Constructs
    • Private and Shared Variables, Reduction Clause
    • Combined Parallel Worksharing Directives
  • Summary of the OpenMP API
  • OpenMP Pitfalls & Optimization Issues

Instructor

Lucas Jordan (HLRS)

Pricing

  • 0 Euro: Employees of the HLRS, or the Jülich Supercomputing Centre (JSC), or the Leibniz Supercomputing Centre (LRZ)
  • 35 Euro: Students without master’s degree or equivalent
  • 70 Euro: PhD students or employees at a German university or public research institute
  • 140 Euro: PhD students or employees at a university or public research institute in an EU, EU-associated or PRACE country other than Germany
  • 290 Euro: PhD students or employees at a university or public research institute outside of EU, EU-associated or PRACE countries
  • 470 Euro: Public service providers or government
  • 720 Euro: Other participants, e.g., from industry or private

    Link to the EU and EU-associated (Horizon Europe), und PRACE Ländern.

     

Target audience

This course is intended for, but is not limited to, the following groups:

  • Software Developers
  • Software Architects
  • Computer Scientists
  • IT Enthusiasts
  • Simulation Engineers

Content levels

  • Beginners: 10 hours
  • Intermediate: 10 hours

Prerequisites

Linux Course participants possess advanced basic knowledge of the free operating system Linux and knowledge of Linux applications. The background of Linux as well as the most important concepts and tools of Linux such as

  • Shell and shell commands (→confident use of the command line),
  • Secure Shell,
  • Working with files and scripts,
  • System structure,
  • User and permissions management, and
  • Creating simple batch scripts with an editor like nano, vi, or emacs should be familiar. Instructions for working on the training cluster will be provided. If you identify deficiencies in this area, we refer you to https://www.tuxcademy.org/product/lxes/

Programming Skills

  • You have solid programming skills in a programming language (C / C++ or Fortran).
  • You can understand additional programming languages and their constructs.
  • You are able to work with compilers and linkers.
  • You have knowledge of makefiles and can create them.

Basic Hardware Understanding Participants understand how the hardware of a classic computer is structured. This includes primarily a basic understanding of

  • Processors (CPU),
  • Random access memory (RAM),
  • Connection between these two components,
  • Networking technology,
  • Hard drives, and
  • Hardware accelerators.

Technical requirement

  • Computer with a SSH protocol.
    • Software may need to be installed. You must have the necessary permissions to do so.
    • Network connections to external clusters must be possible.
  • Alternatively to SSH, you can also use your own PC and a modern compiler that supports OpenMP 5.0, see the OpenMP website for a comprehensive list openmp-compilers-tools.
  • A stable internet connection is recommended for working through the learning materials and exercises.
  • Access to the video conferencing tool Webex with camera and microphone (a headset is recommended for audio quality).

Learning duration

Total time requirement is approximately 20 hours over a 2-week period (about 10 hours per week). Participants can schedule their time flexibly each week, except for mandatory virtual seminars (held in the evenings) and the exam (held during the day).

HLRS concept for flexible learning

Flexible learning

This course offers flexible learning, allowing you to learn at your own pace and access online course materials and cluster resources. Web-seminars are held weekly to discuss the learning modules and to answer your questions. We also provide forum channels that enable you to communicate with the lecturer and peers, as well as to share your experiences.

Learning duration

The course is divided into multiple learning units of 10 hours each. Participants can learn the individual learning content on their own schedule. In addition, this course has fixed dates for virtual seminars and the exam.

Course certificate & confirmation of participation

The High-Performance Computing Center (HLRS) issues participants a confirmation of participation if they have joined all seminars and hand in at least 50% of the assignments, as well as a course certificate if they have passed the exam at the end of the course.

Technical requirement
  • Stable Internet connection so you can access and download the learning materials.
  • Access to video conferencing tool with camera and microphone for participation in regular seminars.

Contact

Lucas Jordan phone 0711 685 87206, training(at)hlrs.de

HLRS training collaborations in HPC and AI

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. Since 2025, HLRS coordinates HammerHAI

This course is provided within the framework of the bwHPC training program.

Further courses and training team

See the training overview and the Supercomputing Academy pages.
See also information about the HLRS training department and staff.

Ähnliche Trainingskurse
Alle Trainingskurse

Okt. 13 - 17, 2025

Stuttgart

Englisch

Okt. 21 - 22, 2025

Online

Englisch

Nov. 20 - Dez. 05, 2025

Hybrid, Stuttgart

Englisch

Dez. 01 - 04, 2025

Online

Englisch

Feb. 10 - 12, 2026

Hybrid, Stuttgart

Englisch

März 23 - 27, 2026

Hybrid, Stuttgart

Englisch