diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 8848f52598..65e73a0666 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -48,6 +48,7 @@ variables: # High level stages stages: + - machine-checks - build-and-test - multi_project @@ -58,7 +59,7 @@ stages: include: - local: '.gitlab/custom-jobs-and-variables.yml' - project: 'radiuss/radiuss-shared-ci' - ref: v2023.03.0rc + ref: v2023.03.1 file: '${CI_MACHINE}-build-and-test.yml' - local: '.gitlab/${CI_MACHINE}-build-and-test-extra.yml' strategy: depend @@ -84,7 +85,7 @@ trigger-rajaperf: include: # checks preliminary to running the actual CI test (optional) - project: 'radiuss/radiuss-shared-ci' - ref: v2023.03.0rc + ref: v2023.03.1 file: 'preliminary-ignore-draft-pr.yml' # pipelines subscribed by the project - local: '.gitlab/subscribed-pipelines.yml' diff --git a/.gitlab/corona-build-and-test-extra.yml b/.gitlab/corona-build-and-test-extra.yml index a752d788e6..e65bba3947 100644 --- a/.gitlab/corona-build-and-test-extra.yml +++ b/.gitlab/corona-build-and-test-extra.yml @@ -21,8 +21,8 @@ # ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully # describe the spec here. -rocmcc_5_1_1_hip_desul_atomics: +rocmcc_5_4_1_hip_desul_atomics: variables: - SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@5.1.1 ^hip@5.1.1 ^blt@develop" + SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@5.4.1 ^hip@5.4.1 ^blt@develop" extends: .build_and_test_on_corona diff --git a/.gitlab/custom-jobs-and-variables.yml b/.gitlab/custom-jobs-and-variables.yml index 7a36d2e306..18aaed124e 100644 --- a/.gitlab/custom-jobs-and-variables.yml +++ b/.gitlab/custom-jobs-and-variables.yml @@ -26,7 +26,7 @@ variables: # Arguments for top level allocation CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1" # Arguments for job level allocation - CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1" + CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1 --begin-time=+5s" # Project specific variants for corona PROJECT_CORONA_VARIANTS: "~shared ~openmp +tests" # Project specific deps for corona @@ -36,7 +36,7 @@ variables: # Arguments for top level allocation TIOGA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1" # Arguments for job level allocation - TIOGA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1" + TIOGA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1 --begin-time=+5s" # Project specific variants for corona PROJECT_TIOGA_VARIANTS: "~shared ~openmp +tests" # Project specific deps for corona @@ -47,7 +47,7 @@ variables: # Arguments for job level allocation LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 60" # Project specific variants for lassen - PROJECT_LASSEN_VARIANTS: "~shared +openmp +tests" + PROJECT_LASSEN_VARIANTS: "~shared +openmp +tests cuda_arch=70" # Project specific deps for lassen PROJECT_LASSEN_DEPS: "" diff --git a/.gitlab/lassen-build-and-test-extra.yml b/.gitlab/lassen-build-and-test-extra.yml index 77a12b302c..71950b0ba7 100644 --- a/.gitlab/lassen-build-and-test-extra.yml +++ b/.gitlab/lassen-build-and-test-extra.yml @@ -12,93 +12,20 @@ # We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} So that # the comparison with the original job is easier. -# Overriding shared spec: Allow failures -ibm_clang_9_0_0: +# Overriding shared spec: Longer allocation + extra flags +xl_2022_08_19_gcc_8_3_1_cuda_11_2_0: variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} %clang@ibm.9.0.0 ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen - allow_failure: true - -# Overriding shared spec: Allow failures -ibm_clang_9_0_0_gcc_8_3_1: - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} %clang@ibm.9.0.0 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen - allow_failure: true - -# Overriding shared spec: Extra flags -gcc_8_3_1: - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} %gcc@8.3.1 cxxflags==\"-finline-functions -finline-limit=20000\" cflags==\"-finline-functions -finline-limit=20000\" ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen - -# Overriding shared spec: Longer allocation + Allow failures -pgi_20_4_gcc_8_3_1: - extends: .build_and_test_on_lassen - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} %pgi@20.4 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" ${PROJECT_LASSEN_DEPS}" - LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 80" - allow_failure: true - -# Overriding shared spec: Extra flags -xl_16_1_1_12: - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} %xl@16.1.1.12 cxxflags==\"-qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qpic -qsmp=omp -qsuppress=1500-029 -qsuppress=1500-036\" ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen - -# Overriding shared spec: Extra flags -xl_16_1_1_12_gcc_8_3_1: - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} %xl@16.1.1.12 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 -qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qpic -qsmp=omp -qsuppress=1500-029 -qsuppress=1500-036\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen - -# Overriding shared spec: Allow failures -ibm_clang_9_0_0_gcc_8_3_1_cuda_10_1_168: - extends: .build_and_test_on_lassen - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} +cuda %clang@ibm.9.0.0 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" ^cuda@10.1.168 ${PROJECT_LASSEN_DEPS}" - allow_failure: true - -# Overriding shared spec: Longer allocation + Extra flags + Allow failure + Updated cuda -xl_16_1_1_12_cuda_11_1_1: - variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} +cuda %xl@16.1.1.12 cxxflags==\"-qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qpic -qsmp=omp -qsuppress=1500-029 -qsuppress=1500-036\" cuda_arch=70 ^cuda@11.1.0 ${PROJECT_LASSEN_DEPS}" + SPEC: "${PROJECT_LASSEN_VARIANTS} +cuda cxxflags==\"-qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qpic -qsmp=omp -qsuppress=1500-029 -qsuppress=1500-036\" %xl@16.1.1.12.gcc.8.3.1 ^cuda@11.2.0+allow-unsupported-compilers ${PROJECT_LASSEN_DEPS}" + MODULE_LIST: "cuda/11.2.0" LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 120" - allow_failure: true - extends: .build_and_test_on_lassen - -# Overriding shared spec: Deactivated spec. This spec will be removed soon. -xl_16_1_1_12_gcc_7_3_1_cuda_10_1_168: - variables: - SPEC: "${PROJECT_LASSEN_VARIANTS} +cuda %xl@16.1.1.12 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-7.3.1\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-7.3.1\" ^cuda@10.1.168 ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen - script: - - | - echo -e "\e[31mDeactivated spec !\e[0m" - echo -e "\e[31m${SPEC}\e[0m" - echo -e "\e[31mRAJA won’t build with Cuda < 11.1.0 due to a known issue.\e[0m" - - exit 1 - allow_failure: true - -# Overriding shared spec: Deactivated spec. This spec will be removed soon. -xl_16_1_1_12_gcc_8_3_1_cuda_11_0_2: - variables: - SPEC: "${PROJECT_LASSEN_VARIANTS} +cuda %xl@16.1.1.12 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" ^cuda@11.0.2 ${PROJECT_LASSEN_DEPS}" extends: .build_and_test_on_lassen - script: - - | - echo -e "\e[31mDeactivated spec !\e[0m" - echo -e "\e[31m${SPEC}\e[0m" - echo -e "\e[31mRAJA won’t build with Cuda < 11.0.2 due to a known issue.\e[0m" - - exit 1 - allow_failure: true -# Overriding shared spec: Longer allocation + Extra flags + Allow failure + Updated cuda -xl_16_1_1_12_gcc_8_3_1_cuda_11_1_0: +# Overriding shared spec: Longer allocation + extra flags +xl_2022_08_19_gcc_8_3_1_cuda_11_7_0: variables: - SPEC: " ${PROJECT_LASSEN_VARIANTS} +cuda %xl@16.1.1.12 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 -qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qpic -qsmp=omp -qsuppress=1500-029 -qsuppress=1500-036\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" cuda_arch=70 ^cuda@11.1.0 ${PROJECT_LASSEN_DEPS}" + SPEC: "${PROJECT_LASSEN_VARIANTS} +cuda cxxflags==\"-qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qpic -qsmp=omp -qsuppress=1500-029 -qsuppress=1500-036\" %xl@16.1.1.12.gcc.8.3.1 ^cuda@11.7.0+allow-unsupported-compilers ${PROJECT_LASSEN_DEPS}" + MODULE_LIST: "cuda/11.7.0" LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 120" - allow_failure: true extends: .build_and_test_on_lassen @@ -109,33 +36,11 @@ xl_16_1_1_12_gcc_8_3_1_cuda_11_1_0: # ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully # describe the spec here. -########## -# CPU ONLY -########## - -clang_14_0_5: - variables: - SPEC: " ~shared +openmp +tests %clang@14.0.5" - extends: .build_and_test_on_lassen - -########## -# CUDA -########## - -clang_12_0_1_cuda_11_5_0: - variables: - SPEC: " ~shared +openmp +tests +cuda cuda_arch=70 %clang@12.0.1 ^cuda@11.5.0" - extends: .build_and_test_on_lassen - -gcc_8_3_1_cuda_11_1_0: - variables: - SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.1.0" - extends: .build_and_test_on_lassen - gcc_8_3_1_cuda_11_5_0_ats_disabled: extends: .build_and_test_on_lassen variables: - SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.5.0" + SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.5.0+allow-unsupported-compilers" + MODULE_LIST: "cuda/11.5.0" LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 --atsdisable -W 60" ########## @@ -144,16 +49,17 @@ gcc_8_3_1_cuda_11_5_0_ats_disabled: clang_13_0_1_libcpp: variables: - SPEC: " ~shared +openmp +tests %clang@13.0.1+libcpp" + SPEC: " ~shared +openmp +tests %clang@13.0.1 cflags==\"-DGTEST_HAS_CXXABI_H_=0\" cxxflags==\"-stdlib=libc++ -DGTEST_HAS_CXXABI_H_=0\"" extends: .build_and_test_on_lassen -clang_14_0_5_asan: - variables: - SPEC: " ~shared +openmp +tests %clang@14.0.5 cxxflags==\"-fsanitize=address\" " - ASAN_OPTIONS: "detect_leaks=1" - extends: .build_and_test_on_lassen +#clang_14_0_5_asan: +# variables: +# SPEC: " ~shared +openmp +tests %clang@14.0.5 cxxflags==\"-fsanitize=address\" " +# ASAN_OPTIONS: "detect_leaks=1" +# LSAN_OPTIONS: "suppressions=${CI_PROJECT_DIR}/suppressions.asan" +# extends: .build_and_test_on_lassen -gcc_8_3_1_cuda_10_1_168_desul_atomics: +gcc_8_3_1_cuda_10_1_243_desul_atomics: variables: - SPEC: " ~shared +openmp +tests +cuda +desul %gcc@8.3.1 cuda_arch=70 ^cuda@10.1.168" + SPEC: " ~shared +openmp +tests +cuda +desul %gcc@8.3.1 cuda_arch=70 ^cuda@10.1.243+allow-unsupported-compilers" extends: .build_and_test_on_lassen diff --git a/.gitlab/ruby-build-and-test-extra.yml b/.gitlab/ruby-build-and-test-extra.yml index 726a208b34..c6666e51d5 100644 --- a/.gitlab/ruby-build-and-test-extra.yml +++ b/.gitlab/ruby-build-and-test-extra.yml @@ -12,19 +12,7 @@ # We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} So that # the comparison with the original job is easier. -# Overriding shared config for longer run -gcc_8_1_0: - variables: - SPEC: " ${PROJECT_RUBY_VARIANTS} %gcc@8.1.0 ${PROJECT_RUBY_DEPS}" - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1" - extends: .build_and_test_on_ruby - -# Overriding shared spec: Allow failures -pgi_20_1_gcc_local_8_3_1: - variables: - SPEC: " ${PROJECT_RUBY_VARIANTS} %pgi@20.1 cxxflags==\"-rc=/usr/workspace/umpire/pgi/x86_64/local-gcc-8.3.1-rc\" cflags==\"-rc=/usr/workspace/umpire/pgi/x86_64/local-gcc-8.3.1-rc\" fflags==\"-rc=/usr/workspace/umpire/pgi/x86_64/local-gcc-8.3.1-rc\" ${PROJECT_RUBY_DEPS}" - extends: .build_and_test_on_ruby - allow_failure: true +# No overridden jobs so far. ############ # Extra jobs @@ -33,26 +21,26 @@ pgi_20_1_gcc_local_8_3_1: # ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully # describe the spec here. -clang_9_0_0_openmp_off: +clang_14_0_6_openmp_off: variables: - SPEC: " ~shared ~openmp +tests %clang@9.0.0" + SPEC: " ~shared ~openmp +tests %clang@14.0.6" extends: .build_and_test_on_ruby -gcc_8_1_0_openmp_default: +gcc_10_3_1_openmp_default: variables: - SPEC: " ~shared +tests %gcc@8.1.0" + SPEC: " ~shared +tests %gcc@10.3.1" RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1" extends: .build_and_test_on_ruby -icpc_19_1_0: - variables: - SPEC: " ~shared +openmp +tests %intel@19.1.0" - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=40 --nodes=1" - extends: .build_and_test_on_ruby - # OTHERS -clang_10_0_1_gcc_8_3_1_desul_atomics: +clang_14_0_6_gcc_10_3_1_desul_atomics: variables: - SPEC: " ~shared +openmp +tests +desul %clang@10.0.1 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1\"" + SPEC: " ~shared +openmp +tests +desul %clang@14.0.6.gcc.10.3.1" extends: .build_and_test_on_ruby +# Ideally, we want to use this spec, but the build takes too much time... +#intel_oneapi_2022_2_gcc_8_3_1: +# variables: +# SPEC: "~shared +openmp +tests %oneapi@2022.2.gcc.8.3.1" +# RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=90 --nodes=1" +# extends: .build_and_test_on_ruby diff --git a/.gitlab/subscribed-pipelines.yml b/.gitlab/subscribed-pipelines.yml index 42d4eaf82d..8e9e34a552 100644 --- a/.gitlab/subscribed-pipelines.yml +++ b/.gitlab/subscribed-pipelines.yml @@ -5,25 +5,76 @@ # SPDX-License-Identifier: (MIT) ############################################################################### -# Uncomment pipelines to subscribe to a shared pipeline. +# The template job to test whether a machine is up. +# Expects CI_MACHINE defined to machine name. +.machine-check: + stage: machine-checks + tags: [shell, oslic] + variables: + GIT_STRATEGY: none + script: + - | + if [[ $(jq '.[env.CI_MACHINE].total_nodes_up' /usr/global/tools/lorenz/data/loginnodeStatus) == 0 ]] + then + echo -e "\e[31mNo node available on ${CI_MACHINE}\e[0m" + curl --url "https://api.github.com/repos/${GITHUB_PROJECT_ORG}/${GITHUB_PROJECT_NAME}/statuses/${CI_COMMIT_SHA}" \ + --header 'Content-Type: application/json' \ + --header "authorization: Bearer ${GITHUB_TOKEN}" \ + --data "{ \"state\": \"failure\", \"target_url\": \"${CI_PIPELINE_URL}\", \"description\": \"GitLab ${CI_MACHINE} down\", \"context\": \"ci/gitlab/${CI_MACHINE}\" }" + exit 1 + fi + +### +# Trigger a build-and-test pipeline for a machine. +# Comment the jobs for machines you don’t need. +### + +# RUBY +ruby-up-check: + variables: + CI_MACHINE: "ruby" + extends: [.machine-check] -# Trigger a build-and-test pipeline for ruby, corona, tioga, and lassen ruby-build-and-test: variables: CI_MACHINE: "ruby" + needs: [ruby-up-check] extends: [.build-and-test] +# CORONA +corona-up-check: + variables: + CI_MACHINE: "corona" + extends: [.machine-check] + corona-build-and-test: variables: CI_MACHINE: "corona" + needs: [corona-up-check] extends: [.build-and-test] +# TIOGA +tioga-up-check: + variables: + CI_MACHINE: "tioga" + extends: [.machine-check] + tioga-build-and-test: variables: CI_MACHINE: "tioga" + needs: [tioga-up-check] extends: [.build-and-test] +# LASSEN +lassen-up-check: + variables: + CI_MACHINE: "lassen" + extends: [.machine-check] + lassen-build-and-test: variables: CI_MACHINE: "lassen" + needs: [lassen-up-check] extends: [.build-and-test] + + diff --git a/.gitlab/tioga-build-and-test-extra.yml b/.gitlab/tioga-build-and-test-extra.yml index 88c0708db4..25b9880982 100644 --- a/.gitlab/tioga-build-and-test-extra.yml +++ b/.gitlab/tioga-build-and-test-extra.yml @@ -21,12 +21,12 @@ # ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully # describe the spec here. -rocmcc_5_2_3_hip_desul_atomics: +rocmcc_5_4_3_hip_desul_atomics: variables: - SPEC: "~shared +rocm ~openmp +desul +tests amdgpu_target=gfx90a %rocmcc@5.2.3 ^hip@5.2.3 ^blt@develop" + SPEC: "~shared +rocm ~openmp +desul +tests amdgpu_target=gfx90a %rocmcc@5.4.3 ^hip@5.4.3 ^blt@develop" extends: .build_and_test_on_tioga -rocmcc_5_2_3_hip_openmp: +rocmcc_5_4_3_hip_openmp: variables: - SPEC: "~shared +rocm +openmp +tests amdgpu_target=gfx90a %rocmcc@5.2.3 ^hip@5.2.3 ^blt@develop" + SPEC: "~shared +rocm +openmp +tests amdgpu_target=gfx90a %rocmcc@5.4.3 ^hip@5.4.3 ^blt@develop" extends: .build_and_test_on_tioga diff --git a/.uberenv_config.json b/.uberenv_config.json index afa6d66dc0..f160101d50 100644 --- a/.uberenv_config.json +++ b/.uberenv_config.json @@ -4,7 +4,7 @@ "package_final_phase" : "initconfig", "package_source_dir" : "../..", "spack_url": "https://github.com/spack/spack.git", -"spack_branch": "v0.19.0", +"spack_branch": "e4s-23.02", "spack_activate" : {}, "spack_configs_path": "scripts/radiuss-spack-configs", "spack_packages_path": "scripts/radiuss-spack-configs/packages", diff --git a/cmake/RAJAMacros.cmake b/cmake/RAJAMacros.cmake index f1b646769b..4f12d19832 100644 --- a/cmake/RAJAMacros.cmake +++ b/cmake/RAJAMacros.cmake @@ -103,7 +103,7 @@ macro(raja_add_plugin_library) endmacro(raja_add_plugin_library) -# Allows strings embedded in test files to used to process ctest results. +# Allows strings embedded in test files to be used to process ctest results. # Only works for new testing framework/structure (no effect on old tests). # Borrowed heavily from CAMP. function(raja_set_failtest TESTNAME) @@ -127,6 +127,8 @@ function(raja_set_failtest TESTNAME) # Search test source code for fail string foreach(line ${test_lines}) + # We know the line will match the regex, but the following populates the + # CMAKE_MATCH- variables with groups from the regex. if(NOT line MATCHES "${test_regex}") continue() endif() diff --git a/scripts/gitlab/build_and_test.sh b/scripts/gitlab/build_and_test.sh index ee4ca168b5..065490a916 100755 --- a/scripts/gitlab/build_and_test.sh +++ b/scripts/gitlab/build_and_test.sh @@ -24,8 +24,17 @@ project_dir="$(pwd)" build_root=${BUILD_ROOT:-""} hostconfig=${HOST_CONFIG:-""} spec=${SPEC:-""} +module_list=${MODULE_LIST:-""} job_unique_id=${CI_JOB_ID:-""} +if [[ -n ${module_list} ]] +then + echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + echo "~~~~~ Modules to load: ${module_list}" + echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + module load ${module_list} +fi + prefix="" if [[ -d /dev/shm ]] @@ -51,7 +60,7 @@ echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" if [[ "${option}" != "--build-only" && "${option}" != "--test-only" ]] then echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ Building Dependencies" + echo "~~~~~ Building dependencies" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" if [[ -z ${spec} ]] @@ -79,7 +88,7 @@ then fi echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ Dependencies Built" + echo "~~~~~ Dependencies built" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" date @@ -173,7 +182,7 @@ then fi echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ RAJA Built" + echo "~~~~~ RAJA built" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" date fi @@ -234,7 +243,7 @@ then fi echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ RAJA Tests Complete" + echo "~~~~~ RAJA tests complete" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" date diff --git a/scripts/radiuss-spack-configs b/scripts/radiuss-spack-configs index a412061949..f6626f790b 160000 --- a/scripts/radiuss-spack-configs +++ b/scripts/radiuss-spack-configs @@ -1 +1 @@ -Subproject commit a412061949997cf564f073addfca3e7483ec2a52 +Subproject commit f6626f790b07fbd399f238aa9792a11ca78dfa97 diff --git a/suppressions.asan b/suppressions.asan new file mode 100644 index 0000000000..73aa6cf47d --- /dev/null +++ b/suppressions.asan @@ -0,0 +1,2 @@ +# Library that isn’t built by us +leak:libxlsmp.so.1 diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index 366a7adb30..cdc1bf33e3 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -17,3 +17,4 @@ add_subdirectory(old-tests) add_subdirectory(install) +configure_file(${CMAKE_SOURCE_DIR}/test/CTestCustom.cmake ${CMAKE_BINARY_DIR}) diff --git a/test/CTestCustom.cmake b/test/CTestCustom.cmake new file mode 100644 index 0000000000..eab0c1ba32 --- /dev/null +++ b/test/CTestCustom.cmake @@ -0,0 +1,16 @@ +############################################################################### +# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# and RAJA project contributors. See the RAJA/LICENSE file for details. +# +# SPDX-License-Identifier: (BSD-3-Clause) +############################################################################### + +# You may add here the list of tests to be ignored. +# By default, we populate that list with the content of the corresponding +# variable. This variable is usually defined in a hostconfig file generated +# for a specific machine, e.g. by Spack. + +set(CTEST_CUSTOM_TESTS_IGNORE + ${CTEST_CUSTOM_TESTS_IGNORE} + ) + diff --git a/test/unit/algorithm/CMakeLists.txt b/test/unit/algorithm/CMakeLists.txt index 3bb284719f..9b73b7e75a 100644 --- a/test/unit/algorithm/CMakeLists.txt +++ b/test/unit/algorithm/CMakeLists.txt @@ -65,7 +65,7 @@ macro(RAJA_GENERATE_ALGORITHM_UTIL_SORT_TESTS SORT_BACKEND_in SORT_SIZE_in UTIL_ raja_add_test( NAME test-algorithm-util-sort-${UTIL_SORT}-${SORT_BACKEND} SOURCES ${CMAKE_CURRENT_BINARY_DIR}/test-algorithm-util-sort-${UTIL_SORT}-${SORT_BACKEND}.cpp ) - + target_include_directories(test-algorithm-util-sort-${UTIL_SORT}-${SORT_BACKEND}.exe PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tests)