Advanced OpenMP: Host Performance and 5.1 Features
Parallel Programming Languages and Models
TimeMonday, 15 November 20218am - 5pm CST
DescriptionOpenMP is a popular, portable, widely supported, and easy-to-use shared-memory model. Developers usually find OpenMP easy to learn. However, they are often disappointed with the performance and scalability of the resulting code. This may stem from the lack of depth with which OpenMP is employed. The “Advanced OpenMP Programming” tutorial addresses this situation by exploring the implications of possible OpenMP parallelization strategies in terms of correctness and performance.
We assume attendees understand basic parallelization concepts and know the fundamentals of OpenMP. We focus on performance, such as data and thread locality on NUMA architectures, and exploitation of vector units. All topics are accompanied by extensive case studies, and we discuss the corresponding language features in-depth. Continuing the emphasis of this successful tutorial series, we focus solely on performance programming for multi-core architectures. Throughout all topics, we present the recent additions of OpenMP 5.1 and comment on developments targeting OpenMP 6.0.