Skip to content

Commit

Permalink
[WIP] Update and sandardize implementation of packages, in sync with …
Browse files Browse the repository at this point in the history
…spack update (#593)

* Update RSC with rocm 6.1.2 and more + reactivate rocm job for testing

* Update Radiuss Shared CI too (minor changes there)

* Fix regression in submodules

* Allow failure for new xl compiler on lassen, same error as with previous version

* From RSC: Upgrade to rocm@6.2.0 and cray-mpich@8.1.30 in CI on tioga

* Clean CI config

* From RSC: Enforce coherency between rocm software stack and compiler

* RSC Fix

* From RSC: Fix typo: rocm compiler is rocmcc

* Remove XL jobs (RSC and local), revert to cce 17.0.1 on tioga

* Point at main branch in RSC

* Update Spack

* Minor changes to build_and_test script

* Restore appropriate version of RSC

* Revert "Restore appropriate version of RSC"

This reverts commit 8fba6f2.

* Update Spack (and RSC accordingly)

* Update and standardize RADIUSS packages

* build_and_test.sh: allow to control whether or not to push to registry

* From RSC: packages fix

* From RSC: point at main branch

* Fix spack branch name

* Update Spack ref (waiting for next snapshot tag)

* Update RSC to main

* Update RSC to main

* Update Spack to appropriate snapshot branch
  • Loading branch information
adrienbernede authored Nov 14, 2024
1 parent a140eda commit 53071d8
Show file tree
Hide file tree
Showing 5 changed files with 38 additions and 18 deletions.
8 changes: 1 addition & 7 deletions .gitlab/jobs/lassen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,13 +21,7 @@ variables:
# We keep ${PROJECT_<MACHINE>_VARIANTS} and ${PROJECT_<MACHINE>_DEPS} So that
# the comparison with the original job is easier.

# Allow failure due to weird error only with XL on Lassen. Passes in debug mode.
xl_2022_08_19_gcc_8_3_1_cuda_11_2_0:
variables:
SPEC: "${PROJECT_LASSEN_VARIANTS} +cuda %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"
extends: .job_on_lassen
allow_failure: true
# No overridden jobs so far.

# Allow failure due to weird error only with XL on Lassen. Passes in debug mode.
xl_2023_06_28_gcc_11_2_1_cuda_11_8_0:
Expand Down
36 changes: 30 additions & 6 deletions .gitlab/jobs/tioga.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,14 +14,38 @@
variables:
INCLUDED_FILE_CANNOT_BE_EMPTY: "True"

########################
# Overridden shared jobs
########################
# We duplicate the shared jobs description and add necessary changes for this
# project. We keep ${PROJECT_<MACHINE>_VARIANTS} and ${PROJECT_<MACHINE>_DEPS}
# So that the comparison with the original job is easier.

# This compiler is not considered reliable per issue in RAJA
# https://github.com/LLNL/RAJA/pull/1712#issuecomment-2316335119
# We allow failure and keep the cce 17.0.1 job below.
cce_18_0_0:
variables:
SPEC: "${PROJECT_TIOGA_VARIANTS} %cce@=18.0.0 ${PROJECT_TIOGA_DEPS}"
extends: .job_on_tioga
allow_failure: true

############
# Extra jobs
############
# We do not recommend using ${PROJECT_<MACHINE>_VARIANTS} and
# ${PROJECT_<MACHINE>_DEPS} in the extra jobs. There is no reason not to fully
# describe the spec here.
# The correct way is now to use rocmcc compiler directly as done in shared spec
### Template for extra jobs defined by the project.
#clang13.0.1-rocm5.4.1:
# variables:
# SPEC: "%clang@13.0.1 +rocm amdgpu_target=gfx90a ^hip@5.4.1"
# extends: .job_on_tioga

# As long as cce 18 fails, we keep this one.
cce_17_0_1:
variables:
SPEC: "${PROJECT_TIOGA_VARIANTS} %cce@=17.0.1 ${PROJECT_TIOGA_DEPS}"
extends: .job_on_tioga

# TODO: update cce when vetted
master:
variables:
SPEC: " +tests %cce@18.0.0"
SPEC: " +tests %cce@17.0.1"
extends: .job_on_tioga
2 changes: 1 addition & 1 deletion .uberenv_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"package_source_dir" : "../..",
"package_final_phase" : "initconfig",
"spack_url": "https://github.com/spack/spack.git",
"spack_branch": "develop-2024-05-26",
"spack_branch": "develop-2024-10-06",
"spack_activate" : {},
"spack_configs_path": "scripts/radiuss-spack-configs",
"spack_packages_path": "scripts/radiuss-spack-configs/packages",
Expand Down
8 changes: 5 additions & 3 deletions scripts/gitlab/build-and-test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@ job_unique_id=${CI_JOB_ID:-""}
use_dev_shm=${USE_DEV_SHM:-true}
spack_debug=${SPACK_DEBUG:-false}
debug_mode=${DEBUG_MODE:-false}
push_to_registry=${PUSH_TO_REGISTRY:-true}

# REGISTRY_TOKEN allows you to provide your own personal access token to the CI
# registry. Be sure to set the token with at least read access to the registry.
Expand All @@ -53,6 +54,7 @@ then
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~"
use_dev_shm=false
spack_debug=true
push_to_registry=false
fi

if [[ -n ${module_list} ]]
Expand Down Expand Up @@ -134,7 +136,7 @@ then
timed_message "Spack build of dependencies"
${uberenv_cmd} --skip-setup-and-env --spec="${spec}" ${prefix_opt}

if [[ -n ${ci_registry_token} && ${debug_mode} == false ]]
if [[ -n ${ci_registry_token} && ${push_to_registry} == true ]]
then
timed_message "Push dependencies to buildcache"
${spack_cmd} -D ${spack_env_path} buildcache push --only dependencies gitlab_ci
Expand Down Expand Up @@ -203,7 +205,7 @@ then
rm -rf ${build_dir} 2>/dev/null
mkdir -p ${build_dir} && cd ${build_dir}

timed_message "Building RAJA"
timed_message "Building Caliper"
if [[ "${truehostname}" == "corona" || "${truehostname}" == "tioga" ]]
then
module unload rocm
Expand Down Expand Up @@ -245,7 +247,7 @@ then

cd ${build_dir}

timed_message "Testing RAJA"
timed_message "Testing Caliper"
ctest --output-on-failure -T test 2>&1 | tee tests_output.txt

no_test_str="No tests were found!!!"
Expand Down

0 comments on commit 53071d8

Please sign in to comment.