OpenMP 5.1 Released With Better Interoperability For CUDA / AMD HIP / OpenCL
For the Supercomputing SC20 week there is the release of the OpenMP 5.1 specification with some exciting additions.
It's been two years already since the release of the OpenMP 5.0 specification and the update released on Friday is quite a worthy update:
- OpenMP 5.1 introduces a new interop construct for improving interoperability with non-OpenMP device execution contexts. This aims to improve the portability of OpenMP 5.1+ to non-native interfaces/accelerators. This interop construct is designed with NVIDIA CUDA, AMD ROCm/HIP, and OpenCL in mind. The interop construct is used for dealing with interoperability properties for one or more "foreign runtime environments".
- Full support for C11, C18, C++11, C++14, C++17, and C++20 standards.
- Fortran 2008 is also now fully supported along with initial support for Fortran 2018.
- Also improving the OpenMP 5.1 accelerator support is support for device-specific environment variables and function pointers that can be mapped to a device or accelerator.
- A new error directive so the developer can generate compile-time errors/warnings.
Find out more about the OpenMP 5.1 release via the specification (PDF). General details on the OpenMP 5.1 release can be found via OpenMP.org.
It's been two years already since the release of the OpenMP 5.0 specification and the update released on Friday is quite a worthy update:
- OpenMP 5.1 introduces a new interop construct for improving interoperability with non-OpenMP device execution contexts. This aims to improve the portability of OpenMP 5.1+ to non-native interfaces/accelerators. This interop construct is designed with NVIDIA CUDA, AMD ROCm/HIP, and OpenCL in mind. The interop construct is used for dealing with interoperability properties for one or more "foreign runtime environments".
- Full support for C11, C18, C++11, C++14, C++17, and C++20 standards.
- Fortran 2008 is also now fully supported along with initial support for Fortran 2018.
- Also improving the OpenMP 5.1 accelerator support is support for device-specific environment variables and function pointers that can be mapped to a device or accelerator.
- A new error directive so the developer can generate compile-time errors/warnings.
Find out more about the OpenMP 5.1 release via the specification (PDF). General details on the OpenMP 5.1 release can be found via OpenMP.org.
1 Comment