AMD Releases AOMP 13.0-5 Radeon OpenMP Compiler

Written by Michael Larabel in Radeon on 30 July 2021 at 05:49 AM EDT. Add A Comment
RADEON
In addition to the AOCC compiler for Zen CPUs, another LLVM/Clang downstream maintained by AMD is the AOMP compiler as where they host their various patches not yet merged around Radeon OpenMP offloading support. This week marked the release of AOMP 13.0-5 as their latest work on that front for the newest OpenMP GPU offloading capabilities.

AOMP 13.0-5 is the newest release of this compiler currently based on the upstream LLVM state as of April with various AMD patches on top for what hasn't yet been reviewed/mainlined for upstream LLVM. This new release features a new library called libLLVMOffloadArch.

AMD engineers sum up the 13.0-5 work as:
This release includes a demo of a new LLVM library called libLLVMOffloadArch.cpp. The clang tool offload-arch is now built with this library. The libomptarget runtime no longer calls the binary "offload-arch -c" and traps the stdout. Instead a library call is made to libLLVMOffloadArch.cpp to determine current capabilities. The tool offload-arch is still created with the llvm build and the sources are in llvm-project/llvm/lib/OffloadArch/offload-arch . Updates were made so offload-arch returns the first VISIBLE gpu which could be the result of setting ROCM_VISIBLE_DEVICES for amdgpus.

This release starts to deprecate the use of mygpu in favor of offload-arch. A new version of mygpu calls offload-arch. The tables used to drive mygpu have been deleted. All pci-id tables for offloading identification are now in llvm library OffloadArch.

Added a new command line option -offload-usm which turns on OpenMP pragma requires unified_shared_memory and sets toolchain flags appropriately. This saves having to change every source file to turn on unified shared memory.

AOMP 13.0-5 can be downloaded from GitHub along with binaries for CentOS / RHEL 7 and 8, SUSE Linux Enterprise 15, and Ubuntu 18.04/20.04. AOMP goes along with their Radeon Open eCosystem (ROCm) stack to enable the GPU compute capabilities on Linux.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week