Mastering Tasking with OpenMP
TimeSunday, 14 November 20218am - 5pm CST
DescriptionOpenMP is a popular, portable, widely supported and easy-to-use shared-memory model. Since 2008, OpenMP has offered tasking to support the creation of composable parallel software blocks and the parallelization of irregular algorithms. Mastering the tasking concept of OpenMP, however, requires a change in the way developers reason about the structure of their code and how to expose the parallelism of it. Our tutorial addresses this critical aspect by examining the tasking concept in detail and presenting patterns as solutions to many common problems.
We assume attendees know the fundamentals of OpenMP. We present the OpenMP tasking language features in detail and focus on performance aspects, such as introducing cut-off mechanisms, exploiting task dependencies and preserving locality. All aspects are accompanied by extensive case studies and hands-on sessions. Throughout all topics, we present the recent additions of OpenMP 5.0 and 5.1 and comment on the developments targeting OpenMP 6.0.