sw4 icon indicating copy to clipboard operation
sw4 copied to clipboard

Cannot compile against RAJA (error: namespace "RAJA::resources" has no member "EventProxy")

Open vessokolev opened this issue 1 year ago • 2 comments

I am trying to compile raja branch of sw4, using Open MPI 5.0.3, GCC 8.4 (RHEL5 distributed) and CUDA 11.

From the compile configurations provided under the configs folder, I selected make.inc.cuda11gcc8.3.1c++17 as make.inc.

Unfortunately, regardless of the external version of RAJA I provide to the build, I get C++ error related to a missing member of "RAJA::resources":

/bin/mkdir -p optimize
cd optimize;  nvcc -I../src -O3 -use_fast_math -DENABLE_MPI_TIMING_BARRIER=1 -DSW4_STAGED_MPI_BUFFERS=1 -DUSE_DIRECT_INVERSE=1 -I /home/vesso/sw4/adds/lapack/3/3.12.0-gcc/include  --Werror cross-execution-space-call -DCAMP_USE_PLATFORM_DEFAULT_STREAM=1 -DSW4_GIT_VERSION=\""FrontierKPP-37-g508f"\"  -DSW4_USE_UMPIRE=1 -I /home/vesso/sw4/adds/umpire/3/3.0.0-nvidia//include -DENABLE_FFTW=1 -I /home/vesso/sw4/adds/fftw/3/3.3.10-gcc/include -DUSE_HDF5=1 -I /home/vesso/sw4/adds/hdf5/1/1.14.4.3-nvidia/include -Xcompiler="" -I/home/vesso/sw4/apps/proj/6/6.3.2-gcc/include -DSW4_USE_CMEM=1 -DSW4_GHCOF_NO_GP_IS_ZERO=1 -DSW4_EXPT_3=1 -DDISABLE_PREFETCH  --extended-lambda -ccbin mpicxx -std=c++17 -restrict -arch=sm_70 -I /include -I/home/vesso/sw4/adds/RAJA/0/0.14.1-gcc//include  --x cu  -DENABLE_CUDA -dc  -DENABLE_PROJ4  -DSW4_NOOMP -I../src/double -I/include -DUSE_HDF5 -c ../src/main.C
/home/vesso/sw4/adds/RAJA/0/0.14.1-gcc//include/RAJA/policy/MultiPolicy.hpp(100): error: namespace "RAJA::resources" has no member "EventProxy"

/home/vesso/sw4/adds/RAJA/0/0.14.1-gcc//include/RAJA/policy/MultiPolicy.hpp(100): error: expected a ";"

Can anyone share the magic combinations of compilers and versions that can compile the sw4 raja branch code? Do I need to downgrade GCC to 8.3? Any published compatibility matrix that shows the right combination of compilers and external libraries will be of great help.

Thanks in advance!

vessokolev avatar Jul 14 '24 07:07 vessokolev

We are using RAJA 2023.06.1, Umpire 2023.06.0, CUDA 12.2, and gcc 12.3 Try modifying make.raja.perlmutter.gcc accordingly for your make.inc

houjun avatar Jul 19 '24 20:07 houjun

Thank you. We are into that right now.

vessokolev avatar Jul 26 '24 09:07 vessokolev