OpenMP is the dominant programming model for shared-memory parallelism in C, C++ and Fortran due to its easy-to-use directive-based style, portability and broad support by compiler vendors. Over time it has evolved and adapted to stay in line with both hardware trends and the needs of software developers.
Most applications in OpenMP are still based on OpenMP 3.1 standard. There are some major developments in OpenMP 4.×. The latest specifications for OpenMP 4.0 and 4.5 are available at http://www.openmp.org/specifications/ .
In this Webinar, we will first review the standard OpenMP execution and memory models, and the worksharing constructs. We will then introduce the programming protocols implemented in OpenMP 4.x with focus on
- Task model to deal with irregular workloads that cannot be captured in a parallel loop
- SIMD model for vectorization extension
- Device model for heterogeneous accelerator devices such as NVIDIA GPUs, Intel® Xeon Phi, etc.
Anyone who is interested in high performance computing and parallel programming is welcome to attend.