95 lines
2.5 KiB
YAML
95 lines
2.5 KiB
YAML
# Ad-hoc build that runs in the ECP Hardware, concretely in OLCF Ascent.
|
|
|
|
build:ascent_gcc_cuda:
|
|
tags: [olcf, ascent, nobatch]
|
|
extends:
|
|
- .ascent_gcc_cuda
|
|
- .ascent_build
|
|
- .run_ecp_ci
|
|
- .cmake_build_artifacts
|
|
|
|
test:ascent_gcc_cuda:
|
|
tags: [olcf, ascent, batch]
|
|
extends:
|
|
- .ascent_gcc_cuda
|
|
- .ascent_test
|
|
- .run_ecp_ci
|
|
- .cmake_test_artifacts
|
|
needs:
|
|
- build:ascent_gcc_cuda
|
|
dependencies:
|
|
- build:ascent_gcc_cuda
|
|
|
|
.ascent_gcc_cuda:
|
|
variables:
|
|
CCACHE_BASEDIR: /gpfs/wolf/
|
|
CCACHE_DIR: "/gpfs/wolf/proj-shared/csc331/vtk-m/ci/ccache/"
|
|
|
|
# -isystem= is not affected by CCACHE_BASEDIR, thus we must ignore it
|
|
CCACHE_IGNOREOPTIONS: "-isystem=*"
|
|
CCACHE_NOHASHDIR: "true"
|
|
|
|
CMAKE_BUILD_TYPE: RelWithDebInfo
|
|
CMAKE_GENERATOR: Ninja
|
|
CUSTOM_CI_BUILDS_DIR: "/gpfs/wolf/proj-shared/csc331/vtk-m/ci/runtime"
|
|
|
|
CC: gcc
|
|
CXX: g++
|
|
CUDAHOSTCXX: g++
|
|
JOB_MODULES: git cmake ninja gcc/10.2.0 spectrum-mpi lsf-tools cuda/11.4.2
|
|
VTKM_SETTINGS: cuda+ascent+ccache
|
|
|
|
.ascent_build:
|
|
stage: build
|
|
variables:
|
|
CTEST_MAX_PARALLELISM: 4
|
|
before_script:
|
|
# Prep the environment
|
|
- module purge
|
|
- echo ${JOB_MODULES}
|
|
- module load git-lfs zstd ${JOB_MODULES}
|
|
- export PATH="/gpfs/wolf/proj-shared/csc331/vtk-m/ci/utils:$PATH"
|
|
- ccache -p
|
|
- ccache -z
|
|
|
|
- git remote add lfs https://gitlab.kitware.com/vtk/vtk-m.git
|
|
- git fetch lfs
|
|
- git-lfs install
|
|
- git-lfs pull lfs
|
|
|
|
# Start running the builds scripts
|
|
- cmake --version
|
|
- "cmake -V -P .gitlab/ci/config/gitlab_ci_setup.cmake"
|
|
- "ctest -VV -S .gitlab/ci/ctest_configure.cmake"
|
|
|
|
script:
|
|
- "ctest -VV -S .gitlab/ci/ctest_build.cmake"
|
|
- ccache -s
|
|
|
|
.ascent_test:
|
|
stage: test
|
|
variables:
|
|
SCHEDULER_PARAMETERS: -P CSC331 -W 1:00 -nnodes 1 -alloc_flags gpudefault
|
|
CTEST_MAX_PARALLELISM: 8
|
|
# Tests errors to address due to different env/arch in Ascent
|
|
# Refer to issue: https://gitlab.kitware.com/vtk/vtk-m/-/issues/652
|
|
CTEST_EXCLUSIONS: >-
|
|
UnitTestMathSERIAL
|
|
UnitTestMathCUDA
|
|
UnitTestSerialDeviceAdapter
|
|
UnitTestAverageByKeySERIAL
|
|
UnitTestKeysSERIAL
|
|
UnitTestWorkletReduceByKeySERIAL
|
|
RegressionTestAmrArraysSERIAL
|
|
RegressionTestAmrArraysCUDA
|
|
|
|
before_script:
|
|
# Prep the environment
|
|
- module purge
|
|
- module load ${JOB_MODULES}
|
|
|
|
script:
|
|
- "jsrun -n1 -r1 -a1 -g1 -c7 ctest -VV -S .gitlab/ci/ctest_test.cmake || test_output=$?"
|
|
- ctest -VV -S .gitlab/ci/ctest_test_submit.cmake
|
|
- $(exit $test_output)
|