Abstract: |
|
Shared memory parallel programming, for instance by inserting OpenMP pragmas into
program code, might look simple at first sight. However, the full performance of current
HPC architectures can only be reached if everything is done right. Within the node,
parallelism has to be exploited from multiple sockets and cores, vector units,
acceleration units, and the memory hierarchy has to be dealt with. In this talk, we will
examine how OpenMP has been extended to support all of this, and where OpenMP is
particularly strong by being based on Pragmas and a de-facto standard and where it
disappoints programmers. We will also review the current topics under development in
the OpenMP Language Committee heading towards OpenMP 5.0, with two technical
reports already released since 4.5. |
|