The new OpenMP 5.0 API released
OpenMP is probably the most used API to parallelize applications running on multicore processors and with the last update it is also GPU accelerators.
OpenMP is an application program interface that supports multi-platform shared memory multiprocessing programming in C, C++, and Fortran,on most platforms, instruction set architectures and operating systems, including Solaris, AIX, HP-UX, Linux, macOS, and Windows. It consists of a set of compiler directives, library routines, and environment variables that influence run-time behavior.
The latest OpenMP 5.0 API are released in November 2018 and they are probably the most important update to the framework since the inaugural release in 1997.
Some of the new features of the new API were under development for more than five years.
With OpenMP 5.0, the biggest change with regard to GPUs is support for unified shared memory between the GPU accelerators and the CPU hosts in a hybrid system. “You don’t have to transfer ownership of data any more, you can just access the CPU and GPU regions,” says Michael Klemm, who is chief executive officer for the OpenMP Architecture Review Board Consortium.