Skip to content

Commit 1d70abf

Browse files
authored
Merge pull request #1804 from LLNL/v2025.03.0-RC
Merge v2025.03.0-RC branch to main for release
2 parents 4d7fcba + 76d1edb commit 1d70abf

File tree

1,075 files changed

+55140
-40373
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,075 files changed

+55140
-40373
lines changed

.clang-format

+71-14
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,84 @@
1-
BasedOnStyle : google
1+
BasedOnStyle : LLVM
2+
# Indent formatting
23
IndentWidth : 2
3-
BreakBeforeBraces : Linux
4+
Language: Cpp
5+
UseTab: Never
46
KeepEmptyLinesAtTheStartOfBlocks : true
57
MaxEmptyLinesToKeep : 2
68
AccessModifierOffset : -2
7-
UseTab: Never
9+
# This must be off so that include order in RAJA is preserved
10+
SortIncludes: false
11+
12+
# Alignment of consecutive declarations, assignments etc
13+
AlignConsecutiveAssignments : true
14+
AlignConsecutiveDeclarations : false
15+
AlignConsecutiveMacros : true
16+
AlignTrailingComments : true
17+
18+
# Control curly brace placement
19+
BreakBeforeBraces : Custom
20+
BraceWrapping:
21+
AfterCaseLabel: true
22+
AfterClass: true
23+
AfterControlStatement: true
24+
AfterEnum: true
25+
AfterFunction: true
26+
AfterNamespace: true
27+
AfterObjCDeclaration: false
28+
AfterStruct: true
29+
AfterUnion: true
30+
AfterExternBlock: false
31+
BeforeCatch: true
32+
BeforeElse: true
33+
BeforeLambdaBody: false
34+
IndentBraces: false
35+
SplitEmptyFunction: false
36+
SplitEmptyRecord: false
37+
SplitEmptyNamespace: false
38+
39+
# Pointer alignment
40+
DerivePointerAlignment: false
41+
PointerAlignment: Left
42+
43+
# Single line config
844
AllowShortIfStatementsOnASingleLine : true
9-
ConstructorInitializerAllOnOneLineOrOnePerLine : true
1045
AllowShortFunctionsOnASingleLine : true
1146
AllowShortLoopsOnASingleLine : false
12-
BinPackParameters : false
47+
AllowShortLambdasOnASingleLine : None
48+
PackConstructorInitializers : CurrentLine
49+
AllowAllArgumentsOnNextLine : true
1350
AllowAllParametersOfDeclarationOnNextLine : false
14-
AlignTrailingComments : true
51+
BinPackArguments : true
52+
BinPackParameters : false
53+
ConstructorInitializerAllOnOneLineOrOnePerLine : true
1554
ColumnLimit : 80
16-
PenaltyBreakBeforeFirstCallParameter : 100
17-
PenaltyReturnTypeOnItsOwnLine : 65000
18-
PenaltyBreakString : 10
1955

20-
# These improve formatting results but require clang 3.6/7 or higher
21-
BreakBeforeBinaryOperators : None
22-
AlignAfterOpenBracket: true
23-
BinPackArguments : false
56+
AlignAfterOpenBracket: Align
2457
AlignOperands : true
2558
AlwaysBreakTemplateDeclarations : true
26-
Cpp11BracedListStyle : true
59+
AlwaysBreakAfterDefinitionReturnType : None
60+
PenaltyReturnTypeOnItsOwnLine : 10000
61+
BreakBeforeBinaryOperators : None
62+
63+
# Indents
64+
IndentCaseLabels: true
65+
66+
# Lambda body
67+
LambdaBodyIndentation : Signature
68+
69+
SeparateDefinitionBlocks : Always
2770

71+
# Space before/after settings
72+
SpaceAfterTemplateKeyword: false
73+
SpaceBeforeCpp11BracedList: true
74+
SpaceBeforeCtorInitializerColon: true
75+
SpaceBeforeInheritanceColon: true
76+
SpaceBeforeRangeBasedForLoopColon: true
77+
SpaceInEmptyBlock: false
78+
SpacesBeforeTrailingComments: 2
79+
SpacesInAngles: false
80+
SpacesInCStyleCastParentheses: false
81+
SpacesInContainerLiterals: false
82+
SpacesInConditionalStatement: false
83+
SpacesInParentheses: false
84+
SpacesInSquareBrackets: false

.github/ISSUE_TEMPLATE/bug_report.md

+25
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.
+22
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/workflows/build.yml

+74
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
on: push
2+
name: Build
3+
jobs:
4+
build_docker:
5+
strategy:
6+
matrix:
7+
target: [gcc12_debug, gcc13, clang13, clang14_debug, 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+
- args:
44+
BUILD_SHARED_LIBS=On
45+
CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=On
46+
- args: BUILD_SHARED_LIBS=Off
47+
48+
runs-on: windows-latest
49+
steps:
50+
- uses: actions/checkout@v2
51+
with:
52+
submodules: recursive
53+
## ====================================
54+
## Config and build action
55+
- uses: threeal/cmake-action@v1.3.0
56+
with:
57+
build-dir: build
58+
options:
59+
ENABLE_WARNINGS_AS_ERRORS=Off
60+
BLT_CXX_STD=""
61+
CMAKE_CXX_STANDARD=17
62+
CMAKE_BUILD_TYPE=Release
63+
${{ matrix.shared.args }}
64+
run-build: true
65+
build-args: '--parallel 16'
66+
## ====================================
67+
## Print the contents of the test directory in the build space (debugging)
68+
## - run: |
69+
## dir -r D:\a\RAJA\RAJA\build\test
70+
## ====================================
71+
## Run tests action
72+
- uses: threeal/ctest-action@v1.1.0
73+
with:
74+
build-config: Debug

.gitlab-ci.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ stages:
7575
include:
7676
- local: '.gitlab/custom-jobs-and-variables.yml'
7777
- project: 'radiuss/radiuss-shared-ci'
78-
ref: 'v2024.06.0'
78+
ref: 'v2024.12.0'
7979
file: 'pipelines/${CI_MACHINE}.yml'
8080
- artifact: '${CI_MACHINE}-jobs.yml'
8181
job: 'generate-job-lists'
@@ -104,7 +104,7 @@ include:
104104
file: 'id_tokens.yml'
105105
# [Optional] checks preliminary to running the actual CI test
106106
- project: 'radiuss/radiuss-shared-ci'
107-
ref: 'v2024.06.0'
107+
ref: 'v2024.12.0'
108108
file: 'utilities/preliminary-ignore-draft-pr.yml'
109109
# pipelines subscribed by the project
110110
- local: '.gitlab/subscribed-pipelines.yml'

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

+10-7
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
###############################################################################
2-
# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC and RADIUSS
2+
# Copyright (c) 2016-25, Lawrence Livermore National Security, LLC and RADIUSS
33
# project contributors. See the RAJA/LICENSE file for details.
44
#
55
# SPDX-License-Identifier: (MIT)
@@ -21,7 +21,7 @@ variables:
2121
# Project specific variants for ruby
2222
PROJECT_RUBY_VARIANTS: "~shared +openmp +vectorization +tests"
2323
# Project specific deps for ruby
24-
PROJECT_RUBY_DEPS: "^blt@develop "
24+
PROJECT_RUBY_DEPS:
2525

2626
# Poodle
2727
# Arguments for top level allocation
@@ -31,7 +31,7 @@ variables:
3131
# Project specific variants for poodle
3232
PROJECT_POODLE_VARIANTS: "~shared +openmp +vectorization +tests"
3333
# Project specific deps for poodle
34-
PROJECT_POODLE_DEPS: "^blt@develop "
34+
PROJECT_POODLE_DEPS:
3535

3636
# Corona
3737
# Arguments for top level allocation
@@ -41,7 +41,7 @@ variables:
4141
# Project specific variants for corona
4242
PROJECT_CORONA_VARIANTS: "~shared ~openmp +vectorization +tests"
4343
# Project specific deps for corona
44-
PROJECT_CORONA_DEPS: "^blt@develop "
44+
PROJECT_CORONA_DEPS:
4545

4646
# Tioga
4747
# Arguments for top level allocation
@@ -51,16 +51,16 @@ variables:
5151
# Project specific variants for corona
5252
PROJECT_TIOGA_VARIANTS: "~shared +openmp +vectorization +tests"
5353
# Project specific deps for corona
54-
PROJECT_TIOGA_DEPS: "^blt@develop "
54+
PROJECT_TIOGA_DEPS:
5555

5656
# Lassen and Butte use a different job scheduler (spectrum lsf) that does not
5757
# allow pre-allocation the same way slurm does.
5858
# Arguments for job level allocation
59-
LASSEN_JOB_ALLOC: "1 -W 40 -q pci"
59+
LASSEN_JOB_ALLOC: "1 -W 45 -q pci"
6060
# Project specific variants for lassen
6161
PROJECT_LASSEN_VARIANTS: "~shared +openmp +vectorization +tests cuda_arch=70"
6262
# Project specific deps for lassen
63-
PROJECT_LASSEN_DEPS: "^blt@develop "
63+
PROJECT_LASSEN_DEPS:
6464

6565
# Configuration shared by build and test jobs specific to this project.
6666
# Not all configuration can be shared. Here projects can fine tune the
@@ -70,6 +70,9 @@ variables:
7070
artifacts:
7171
reports:
7272
junit: junit.xml
73+
name: "${CI_PROJECT_NAME}-${CI_MACHINE}-${CI_JOB_NAME}-${CI_PIPELINE_ID}"
74+
paths:
75+
- ./*.cmake
7376

7477
.reproducer_vars:
7578
script:

.gitlab/jobs/corona.yml

+8-6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
#############################################################################
2-
# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC
2+
# Copyright (c) 2016-25, 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)
@@ -26,14 +26,16 @@
2626
# ${PROJECT_<MACHINE>_DEPS} in the extra jobs. There is no reason not to fully
2727
# describe the spec here.
2828

29-
rocmcc_5_7_0_hip_desul_atomics:
29+
rocmcc_5_7_1_hip_desul_atomics:
3030
variables:
31-
SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@=5.7.0 ^hip@5.7.0 ^blt@develop"
31+
SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@=5.7.1 ^hip@5.7.1"
3232
extends: .job_on_corona
3333

34-
clang_19_0_0_sycl_gcc_10_3_1_rocmcc_5_7_1_hip:
34+
clang_20_0_0_sycl_gcc_10_3_1_rocmcc_6_0_2_hip:
3535
variables:
36-
SPEC: " ~shared +sycl ~openmp +tests %clang@=19.0.0 cxxflags==\"-w -fsycl -fsycl-unnamed-lambda -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx906\" ^blt@develop"
37-
MODULE_LIST: "rocm/5.7.1"
36+
SPEC: " ~shared +sycl ~openmp +tests %clang@=20.0.0 cxxflags==\"-w -fsycl -fsycl-unnamed-lambda -fsycl-targets=amdgcn-amd-amdhsa -Xsycl-target-backend --offload-arch=gfx906\""
37+
MODULE_LIST: "rocm/6.0.2"
38+
SYCL_PATH: "/usr/WS2/raja-dev/clang_sycl_730cd3a5275f_hip_gcc10.3.1_rocm6.0.2/"
39+
LD_LIBRARY_PATH: "${SYCL_PATH}/lib:${SYCL_PATH}/lib64:${LD_LIBRARY_PATH}"
3840
extends: .job_on_corona
3941

0 commit comments

Comments
 (0)