OpenMP is the de-facto standard for shared memory parallel programming. It has been widely accepted in academia and industry for multithreaded applications in the field of High Performance Computing.
This tutorial starts with a short recap on basic OpenMP features like parallel regions and loop-worksharing constructs, before it introduces the audience to more advanced features of the latest OpenMP 4.0 specification. The workshop will cover optimizations for NUMA architectures, SIMD and accelerator programming in OpenMP. For all topics tools will be presented which support users in performance and correctness analysis of their programs. Furthermore, all sessions come along with a prepared set of exercises where attendees can work on their laptops to immediately familiarize themselves with the presented topics.
Purpose of the course (benefits for the attendees)
The purpose of the course is to present advanced features of the OpenMP 4.0 specification to the audience. This will help students to use OpenMP in many more ways than for pure loop level parallelism. Furthermore students will get familiar with tool to support them in productive OpenMP programming.
About the tutors
Christian Terboven studied computer science at RWTH Aachen University and specialized on High Performance Computing. Since completing his diploma in 2006 he is working as a research associate in the HPC group of the IT Center at RWTH Aachen University, of which he became the deputy lead in 2009. His research interests center around Parallel Programming – with a focus on Shared-Memory architectures, Paradigms, Programming Languages, and related Software Engineering aspects. Christian Terboven has been involved in the Analysis, Tuning and Parallelization of several large-scale simulation codes for various architectures, and has published over 30 papers on this subject. Since 2006 he is a member of the OpenMP Language Committee. In this capacity, he leads the Affinity subcommittee, working on explicit support for NUMA architectures.
Dirk Schmidl studied computer science at RWTH Aachen University in Germany. He received a diploma in 2009. Since then he is working at the IT Center in the group for High Performance Computing. His research interests are shared memory programming with a focus on large NUMA systems and performance tool support for shared memory programming. As a member of the High Performance Computing group he is involved in support for users of the RWTH Compute Cluster, especially user support for performance analysis and tuning of parallel applications.
|Tuesday, March 31, 2015|
|10:00-11:30||Basics of OpenMP (Recap)|
|13:00-14:30||NUMA-aware OpenMP Programming|
|17:00-18:00||Correctness and Performance Tools for OpenMP|
|Wednesday, April 1, 2015|
|09:00-10:30||Programming Accelerators with OpenMP|
|11:00-12:45||Further OpenMP 4.0 Features|
Future OpenMP Directions and Q & A
Programming skills in C/C++ or Fortran and basic knowledge in OpenMP programming is a plus for this tutorial. To participate in the exercises a laptop is needed.
Obligatory registration - registration form here - March 23 closed due to exhausted course capacity. (Nevertheless you may want to let us know about your interest, some vacancies can occur.)
The event is provided free of charge for the participants.
- The course will take place in the room 207 of the IT4Innovations building.
- See a special page on transport (in Czech) how to get to the campus of VŠB - Technical University Ostrava and to the new IT4Innovations building.
- Participants without the IT4Innovations card please arrive early enough to settle the formalities with obtaining an entry permit.
- Anselm training accounts will be distributed at the registration.
- Anselm cluster documentation is available at http://support.it4i.cz/docs.