@@ -33,6 +33,7 @@ enable_mpicc="${enable_mpicc:=OFF}"
3333enable_find_mpi=" ${enable_find_mpi:= ON} "
3434enable_tests=" ${enable_tests:= OFF} "
3535enable_verbose=" ${enable_verbose:= ON} "
36+ enable_64bit_ids=" $enable_64bit_ids :=OFF}"
3637build_jobs=" ${build_jobs:= 6} "
3738build_config=" ${build_config:= Release} "
3839build_shared_libs=" ${build_shared_libs:= ON} "
@@ -634,7 +635,6 @@ if [[ "$enable_hip" == "ON" ]]; then
634635fi
635636
636637if [[ " $enable_sycl " == " ON" ]]; then
637- kokkos_extra_cmake_args=" -DCMAKE_CXX_FLAGS=-fPIC -fp-model=precise -Wno-unused-command-line-argument -Wno-deprecated-declarations -fsycl-device-code-split=per_kernel -fsycl-max-parallel-link-jobs=128"
638638 kokkos_extra_cmake_args=" ${kokkos_extra_cmake_args} -DKokkos_ENABLE_SYCL=ON"
639639 kokkos_extra_cmake_args=" ${kokkos_extra_cmake_args} -DKokkos_ARCH_INTEL_PVC=ON"
640640 kokkos_extra_cmake_args=" ${kokkos_extra_cmake_args} -DCMAKE_CXX_EXTENSIONS=OFF"
@@ -689,48 +689,64 @@ if [ ! -d ${vtkm_src_dir} ]; then
689689 cd ${root_dir}
690690fi
691691
692-
693- vtkm_extra_cmake_args=" "
692+ vtkm_extra_cmake_args=()
694693if [[ " $enable_cuda " == " ON" ]]; then
695- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DVTKm_ENABLE_CUDA=ON"
696- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DCMAKE_CUDA_HOST_COMPILER=${CXX} "
697- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DCMAKE_CUDA_ARCHITECTURES=${CUDA_ARCH} "
694+ vtkm_extra_cmake_args+=(
695+ -DVTKm_ENABLE_CUDA=ON
696+ -DCMAKE_CUDA_HOST_COMPILER=" ${CXX} "
697+ -DCMAKE_CUDA_ARCHITECTURES=" ${CUDA_ARCH} "
698+ )
698699fi
699700
700701if [[ " $enable_hip " == " ON" ]]; then
701- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DVTKm_ENABLE_KOKKOS=ON"
702- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DCMAKE_PREFIX_PATH=${kokkos_install_dir} "
703- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DCMAKE_HIP_ARCHITECTURES=${ROCM_ARCH} "
704- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DVTKm_ENABLE_KOKKOS_THRUST=OFF"
702+ vtkm_extra_cmake_args+=(
703+ -DVTKm_ENABLE_KOKKOS=ON
704+ -DCMAKE_PREFIX_PATH=" ${kokkos_install_dir} "
705+ -DCMAKE_HIP_ARCHITECTURES=" ${ROCM_ARCH} "
706+ -DVTKm_ENABLE_KOKKOS_THRUST=OFF
707+ )
705708fi
706709
707710if [[ " $enable_sycl " == " ON" ]]; then
708- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DVTKm_ENABLE_KOKKOS=ON"
709- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DCMAKE_PREFIX_PATH=${kokkos_install_dir} "
710- vtkm_extra_cmake_args=" -DCMAKE_CXX_FLAGS=-fPIC -fp-model=precise -Wno-unused-command-line-argument -Wno-deprecated-declarations -fsycl-device-code-split=per_kernel -fsycl-max-parallel-link-jobs=128"
711+ vtkm_extra_cmake_args+=(
712+ -DVTKm_ENABLE_KOKKOS=ON
713+ -DCMAKE_PREFIX_PATH=" ${kokkos_install_dir} "
714+ -DCMAKE_CXX_FLAGS=" -fPIC -fp-model=precise -Wno-unused-command-line-argument -Wno-deprecated-declarations -fsycl-device-code-split=per_kernel -fsycl-max-parallel-link-jobs=20"
715+ )
711716fi
712717
713718
714719if [[ " $enable_mpicc " == " ON" ]]; then
715- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DMPI_C_COMPILER=${mpicc_exe} "
716- vtkm_extra_cmake_args=" ${vtkm_extra_cmake_args} -DMPI_CXX_COMPILER=${mpicxx_exe} "
720+ vtkm_extra_cmake_args+=(
721+ -DMPI_C_COMPILER=" ${mpicc_exe} "
722+ -DMPI_CXX_COMPILER=" ${mpicxx_exe} "
723+ )
724+ fi
725+
726+ if [[ " $enable_64bit_ids " == " ON" ]]; then
727+ vtkm_extra_cmake_args+=(
728+ -DVTKM_ALLOW_64BIT_IDS_FOR_ASCENT=ON
729+ -DVTKm_USE_64BIT_IDS=ON
730+ )
717731fi
718732
719733echo " **** Configuring VTK-m ${vtkm_version} "
720734cmake -S ${vtkm_src_dir} -B ${vtkm_build_dir} ${cmake_compiler_settings} \
721735 -DCMAKE_VERBOSE_MAKEFILE:BOOL=${enable_verbose} \
722736 -DCMAKE_BUILD_TYPE=${build_config} \
723737 -DBUILD_SHARED_LIBS=${build_shared_libs} \
724- -DVTKm_USE_64BIT_IDS=OFF \
738+ -DVTKm_USE_64BIT_IDS=${enable_64bit_ids} \
739+ -DVTKM_ALLOW_64BIT_IDS_FOR_ASCENT=${enable_64bit_ids} \
725740 -DVTKm_USE_DOUBLE_PRECISION=ON \
726741 -DVTKm_USE_DEFAULT_TYPES_FOR_ASCENT=ON \
727742 -DVTKm_ENABLE_MPI=${enable_mpi} \
728743 -DVTKm_ENABLE_OPENMP=${enable_openmp} \
729744 -DVTKm_ENABLE_RENDERING=ON \
730745 -DVTKm_ENABLE_TESTING=OFF\
731746 -DBUILD_TESTING=OFF \
732- -DVTKm_ENABLE_BENCHMARKS=OFF ${vtkm_extra_cmake_args} \
733- -DCMAKE_INSTALL_PREFIX=${vtkm_install_dir}
747+ -DVTKm_ENABLE_BENCHMARKS=OFF \
748+ -DCMAKE_INSTALL_PREFIX=${vtkm_install_dir} \
749+ " ${vtkm_extra_cmake_args[@]} "
734750
735751echo " **** Building VTK-m ${vtkm_version} "
736752cmake --build ${vtkm_build_dir} --config ${build_config} -j${build_jobs}
@@ -778,6 +794,11 @@ if [[ "$enable_hip" == "ON" ]]; then
778794 camp_extra_cmake_args=" ${camp_extra_cmake_args} -DROCM_PATH=${ROCM_PATH} "
779795fi
780796
797+ if [[ " $enable_sycl " == " ON" ]]; then
798+ camp_extra_cmake_args=" -DENABLE_SYCL=ON"
799+ fi
800+
801+
781802echo " **** Configuring Camp ${camp_version} "
782803cmake -S ${camp_src_dir} -B ${camp_build_dir} ${cmake_compiler_settings} \
783804 -DCMAKE_VERBOSE_MAKEFILE:BOOL=${enable_verbose} \
@@ -820,17 +841,28 @@ if [ ! -d ${raja_src_dir} ]; then
820841 tar ${tar_extra_args} -xzf ${raja_tarball} -C ${source_dir}
821842fi
822843
823- raja_extra_cmake_args=" "
844+ raja_extra_cmake_args=()
824845if [[ " $enable_cuda " == " ON" ]]; then
825- raja_extra_cmake_args=" -DENABLE_CUDA=ON"
826- raja_extra_cmake_args=" ${raja_extra_cmake_args} -DCMAKE_CUDA_ARCHITECTURES=${CUDA_ARCH} "
846+ raja_extra_cmake_args=(
847+ -DENABLE_CUDA=ON
848+ -DCMAKE_CUDA_ARCHITECTURES=" ${CUDA_ARCH} "
849+ )
827850fi
828851
829852if [[ " $enable_hip " == " ON" ]]; then
830- raja_extra_cmake_args=" -DENABLE_HIP=ON"
831- raja_extra_cmake_args=" ${raja_extra_cmake_args} -DCMAKE_HIP_COMPILER=${CXX} "
832- raja_extra_cmake_args=" ${raja_extra_cmake_args} -DCMAKE_HIP_ARCHITECTURES=${ROCM_ARCH} "
833- raja_extra_cmake_args=" ${raja_extra_cmake_args} -DROCM_PATH=${ROCM_PATH} "
853+ raja_extra_cmake_args=(
854+ -DENABLE_HIP=ON
855+ -DCMAKE_HIP_COMPILER=" ${CXX} "
856+ -DCMAKE_HIP_ARCHITECTURES=" ${ROCM_ARCH} "
857+ -DROCM_PATH=" ${ROCM_PATH} "
858+ )
859+ fi
860+
861+ if [[ " $enable_sycl " == " ON" ]]; then
862+ raja_extra_cmake_args=(
863+ -DENABLE_SYCL=ON
864+ -DCMAKE_CXX_FLAGS=" -fsycl -fsycl-device-code-split=per_kernel -fsycl-max-parallel-link-jobs=128"
865+ )
834866fi
835867
836868echo " **** Configuring RAJA ${raja_version} "
@@ -843,9 +875,10 @@ cmake -S ${raja_src_dir} -B ${raja_build_dir} ${cmake_compiler_settings} \
843875 -DENABLE_TESTS=OFF \
844876 -DRAJA_ENABLE_TESTS=OFF \
845877 -DENABLE_EXAMPLES=OFF \
846- -DENABLE_EXERCISES=OFF ${raja_extra_cmake_args} \
878+ -DENABLE_EXERCISES=OFF \
847879 -DCMAKE_INSTALL_PREFIX=${raja_install_dir} \
848- -DRAJA_ENABLE_VECTORIZATION=${raja_enable_vectorization}
880+ -DRAJA_ENABLE_VECTORIZATION=${raja_enable_vectorization} \
881+ " ${raja_extra_cmake_args[@]} "
849882
850883echo " **** Building RAJA ${raja_version} "
851884cmake --build ${raja_build_dir} --config ${build_config} -j${build_jobs}
@@ -1117,6 +1150,12 @@ if [[ "$enable_hip" == "ON" ]]; then
11171150 echo ' set(KOKKOS_DIR ' ${kokkos_install_dir} ' CACHE PATH "")' >> ${root_dir} /ascent-config.cmake
11181151fi
11191152
1153+ if [[ " $enable_sycl " == " ON" ]]; then
1154+ echo ' set(BLT_CXX_STD c++17 CACHE STRING "")' >> ${root_dir} /ascent-config.cmake
1155+ echo ' set(KOKKOS_DIR ' ${kokkos_install_dir} ' CACHE PATH "")' >> ${root_dir} /ascent-config.cmake
1156+ echo ' set(CMAKE_CXX_FLAGS "-fPIC -fp-model=precise -fsycl -fsycl-device-code-split=per_kernel -fsycl-max-parallel-link-jobs=128" CACHE PATH "")' >> ${root_dir} /ascent-config.cmake
1157+ fi
1158+
11201159# build only if install doesn't exist
11211160if [ ! -d ${ascent_install_dir} ]; then
11221161if ${build_ascent} ; then
0 commit comments