New Era for OpenMP*: Beyond Traditional Shared Memory Parallel Programming

  • Overview

For over a decade, OpenMP* has been the de facto standard for parallel programming on shared memory systems. In recent years, it has evolved to a new era in meeting the parallel and vector programming needs of a diversity of applications, and to support new generations of modern CPUs, accelerators, coprocessors, GPUs, and DSP coprocessors. The OpenMP Architecture Review Board (ARB), which maintains the standard, recently released a new version of the specification, OpenMP 4.5. It added major enhancements to features to the OpenMP API to keep pace with the latest technological trends in HPC and beyond. The new features in OpenMP 4.5 significantly improve the expressiveness of OpenMP on modern architectures and increase its applicability for complex application codes. This presentation describes the evolution of OpenMP and provides an overview of the major new elements including support for accelerators/coprocessors/GPUs, SIMD extensions, doacross loop, task loop, task priority, and thread affinity.

Download Slides PDF 1.47MB

Benchmark results were obtained prior to the implementation of recent software patches and firmware updates intended to address exploits referred to as "Spectre" and "Meltdown". Implementation of these updates may make these results inapplicable to your device or system.

Software and workloads used in performance tests may have been optimized for performance only on Intel microprocessors. Performance tests, such as SYSmark and MobileMark, are measured using specific computer systems, components, software, operations and functions. Any change to any of those factors may cause the results to vary. You should consult other information and performance tests to assist you in fully evaluating your contemplated purchases, including the performance of that product when combined with other products. For more information, see Performance Benchmark Test Disclosure.