Abstract

OpenMP is a commonly used programming language for shared memory parallel applications in both industry and academic. OpenMP 4.0 recently introduced a new feature for programming heterogeneous devices, which is able to offload the OpenMP program to a target device. This tutorial provides an overview of this feature and insights into different constructs and clauses of offloading. In each section, a C example code is also presented.

Level/Prerequisites: This tutorial is ideal for those who are familiar with Parallel Programming in OpenMP and has a basic understanding of parallel programming in C.