Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/develop' into feature/burmark1/g…
Browse files Browse the repository at this point in the history
…pu_stream
  • Loading branch information
MrBurmark committed Jul 10, 2023
2 parents f667e93 + a644486 commit 5517fc0
Show file tree
Hide file tree
Showing 360 changed files with 4,429 additions and 6,713 deletions.
15 changes: 13 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,5 +1,16 @@
.cache
.idea
*.sync-conflict-*
*.pyc
*.o
*.a
*.exe
build*/
install*/
*.gch
/*.sublime-*
/build/
/build_*/
/build-*/
/install/
/install_*/
/install-*/
/Debug/
17 changes: 14 additions & 3 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,8 @@

# We define the following GitLab pipeline variables:
variables:
GITHUB_PROJECT_NAME: "RAJAPerf"
GITHUB_PROJECT_ORG: "LLNL"
# Use the umdev service user to run CI. This prevents from running pipelines as
# an actual user.
LLNL_SERVICE_USER: umdev
Expand All @@ -35,6 +37,11 @@ variables:
# We build the projects in the CI clone directory.
# TODO: add a clean-up mechanism
BUILD_ROOT: ${CI_PROJECT_DIR}
# Set the build-and-test command.
BUILD_AND_TEST_CMD: "./scripts/gitlab/build_and_test.sh"
# Override the list of branch that will skip the "draft PR test".
# Add protected branches here. Defaults to "develop main master".
# ALWAYS_RUN_LIST: "develop main"

# We organize the CI on Gitlab in sub-pipelines. Each sub-pipeline corresponds
# to a test phase on a given machine.
Expand All @@ -50,13 +57,17 @@ stages:
include:
- local: '.gitlab/custom-jobs-and-variables.yml'
- project: 'radiuss/radiuss-shared-ci'
ref: v2022.09.0
ref: v2023.03.0rc
file: '${CI_MACHINE}-build-and-test.yml'
- local: '.gitlab/${CI_MACHINE}-build-and-test-extra.yml'
strategy: depend
forward:
pipeline_variables: true

# pipelines subscribed by the project
include:
- local: .gitlab/subscribed-pipelines.yml
# checks preliminary to running the actual CI test (optional)
#- project: 'radiuss/radiuss-shared-ci'
# ref: v2023.03.0rc
# file: 'preliminary-ignore-draft-pr.yml'
# pipelines subscribed by the project
- local: '.gitlab/subscribed-pipelines.yml'
4 changes: 2 additions & 2 deletions .gitlab/corona-build-and-test-extra.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@ variables:
INCLUDED_FILE_CANNOT_BE_EMPTY: "True"

# INFO: This job is activated in RAJA CI, but we don't use desul atomics here
#rocm_5_1_1_clang_13_0_0_desul_atomics:
#rocmcc_5_1_1_hip_desul_atomics:
# variables:
# SPEC: "+rocm~openmp +desul amdgpu_target=gfx906 %clang@13.0.0 ^blt@develop ^hip@5.1.1"
# SPEC: "+rocm~openmp +desul amdgpu_target=gfx906 %rocmcc@5.1.1 ^blt@develop ^hip@5.1.1"
# extends: .build_and_test_on_corona
12 changes: 11 additions & 1 deletion .gitlab/custom-jobs-and-variables.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,14 +26,24 @@ variables:

# Corona
# Arguments for top level allocation
CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--time-limit=60m --nodes=1"
CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1"
# Arguments for job level allocation
CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=30m --nodes=1"
# Project specific variants for corona
PROJECT_CORONA_VARIANTS: "~openmp "
# Project specific deps for corona
PROJECT_CORONA_DEPS: "^blt@develop "

# Tioga
# Arguments for top level allocation
TIOGA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1"
# Arguments for job level allocation
TIOGA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1"
# Project specific variants for corona
PROJECT_TIOGA_VARIANTS: "~openmp"
# Project specific deps for corona
PROJECT_TIOGA_DEPS: "^blt@develop "

# Lassen and Butte use a different job scheduler (spectrum lsf) that does not
# allow pre-allocation the same way slurm does.
# Arguments for job level allocation
Expand Down
22 changes: 17 additions & 5 deletions .gitlab/lassen-build-and-test-extra.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,14 @@ ibm_clang_9_0_0_gcc_8_3_1:
extends: .build_and_test_on_lassen
allow_failure: true

# Overriding shared spec: Longer allocation + Allow failures
ibm_clang_9_0_0_gcc_8_3_1_cuda_10_1_168:
variables:
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}"
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 60"
extends: .build_and_test_on_lassen
allow_failure: true

# Overriding shared spec: Extra flags
gcc_8_3_1:
variables:
Expand Down Expand Up @@ -55,28 +63,32 @@ xl_16_1_1_12_gcc_8_3_1:
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 50"
extends: .build_and_test_on_lassen

# Overriding shared spec: Longer allocation + Allow failures
ibm_clang_9_0_0_gcc_8_3_1_cuda_10_1_168:
# Overriding shared spec: Longer allocation + Extra flags
xl_16_1_1_12_gcc_7_3_1_cuda_10_1_168:
variables:
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}"
SPEC: "${PROJECT_LASSEN_VARIANTS} +cuda %xl@16.1.1.12 cxxflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-7.3.1 -qthreaded -std=c++14 -O3 -qstrict -qxlcompatmacros -qlanglvl=extended0x -qalias=noansi -qhot -qsmp=omp -qnoeh -qsuppress=1500-029 -qsuppress=1500-036\" cflags==\"--gcc-toolchain=/usr/tce/packages/gcc/gcc-7.3.1\" cuda_arch=70 ^cuda@10.1.168 ${PROJECT_LASSEN_DEPS}"
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 60"
extends: .build_and_test_on_lassen
script:
- |
echo -e "\e[31mDeactivated spec !\e[0m"
echo -e "\e[31m${SPEC}\e[0m"
echo -e "\e[31mRAJA won’t build with Cuda < 11.1.0 due to a known issue.\e[0m"
- exit 1
allow_failure: true

# Overriding shared spec: Extra flags + Longer allocation + Allow failure
xl_16_1_1_12_cuda_11_1_0:
variables:
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 ${PROJECT_LASSEN_DEPS}"
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 60"
allow_failure: true
extends: .build_and_test_on_lassen

# Overriding shared spec: Extra flags + Longer allocation + Allow failure
xl_16_1_1_12_gcc_8_3_1_cuda_11_1_0:
variables:
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 ${PROJECT_LASSEN_DEPS}"
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 60"
allow_failure: true
extends: .build_and_test_on_lassen


Expand Down
5 changes: 5 additions & 0 deletions .gitlab/subscribed-pipelines.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,11 @@ corona-build-and-test:
CI_MACHINE: "corona"
extends: [.build-and-test]

tioga-build-and-test:
variables:
CI_MACHINE: "tioga"
extends: [.build-and-test]

lassen-build-and-test:
variables:
CI_MACHINE: "lassen"
Expand Down
39 changes: 39 additions & 0 deletions .gitlab/tioga-build-and-test-extra.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
###############################################################################
# Copyright (c) 2017-23, Lawrence Livermore National Security, LLC
# and RAJA Performance Suite project contributors.
# See the RAJAPerf/LICENSE file for details.
#
# SPDX-License-Identifier: (BSD-3-Clause)
#############################################################################

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

# No overridden jobs so far.

############
# 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.

# With GitLab CI, included files cannot be empty.
variables:
INCLUDED_FILE_CANNOT_BE_EMPTY: "True"

# INFO: This job is activated in RAJA CI, but we don't use desul atomics here
#rocmcc_5_2_3_hip_desul_atomics:
# variables:
# SPEC: "~shared +rocm ~openmp +desul +tests amdgpu_target=gfx90a %rocmcc@5.2.3 ^hip@5.2.3 ^blt@develop"
# extends: .build_and_test_on_tioga
#
# INFO: This job is activated in RAJA CI, but we may not want to run openmp here
#rocmcc_5_2_3_hip_openmp:
# variables:
# SPEC: "~shared +rocm +openmp +tests amdgpu_target=gfx90a %rocmcc@5.2.3 ^hip@5.2.3 ^blt@develop"
# extends: .build_and_test_on_tioga
39 changes: 39 additions & 0 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
# .readthedocs.yml
# Read the Docs configuration file
# See https://docs.readthedocs.io/en/stable/config-file/v2.html for details

# Required
version: 2

# Set the version of Python and other tools you might need
build:
os: ubuntu-22.04
tools:
python: "3.11"

##
## Code for debugging directory structure in readthedocs
## to fix broken links, etc.
##
# Print tree
#build:
# os: ubuntu-20.04
# apt_packages:
# - tree
# tools:
# python: "3.7"
# jobs:
# post_build:
# - tree -J

# Build documentation in the docs/ directory with Sphinx
sphinx:
configuration: docs/conf.py

# Optionally build docs in add'l formats such as PDF and ePub
#formats: all

# Set requirements needed to build the docs
python:
install:
- requirements: docs/requirements.txt
2 changes: 1 addition & 1 deletion .uberenv_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
"spack_branch": "v0.19.0",
"spack_activate" : {},
"spack_configs_path": "tpl/RAJA/scripts/radiuss-spack-configs",
"spack_packages_path": "scripts/spack_packages",
"spack_packages_path": "tpl/RAJA/scripts/radiuss-spack-configs/packages",
"spack_concretizer": "clingo",
"spack_setup_clingo": false
}
4 changes: 4 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -200,3 +200,7 @@ add_subdirectory(src)
if (RAJA_PERFSUITE_ENABLE_TESTS)
add_subdirectory(test)
endif()

if (RAJA_PERFSUITE_ENABLE_DOCUMENTATION)
add_subdirectory(docs)
endif ()
Loading

0 comments on commit 5517fc0

Please sign in to comment.