Skip to content

Commit e330b25

Browse files
authored
Merge pull request #1502 from LLNL/v2023.06.0-RC
v2023.06.0 RC
2 parents 3774f51 + e269764 commit e330b25

File tree

1,027 files changed

+16312
-13908
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

1,027 files changed

+16312
-13908
lines changed

.gitlab-ci.yml

+16-4
Original file line numberDiff line numberDiff line change
@@ -24,9 +24,11 @@
2424
# We define the following GitLab pipeline variables:
2525
variables:
2626
MP_BRANCH: "develop"
27+
GITHUB_PROJECT_NAME: "RAJA"
28+
GITHUB_PROJECT_ORG: "LLNL"
2729
# Use a service user to run CI. This prevents from running pipelines as an
2830
# actual user.
29-
LLNL_SERVICE_USER: ""
31+
LLNL_SERVICE_USER: rajasa
3032
# Use a service user workspace. Solves permission issues, stores everything
3133
# at the same location whoever triggers a pipeline.
3234
# CUSTOM_CI_BUILDS_DIR: ""
@@ -35,12 +37,18 @@ variables:
3537
# We build the projects in the CI clone directory.
3638
# TODO: add a clean-up mechanism
3739
BUILD_ROOT: ${CI_PROJECT_DIR}
40+
# Set the build-and-test command.
41+
BUILD_AND_TEST_CMD: "./scripts/gitlab/build_and_test.sh"
42+
# Override the list of branch that will skip the "draft PR test".
43+
# Add protected branches here. Defaults to "develop main master".
44+
ALWAYS_RUN_LIST: "develop main"
3845

3946
# We organize the build-and-test stage in sub-pipelines. Each sub-pipeline
4047
# corresponds to a test batch on a given machine.
4148

4249
# High level stages
4350
stages:
51+
- machine-checks
4452
- build-and-test
4553
- multi_project
4654

@@ -51,7 +59,7 @@ stages:
5159
include:
5260
- local: '.gitlab/custom-jobs-and-variables.yml'
5361
- project: 'radiuss/radiuss-shared-ci'
54-
ref: v2022.09.0
62+
ref: v2023.03.1
5563
file: '${CI_MACHINE}-build-and-test.yml'
5664
- local: '.gitlab/${CI_MACHINE}-build-and-test-extra.yml'
5765
strategy: depend
@@ -74,6 +82,10 @@ trigger-rajaperf:
7482
branch: develop
7583
strategy: depend
7684

77-
# pipelines subscribed by the project
7885
include:
79-
- local: .gitlab/subscribed-pipelines.yml
86+
# checks preliminary to running the actual CI test (optional)
87+
- project: 'radiuss/radiuss-shared-ci'
88+
ref: v2023.03.1
89+
file: 'preliminary-ignore-draft-pr.yml'
90+
# pipelines subscribed by the project
91+
- local: '.gitlab/subscribed-pipelines.yml'

.gitlab/corona-build-and-test-extra.yml

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#############################################################################
2-
# Copyright (c) 2016-22, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC
33
# and RAJA project contributors. See the RAJA/LICENSE file for details.
44
#
55
# SPDX-License-Identifier: (BSD-3-Clause)
@@ -21,8 +21,8 @@
2121
# ${PROJECT_<MACHINE>_DEPS} in the extra jobs. There is no reason not to fully
2222
# describe the spec here.
2323

24-
rocm_5_1_1_clang_13_0_0_desul_atomics:
24+
rocmcc_5_4_1_hip_desul_atomics:
2525
variables:
26-
SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %clang@13.0.0 ^hip@5.1.1 ^blt@develop"
26+
SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@5.4.1 ^hip@5.4.1 ^blt@develop"
2727
extends: .build_and_test_on_corona
2828

.gitlab/custom-jobs-and-variables.yml

+17-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
###############################################################################
2-
# Copyright (c) 2016-22, Lawrence Livermore National Security, LLC and RADIUSS
3-
# project contributors. See the COPYRIGHT file for details.
2+
# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC and RADIUSS
3+
# project contributors. See the RAJA/LICENSE file for details.
44
#
55
# SPDX-License-Identifier: (MIT)
66
###############################################################################
@@ -14,34 +14,43 @@ variables:
1414

1515
# Ruby
1616
# Arguments for top level allocation
17-
RUBY_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --partition=pdebug --time=60 --nodes=1"
17+
RUBY_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --reservation=ci --qos=ci_ruby --time=60 --nodes=2"
1818
# Arguments for job level allocation
19-
RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=45 --nodes=1"
19+
RUBY_BUILD_AND_TEST_JOB_ALLOC: "--reservation=ci --qos=ci_ruby --time=45 --nodes=1"
2020
# Project specific variants for ruby
2121
PROJECT_RUBY_VARIANTS: "~shared +openmp +tests"
2222
# Project specific deps for ruby
2323
PROJECT_RUBY_DEPS: ""
2424

2525
# Corona
2626
# Arguments for top level allocation
27-
CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--time-limit=60m --nodes=1"
27+
CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1"
2828
# Arguments for job level allocation
29-
CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1"
29+
CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1 --begin-time=+5s"
3030
# Project specific variants for corona
3131
PROJECT_CORONA_VARIANTS: "~shared ~openmp +tests"
3232
# Project specific deps for corona
3333
PROJECT_CORONA_DEPS: "^blt@develop "
3434

35+
# Tioga
36+
# Arguments for top level allocation
37+
TIOGA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1"
38+
# Arguments for job level allocation
39+
TIOGA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1 --begin-time=+5s"
40+
# Project specific variants for corona
41+
PROJECT_TIOGA_VARIANTS: "~shared ~openmp +tests"
42+
# Project specific deps for corona
43+
PROJECT_TIOGA_DEPS: "^blt@develop "
44+
3545
# Lassen and Butte use a different job scheduler (spectrum lsf) that does not
3646
# allow pre-allocation the same way slurm does.
3747
# Arguments for job level allocation
3848
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 60"
3949
# Project specific variants for lassen
40-
PROJECT_LASSEN_VARIANTS: "~shared +openmp +tests"
50+
PROJECT_LASSEN_VARIANTS: "~shared +openmp +tests cuda_arch=70"
4151
# Project specific deps for lassen
4252
PROJECT_LASSEN_DEPS: ""
4353

44-
4554
# Configuration shared by build and test jobs specific to this project.
4655
# Not all configuration can be shared. Here projects can fine tune the
4756
# CI behavior.
+20-101
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
##############################################################################
2-
# Copyright (c) 2016-22, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC
33
# and RAJA project contributors. See the RAJA/LICENSE file for details.
44
#
55
# SPDX-License-Identifier: (BSD-3-Clause)
@@ -12,80 +12,20 @@
1212
# We keep ${PROJECT_<MACHINE>_VARIANTS} and ${PROJECT_<MACHINE>_DEPS} So that
1313
# the comparison with the original job is easier.
1414

15-
# Overriding shared spec: Allow failures
16-
ibm_clang_9_0_0:
15+
# Overriding shared spec: Longer allocation + extra flags
16+
xl_2022_08_19_gcc_8_3_1_cuda_11_2_0:
1717
variables:
18-
SPEC: " ${PROJECT_LASSEN_VARIANTS} %clang@ibm.9.0.0 ${PROJECT_LASSEN_DEPS}"
19-
extends: .build_and_test_on_lassen
20-
allow_failure: true
21-
22-
# Overriding shared spec: Allow failures
23-
ibm_clang_9_0_0_gcc_8_3_1:
24-
variables:
25-
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}"
26-
extends: .build_and_test_on_lassen
27-
allow_failure: true
28-
29-
# Overriding shared spec: Extra flags
30-
gcc_8_3_1:
31-
variables:
32-
SPEC: " ${PROJECT_LASSEN_VARIANTS} %gcc@8.3.1 cxxflags=\"-finline-functions -finline-limit=20000\" cflags=\"-finline-functions -finline-limit=20000\" ${PROJECT_LASSEN_DEPS}"
33-
extends: .build_and_test_on_lassen
34-
35-
# Overriding shared spec: Longer allocation + Allow failures
36-
pgi_20_4_gcc_8_3_1:
37-
extends: .build_and_test_on_lassen
38-
variables:
39-
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}"
40-
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 80"
41-
allow_failure: true
42-
43-
# Overriding shared spec: Extra flags
44-
xl_16_1_1_12:
45-
variables:
46-
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}"
47-
extends: .build_and_test_on_lassen
48-
49-
# Overriding shared spec: Extra flags
50-
xl_16_1_1_12_gcc_8_3_1:
51-
variables:
52-
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}"
53-
extends: .build_and_test_on_lassen
54-
55-
# Overriding shared spec: Allow failures
56-
ibm_clang_9_0_0_gcc_8_3_1_cuda_10_1_168:
57-
extends: .build_and_test_on_lassen
58-
variables:
59-
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}"
60-
allow_failure: true
61-
62-
# Overriding shared spec: Longer allocation + Extra flags + Allow failure + Updated cuda
63-
xl_16_1_1_12_cuda_11_1_1:
64-
variables:
65-
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 ^cmake@3.14.5 ${PROJECT_LASSEN_DEPS}"
18+
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}"
19+
MODULE_LIST: "cuda/11.2.0"
6620
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 120"
67-
allow_failure: true
6821
extends: .build_and_test_on_lassen
6922

70-
# Overriding shared spec: Deactivated spec. This spec will be removed soon.
71-
xl_16_1_1_12_gcc_8_3_1_cuda_11_0_2:
23+
# Overriding shared spec: Longer allocation + extra flags
24+
xl_2022_08_19_gcc_8_3_1_cuda_11_7_0:
7225
variables:
73-
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 ^cmake@3.14.5 ${PROJECT_LASSEN_DEPS}"
74-
extends: .build_and_test_on_lassen
75-
script:
76-
- |
77-
echo -e "\e[31mDeactivated spec !\e[0m"
78-
echo -e "\e[31m${SPEC}\e[0m"
79-
echo -e "\e[31mRAJA won’t build with Cuda 11.0.2 due to a known issue.\e[0m"
80-
- exit 1
81-
allow_failure: true
82-
83-
# Overriding shared spec: Longer allocation + Extra flags + Allow failure + Updated cuda
84-
xl_16_1_1_12_gcc_8_3_1_cuda_11_1_0:
85-
variables:
86-
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 ^cmake@3.14.5 ${PROJECT_LASSEN_DEPS}"
26+
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}"
27+
MODULE_LIST: "cuda/11.7.0"
8728
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 120"
88-
allow_failure: true
8929
extends: .build_and_test_on_lassen
9030

9131

@@ -96,33 +36,11 @@ xl_16_1_1_12_gcc_8_3_1_cuda_11_1_0:
9636
# ${PROJECT_<MACHINE>_DEPS} in the extra jobs. There is no reason not to fully
9737
# describe the spec here.
9838

99-
##########
100-
# CPU ONLY
101-
##########
102-
103-
clang_14_0_5:
104-
variables:
105-
SPEC: " ~shared +openmp +tests %clang@14.0.5"
106-
extends: .build_and_test_on_lassen
107-
108-
##########
109-
# CUDA
110-
##########
111-
112-
clang_12_0_1_cuda_11_5_0:
113-
variables:
114-
SPEC: " ~shared +openmp +tests +cuda cuda_arch=70 %clang@12.0.1 ^cuda@11.5.0"
115-
extends: .build_and_test_on_lassen
116-
117-
gcc_8_3_1_cuda_11_1_0:
118-
variables:
119-
SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.1.0"
120-
extends: .build_and_test_on_lassen
121-
12239
gcc_8_3_1_cuda_11_5_0_ats_disabled:
12340
extends: .build_and_test_on_lassen
12441
variables:
125-
SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.5.0"
42+
SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.5.0+allow-unsupported-compilers"
43+
MODULE_LIST: "cuda/11.5.0"
12644
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 --atsdisable -W 60"
12745

12846
##########
@@ -131,16 +49,17 @@ gcc_8_3_1_cuda_11_5_0_ats_disabled:
13149

13250
clang_13_0_1_libcpp:
13351
variables:
134-
SPEC: " ~shared +openmp +tests %clang@13.0.1+libcpp"
52+
SPEC: " ~shared +openmp +tests %clang@13.0.1 cflags==\"-DGTEST_HAS_CXXABI_H_=0\" cxxflags==\"-stdlib=libc++ -DGTEST_HAS_CXXABI_H_=0\""
13553
extends: .build_and_test_on_lassen
13654

137-
clang_14_0_5_asan:
138-
variables:
139-
SPEC: " ~shared +openmp +tests %clang@14.0.5 cxxflags=-fsanitize=address"
140-
ASAN_OPTIONS: "detect_leaks=1"
141-
extends: .build_and_test_on_lassen
55+
#clang_14_0_5_asan:
56+
# variables:
57+
# SPEC: " ~shared +openmp +tests %clang@14.0.5 cxxflags==\"-fsanitize=address\" "
58+
# ASAN_OPTIONS: "detect_leaks=1"
59+
# LSAN_OPTIONS: "suppressions=${CI_PROJECT_DIR}/suppressions.asan"
60+
# extends: .build_and_test_on_lassen
14261

143-
gcc_8_3_1_cuda_10_1_168_desul_atomics:
62+
gcc_8_3_1_cuda_10_1_243_desul_atomics:
14463
variables:
145-
SPEC: " ~shared +openmp +tests +cuda +desul %gcc@8.3.1 cuda_arch=70 ^cuda@10.1.168"
64+
SPEC: " ~shared +openmp +tests +cuda +desul %gcc@8.3.1 cuda_arch=70 ^cuda@10.1.243+allow-unsupported-compilers"
14665
extends: .build_and_test_on_lassen

.gitlab/ruby-build-and-test-extra.yml

+14-26
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
##############################################################################
2-
# Copyright (c) 2016-22, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC
33
# and RAJA project contributors. See the RAJA/LICENSE file for details.
44
#
55
# SPDX-License-Identifier: (BSD-3-Clause)
@@ -12,19 +12,7 @@
1212
# We keep ${PROJECT_<MACHINE>_VARIANTS} and ${PROJECT_<MACHINE>_DEPS} So that
1313
# the comparison with the original job is easier.
1414

15-
# Overriding shared config for longer run
16-
gcc_8_1_0:
17-
variables:
18-
SPEC: " ${PROJECT_RUBY_VARIANTS} %gcc@8.1.0 ${PROJECT_RUBY_DEPS}"
19-
RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1"
20-
extends: .build_and_test_on_ruby
21-
22-
# Overriding shared spec: Allow failures
23-
pgi_20_1_gcc_local_8_3_1:
24-
variables:
25-
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}"
26-
extends: .build_and_test_on_ruby
27-
allow_failure: true
15+
# No overridden jobs so far.
2816

2917
############
3018
# Extra jobs
@@ -33,26 +21,26 @@ pgi_20_1_gcc_local_8_3_1:
3321
# ${PROJECT_<MACHINE>_DEPS} in the extra jobs. There is no reason not to fully
3422
# describe the spec here.
3523

36-
clang_9_0_0_openmp_off:
24+
clang_14_0_6_openmp_off:
3725
variables:
38-
SPEC: " ~shared ~openmp +tests %clang@9.0.0"
26+
SPEC: " ~shared ~openmp +tests %clang@14.0.6"
3927
extends: .build_and_test_on_ruby
4028

41-
gcc_8_1_0_openmp_default:
29+
gcc_10_3_1_openmp_default:
4230
variables:
43-
SPEC: " ~shared +tests %gcc@8.1.0"
31+
SPEC: " ~shared +tests %gcc@10.3.1"
4432
RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1"
4533
extends: .build_and_test_on_ruby
4634

47-
icpc_19_1_0:
48-
variables:
49-
SPEC: " ~shared +openmp +tests %intel@19.1.0"
50-
RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=40 --nodes=1"
51-
extends: .build_and_test_on_ruby
52-
5335
# OTHERS
54-
clang_10_0_1_gcc_8_3_1_desul_atomics:
36+
clang_14_0_6_gcc_10_3_1_desul_atomics:
5537
variables:
56-
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"
38+
SPEC: " ~shared +openmp +tests +desul %clang@14.0.6.gcc.10.3.1"
5739
extends: .build_and_test_on_ruby
5840

41+
# Ideally, we want to use this spec, but the build takes too much time...
42+
#intel_oneapi_2022_2_gcc_8_3_1:
43+
# variables:
44+
# SPEC: "~shared +openmp +tests %oneapi@2022.2.gcc.8.3.1"
45+
# RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=90 --nodes=1"
46+
# extends: .build_and_test_on_ruby

0 commit comments

Comments
 (0)