Skip to content

Commit b66b9d7

Browse files
authored
Merge pull request #509 from LLNL/task/rc-v2025.03.0
Release Candidate v2025.03.0
2 parents 6e81aa5 + 251712a commit b66b9d7

752 files changed

Lines changed: 7552 additions & 3262 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
5+
---
6+
7+
**Describe the bug**
8+
9+
A clear and concise description of what the bug is:
10+
11+
**To Reproduce**
12+
13+
Steps to reproduce the behavior:
14+
15+
**Expected behavior**
16+
17+
A clear and concise description of what you expected to happen:
18+
19+
**Compilers & Libraries (please complete the following information):**
20+
- Compiler & version: [e.g. GCC 4.9.3]:
21+
- CUDA version (if applicable):
22+
23+
**Additional context**
24+
25+
Add any other context about the problem here.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
5+
---
6+
7+
**Is your feature request related to a problem? Please describe.**
8+
9+
A clear and concise description of what the problem is.
10+
11+
**Describe the solution you'd like**
12+
13+
A clear and concise description of what you want to happen.
14+
15+
**Describe alternatives you've considered**
16+
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
21+
Add any other context or information about the feature request here.
22+

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Summary (Write a short headline summary of PR)
1+
# Summary
22

33
- This PR is a (refactoring, bugfix, feature, something else)
44
- It does the following (modify list as needed):

.github/workflows/build.yml

Lines changed: 77 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
on: push
2+
name: Build
3+
jobs:
4+
build_docker:
5+
strategy:
6+
matrix:
7+
target: [gcc12, gcc13, clang13, clang15, rocm6, rocm6_desul, intel2024, intel2024_debug, intel2024_sycl]
8+
runs-on: ubuntu-latest
9+
steps:
10+
- run: |
11+
sudo rm -rf /usr/share/dotnet
12+
sudo rm -rf /usr/local/lib/android
13+
sudo rm -rf /opt/ghc
14+
sudo rm -rf /opt/hostedtoolcache/CodeQL
15+
sudo docker image prune --all --force
16+
- uses: actions/checkout@v2
17+
with:
18+
submodules: recursive
19+
- uses: docker/setup-buildx-action@v3
20+
- uses: docker/build-push-action@v6
21+
with:
22+
target: ${{ matrix.target }}
23+
build_mac:
24+
runs-on: macos-latest
25+
steps:
26+
- uses: actions/checkout@v2
27+
with:
28+
submodules: recursive
29+
- uses: threeal/cmake-action@v1.3.0
30+
with:
31+
build-dir: build
32+
options:
33+
CMAKE_CXX_STANDARD=14
34+
ENABLE_OPENMP=Off
35+
CMAKE_BUILD_TYPE=Release
36+
run-build: true
37+
build-args: '--parallel 16'
38+
- uses: threeal/ctest-action@v1.1.0
39+
build_windows:
40+
strategy:
41+
matrix:
42+
shared:
43+
## ====================================
44+
## Shared library build generated undefined symbol errors that are not
45+
## understood -RDH
46+
## - args:
47+
## BUILD_SHARED_LIBS=On
48+
## CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=On
49+
- args: BUILD_SHARED_LIBS=Off
50+
51+
runs-on: windows-latest
52+
steps:
53+
- uses: actions/checkout@v2
54+
with:
55+
submodules: recursive
56+
## ====================================
57+
## Config and build action
58+
- uses: threeal/cmake-action@v1.3.0
59+
with:
60+
build-dir: build
61+
options:
62+
ENABLE_WARNINGS_AS_ERRORS=Off
63+
BLT_CXX_STD=c++17
64+
CMAKE_BUILD_TYPE=Release
65+
PERFSUITE_RUN_SHORT_TEST=On
66+
${{ matrix.shared.args }}
67+
run-build: true
68+
build-args: '--parallel 16'
69+
## ====================================
70+
## Print the contents of the test directory in the build space (debugging)
71+
## - run: |
72+
## dir -r D:\a\RAJA\RAJA\build\test
73+
## ====================================
74+
## Run tests action
75+
- uses: threeal/ctest-action@v1.1.0
76+
with:
77+
build-config: Debug

.gitlab-ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ stages:
7272
include:
7373
- local: '.gitlab/custom-jobs-and-variables.yml'
7474
- project: 'radiuss/radiuss-shared-ci'
75-
ref: 'v2024.06.0'
75+
ref: 'v2024.12.0'
7676
file: 'pipelines/${CI_MACHINE}.yml'
7777
- artifact: '${CI_MACHINE}-jobs.yml'
7878
job: 'generate-job-lists'
@@ -85,7 +85,7 @@ include:
8585
file: 'id_tokens.yml'
8686
# [Optional] checks preliminary to running the actual CI test
8787
#- project: 'radiuss/radiuss-shared-ci'
88-
# ref: 'v2024.06.0'
88+
# ref: 'v2024.12.0'
8989
# file: 'utilities/preliminary-ignore-draft-pr.yml'
9090
# pipelines subscribed by the project
9191
- local: '.gitlab/subscribed-pipelines.yml'

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

Lines changed: 21 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
###############################################################################
2-
# Copyright (c) 2017-24, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2017-25, Lawrence Livermore National Security, LLC
33
# and RAJA Performance Suite project contributors.
44
# See the RAJAPerf/LICENSE file for details.
55
#
@@ -15,7 +15,7 @@ variables:
1515

1616
# Ruby
1717
# Arguments for top level allocation
18-
RUBY_SHARED_ALLOC: "--exclusive --reservation=ci --time=40 --nodes=1"
18+
RUBY_SHARED_ALLOC: "--exclusive --reservation=ci --time=45 --nodes=1"
1919
# Arguments for job level allocation
2020
# Note: We repeat the reservation, necessary when jobs are manually re-triggered.
2121
RUBY_JOB_ALLOC: "--reservation=ci --nodes=1"
@@ -26,7 +26,7 @@ variables:
2626

2727
# Poodle
2828
# Arguments for top level allocation
29-
POODLE_SHARED_ALLOC: "--exclusive --time=40 --nodes=1"
29+
POODLE_SHARED_ALLOC: "--exclusive --time=45 --nodes=1"
3030
# Arguments for job level allocation
3131
POODLE_JOB_ALLOC: "--nodes=1"
3232
# Project specific variants for poodle
@@ -36,7 +36,7 @@ variables:
3636

3737
# Corona
3838
# Arguments for top level allocation
39-
CORONA_SHARED_ALLOC: "--exclusive --time-limit=12m --nodes=1 -o per-resource.count=2"
39+
CORONA_SHARED_ALLOC: "--exclusive --time-limit=25m --nodes=1 -o per-resource.count=2"
4040
# Arguments for job level allocation
4141
CORONA_JOB_ALLOC: "--nodes=1 --begin-time=+5s"
4242
# Project specific variants for corona
@@ -46,7 +46,7 @@ variables:
4646

4747
# Tioga
4848
# Arguments for top level allocation
49-
TIOGA_SHARED_ALLOC: "--queue=pci --exclusive --time-limit=26m --nodes=1 -o per-resource.count=2"
49+
TIOGA_SHARED_ALLOC: "--queue=pci --exclusive --time-limit=31m --nodes=1 -o per-resource.count=2"
5050
# Arguments for job level allocation
5151
TIOGA_JOB_ALLOC: "--nodes=1 --begin-time=+5s"
5252
# Project specific variants for tioga
@@ -57,7 +57,7 @@ variables:
5757
# Lassen and Butte use a different job scheduler (spectrum lsf) that does not
5858
# allow pre-allocation the same way slurm does.
5959
# Arguments for job level allocation
60-
LASSEN_JOB_ALLOC: "1 -W 20 -q pci"
60+
LASSEN_JOB_ALLOC: "1 -W 25 -q pci"
6161
# Project specific variants for lassen
6262
PROJECT_LASSEN_VARIANTS: "~shared +openmp cuda_arch=70"
6363
# Project specific deps for lassen
@@ -71,3 +71,18 @@ variables:
7171
artifacts:
7272
reports:
7373
junit: junit.xml
74+
name: "${CI_PROJECT_NAME}-${CI_MACHINE}-${CI_JOB_NAME}-${CI_PIPELINE_ID}"
75+
paths:
76+
- ./*.cmake
77+
78+
.reproducer_vars:
79+
script:
80+
- |
81+
echo -e "
82+
# Required variables \n
83+
export MODULE_LIST=\"${MODULE_LIST}\" \n
84+
export SPEC=\"${SPEC//\"/\\\"}\" \n
85+
# Allow to set job script for debugging (only this differs from CI) \n
86+
export DEBUG_MODE=true \n
87+
# Using the CI build cache is optional and requires a token. Set it like so: \n
88+
# export REGISTRY_TOKEN=\"<your token here>\" \n"

.gitlab/jobs/corona.yml

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
###############################################################################
2-
# Copyright (c) 2017-24, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2017-25, Lawrence Livermore National Security, LLC
33
# and RAJA Performance Suite project contributors.
44
# See the RAJAPerf/LICENSE file for details.
55
#
@@ -9,9 +9,7 @@
99
# Override reproducer section to define project specific variables.
1010
.corona_reproducer_vars:
1111
script:
12-
- |
13-
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
14-
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
12+
- !reference [.reproducer_vars, script]
1513

1614
########################
1715
# Overridden shared jobs
@@ -29,6 +27,10 @@
2927
# ${PROJECT_<MACHINE>_DEPS} in the extra jobs. There is no reason not to fully
3028
# describe the spec here.
3129

32-
# With GitLab CI, included files cannot be empty.
33-
variables:
34-
INCLUDED_FILE_CANNOT_BE_EMPTY: "True"
30+
clang_20_0_0_sycl_gcc_10_3_1_rocmcc_6_0_2_hip:
31+
variables:
32+
SPEC: " ~shared +sycl ~openmp tests=basic %clang@=20.0.0 cxxflags==\"-w -fsycl -fsycl-unnamed-lambda -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx906\" ^blt@develop"
33+
MODULE_LIST: "rocm/6.0.2"
34+
SYCL_PATH: "/usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/"
35+
LD_LIBRARY_PATH: "${SYCL_PATH}/lib:${SYCL_PATH}/lib64:${LD_LIBRARY_PATH}"
36+
extends: .job_on_corona

.gitlab/jobs/lassen.yml

Lines changed: 15 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
###############################################################################
2-
# Copyright (c) 2017-24, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2017-25, Lawrence Livermore National Security, LLC
33
# and RAJA Performance Suite project contributors.
44
# See the RAJAPerf/LICENSE file for details.
55
#
@@ -9,9 +9,7 @@
99
# Override reproducer section to define project specific variables.
1010
.lassen_reproducer_vars:
1111
script:
12-
- |
13-
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
14-
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
12+
- !reference [.reproducer_vars, script]
1513

1614
########################
1715
# Overridden shared jobs
@@ -20,14 +18,7 @@
2018
# We keep ${PROJECT_<MACHINE>_VARIANTS} and ${PROJECT_<MACHINE>_DEPS} So that
2119
# the comparison with the original job is easier.
2220

23-
# Overriding shared spec: Longer allocation + extra flags
24-
xl_2022_08_19_gcc_8_3_1_cuda_11_2_0:
25-
variables:
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.2.0+allow-unsupported-compilers ${PROJECT_LASSEN_DEPS}"
27-
MODULE_LIST: "cuda/11.2.0"
28-
LASSEN_JOB_ALLOC: "1 -W 60 -q pci"
29-
extends: .job_on_lassen
30-
21+
# No jobs overridden
3122

3223
############
3324
# Extra jobs
@@ -38,21 +29,21 @@ xl_2022_08_19_gcc_8_3_1_cuda_11_2_0:
3829

3930
gcc_8_3_1:
4031
variables:
41-
SPEC: " ~shared +openmp %gcc@=8.3.1 ${PROJECT_LASSEN_DEPS}"
32+
SPEC: " ~shared +openmp %gcc@=8.3.1 ^blt@develop"
4233
extends: .job_on_lassen
4334

44-
gcc_8_3_1_cuda_11_5_0_ats_disabled:
35+
gcc_8_3_1_cuda_11_7_0_ats_disabled:
4536
extends: .job_on_lassen
4637
variables:
47-
SPEC: " ~shared +openmp +cuda %gcc@=8.3.1 cuda_arch=70 ^cuda@11.5.0+allow-unsupported-compilers ${PROJECT_LASSEN_DEPS}"
48-
MODULE_LIST: "cuda/11.5.0"
38+
SPEC: " ~shared +openmp +cuda %gcc@=8.3.1 cuda_arch=70 ^cuda@11.7.0+allow-unsupported-compilers ^blt@develop"
39+
MODULE_LIST: "cuda/11.7.0"
4940
LASSEN_JOB_ALLOC: "1 --atsdisable -W 30 -q pci"
5041

51-
gcc_8_3_1_cuda_11_5_0_ats_disabled_mpi:
42+
gcc_8_3_1_cuda_11_7_0_ats_disabled_mpi:
5243
extends: .job_on_lassen
5344
variables:
54-
SPEC: " ~shared +openmp +cuda +mpi %gcc@=8.3.1 cuda_arch=70 ^cuda@11.5.0+allow-unsupported-compilers ^spectrum-mpi ${PROJECT_LASSEN_DEPS}"
55-
MODULE_LIST: "cuda/11.5.0"
45+
SPEC: " ~shared +openmp +cuda +mpi %gcc@=8.3.1 cuda_arch=70 ^cuda@11.7.0+allow-unsupported-compilers ^spectrum-mpi ^blt@develop"
46+
MODULE_LIST: "cuda/11.7.0"
5647
LASSEN_JOB_ALLOC: "1 --atsdisable -W 30 -q pci"
5748

5849
##########
@@ -61,7 +52,7 @@ gcc_8_3_1_cuda_11_5_0_ats_disabled_mpi:
6152

6253
clang_13_0_1_libcpp:
6354
variables:
64-
SPEC: " ~shared +openmp %clang@=13.0.1 cflags==\"-DGTEST_HAS_CXXABI_H_=0\" cxxflags==\"-stdlib=libc++ -DGTEST_HAS_CXXABI_H_=0\" ${PROJECT_LASSEN_DEPS}"
55+
SPEC: " ~shared +openmp %clang@=13.0.1 cflags==\"-DGTEST_HAS_CXXABI_H_=0\" cxxflags==\"-stdlib=libc++ -DGTEST_HAS_CXXABI_H_=0\" ^blt@develop"
6556
extends: .job_on_lassen
6657

6758
#clang_14_0_5_asan:
@@ -71,8 +62,7 @@ clang_13_0_1_libcpp:
7162
# LSAN_OPTIONS: "suppressions=${CI_PROJECT_DIR}/tpl/RAJA/suppressions.asan"
7263
# extends: .job_on_lassen
7364

74-
# Activated in RAJA, but we don't use desul atomics here
75-
#gcc_8_3_1_cuda_10_1_168_desul_atomics:
76-
# variables:
77-
# SPEC: "+openmp +cuda +desul %gcc@=8.3.1 cuda_arch=70 cuda_arch=70 ^cuda@10.1.243+allow-unsupported-compilers ${PROJECT_LASSEN_DEPS}"
78-
# extends: .job_on_lassen
65+
clang_16_0_6_omptarget:
66+
variables:
67+
SPEC: " ~shared +openmp +omptarget %clang@=16.0.6.cuda.11.8.0.gcc.11.2.1 ^blt@develop"
68+
extends: .job_on_lassen

0 commit comments

Comments
 (0)