Description:

Having multiple cores available only speeds your code when you know how to use them. If you want to discover how to enable CPU parallelism in your code, and have a familiarity with C, C++ or Fortran, then this hands-on workshop is for you.

You can join in-person OR virtually. This is a free workshop. Please register only if you plan to attend.

Please join at 8:30am (AWST) to ensure you can access the system. The class starts promptly at 9:00am.

What will I learn in this 3-hour, hands-on workshop?
You will learn about OpenMP: the reference in the High-Performance Computing world for shared memory programming over the last 25+ years. This workshop will address how to:

  • spawn multiple threads to enable CPU parallelism.
  • coordinate threads to have a certain piece of code executed by certain threads.
  • handle data between threads, depending on whether you want them to have their own copy or share it.
  • parallelise the execution of loops across threads.
  • make sure that different threads end with similar amounts of work.
  • synchronise threads to ensure that the program correctness is preserved.

Start: Friday, 08 December 2023 @ 08:30

End: Friday, 08 December 2023 @ 12:00

Duration: 3 hours

Timezone: Perth

Venue: 1 Bryce Ave

City: Kensington  Country: Australia  Postcode: 6151

Prerequisites:

You must be familiar with at least one of the following languages:

C/C++ (Refresher videos) or
Fortran

Learning Objectives:

Motivation: reason for using OpenMP with CPUs
Under the hood: How OpenMP works (directive-based, fork-join pattern)
Starting parallelism (parallel construct)
Data-sharing attribute clauses (default(none), shared, private and firstprivate clauses)
Worksharing constructs (single and master constructs)
Synchronisation constructs (barrier and critical constructs)
Loops time (for / do constructs)
Reduction (reduction clause / atomic construct)
Load-balancing techniques (Schedule clause)

Eligibility:
  • Open to all

Organiser: Pawsey Supercomputing Research Center

Contact: training@pawsey.org.au

Host institution: Pawsey, Pawsey Supercomputing Research Centre

Keywords: OpenMP, CPU parallelism, OpenMP with CPUs

Event type:
  • Workshop

Cost Basis: Free to all

Introduction to OpenMP for CPUs https://dresa.org.au/events/introduction-to-openmp-for-cpus Having multiple cores available only speeds your code when you know how to use them. If you want to discover how to enable CPU parallelism in your code, and have a familiarity with C, C++ or Fortran, then this hands-on workshop is for you. You can join in-person OR virtually. This is a free workshop. Please register only if you plan to attend. Please join at 8:30am (AWST) to ensure you can access the system. The class starts promptly at 9:00am. What will I learn in this 3-hour, hands-on workshop? You will learn about OpenMP: the reference in the High-Performance Computing world for shared memory programming over the last 25+ years. This workshop will address how to: - spawn multiple threads to enable CPU parallelism. - coordinate threads to have a certain piece of code executed by certain threads. - handle data between threads, depending on whether you want them to have their own copy or share it. - parallelise the execution of loops across threads. - make sure that different threads end with similar amounts of work. - synchronise threads to ensure that the program correctness is preserved. 2023-12-08 08:30:00 UTC 2023-12-08 12:00:00 UTC Pawsey Supercomputing Research Center 1 Bryce Ave, Kensington, Australia 1 Bryce Ave Kensington Australia 6151 PawseyPawsey Supercomputing Research Centre training@pawsey.org.au [] [] workshop open_to_all OpenMPCPU parallelismOpenMP with CPUs