AOMP Release 14.0-0
Pre-releaseThese are the release notes for AOMP 14.0-0. This release uses modifications to the LLVM development trunk called the "amd-stg-open" branch. This is found at https://github.com/RadeonOpenCompute/llvm-project. The amd-stg-open branch is constantly changing as AMD merges upstream development trunk with its internal open development efforts. Some AMD modifications are experimental and/or under review for the LLVM mono-repo. The AOMP release is a snapshot of amd-stg-open and supporting repositories to build various components.
For AOMP 14.0-0, the last trunk commit is a0633f5ccb04e4b1613eeb23af10ad729dace2b5 on Nov 8. The last amd-only commit is 8a48924725f0c53217d108b1d4b95f6ba0038031 on Nov 8. This forms a frozen branch now called "aomp-14.0-0". See https://github.com/RadeonOpenCompute/llvm-project/tree/aomp-14.0-0 . The difference from the upstream LLVM trunk is found in the patch below. It is 35563 lines on 345 files. not including test directories.
Changes from aomp 13.0-6:
- AOMP is now based on amd-stg-open branch
- Most components are build from ROCm release 4.5 sources
- Components are now cloned using a manifest file. The script clone_aomp.sh is still used to clone and update repos.
- New hip build method
- Support for unified shared memory on gfx90a
- Support for atomic hint clause to enable fast floating point atomics
- Support for LLVM IR code generation with updated device RTL (deviceRTLs)
- Support for target ID with XNACK settings
- Support for cross-platform offload device identification LLVM library and tool (offload-arch).
- Fixed many reduction problems and nested parallelism
Known Issues:
- Slow CPU device-to-host data transfer speeds
- Miniqmc, Kokkos, Raja fail to build
- Non-deterministic failures in qmcpack deterministic tests
- Possible incorrect linking of libclang-cpp.so in the build of libomptarget.so
Check later for more updates...