2024 with AdaptiveCpp crashes when building ACPP with clang
Summary
If I am following the build instructions to build Gromacs 2024 for AMD GPUs, the make check phase crashes if I am using the ROCm provided clang to build AdaptiveCpp. Building AdaptiveCpp with gcc 11 works. This was tested with ROCm 5.7.1 and 6.0.2
Exact steps to reproduce
Follow the guide: https://manual.gromacs.org/documentation/current/install-guide/index.html#sycl-gpu-acceleration-for-amd-gpus Configure AdaptiveCpp (latest version) with its compilers set to use ROCm's LLVM:
Step 1:
cmake .. -DCMAKE_C_COMPILER=${ROCM_PATH}/llvm/bin/clang
-DCMAKE_CXX_COMPILER=${ROCM_PATH}/llvm/bin/clang++
-DLLVM_DIR=${ROCM_PATH}/llvm/lib/cmake/llvm/
make; make install
Step: configure and build GROMACS:
cmake .. -DCMAKE_C_COMPILER=${ROCM_PATH}/llvm/bin/clang
-DCMAKE_CXX_COMPILER=${ROCM_PATH}/llvm/bin/clang++
-DGMX_GPU=SYCL -DGMX_SYCL=ACPP -DHIPSYCL_TARGETS='hip:gfx90a'
Make, make check. This will crash. However if I use gcc and g++ on step 1, when building AdaptiveCpp, it works.
For developers: Why is this important?
The current documentation will not produce a working code.