forked from LLNL/Umpire
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'LLNL:develop' into develop
- Loading branch information
Showing
486 changed files
with
3,124 additions
and
16,957 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,68 @@ | ||
on: push | ||
name: Build | ||
jobs: | ||
build_docker: | ||
strategy: | ||
matrix: | ||
target: [gcc, clang, hip, cuda, sycl, intel] | ||
runs-on: ubuntu-latest | ||
steps: | ||
- run: | | ||
sudo rm -rf /usr/share/dotnet | ||
sudo rm -rf /usr/local/lib/android | ||
sudo rm -rf /opt/ghc | ||
sudo rm -rf /opt/hostedtoolcache/CodeQL | ||
sudo docker image prune --all --force | ||
- uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
- uses: docker/setup-buildx-action@v3 | ||
- uses: docker/build-push-action@v6 | ||
with: | ||
target: ${{ matrix.target }} | ||
build_mac: | ||
runs-on: macos-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
- uses: threeal/cmake-action@v1.3.0 | ||
with: | ||
build-dir: build | ||
options: | ||
ENABLE_WARNINGS_AS_ERRORS=Off | ||
UMPIRE_ENABLE_DEVELOPER_DEFAULTS=On | ||
UMPIRE_ENABLE_DEVELOPER_BENCHMARKS=On | ||
CMAKE_BUILD_TYPE=Release | ||
run-build: true | ||
build-args: '--parallel 16' | ||
- uses: threeal/ctest-action@v1.1.0 | ||
build_windows: | ||
strategy: | ||
matrix: | ||
shared: | ||
- args: | ||
BUILD_SHARED_LIBS=On | ||
CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=On | ||
- args: BUILD_SHARED_LIBS=Off | ||
|
||
runs-on: windows-latest | ||
steps: | ||
- uses: actions/checkout@v2 | ||
with: | ||
submodules: recursive | ||
- uses: threeal/cmake-action@v1.3.0 | ||
with: | ||
build-dir: build | ||
options: | ||
ENABLE_WARNINGS_AS_ERRORS=Off | ||
UMPIRE_ENABLE_FILESYSTEM=On | ||
UMPIRE_ENABLE_TOOLS=Off | ||
UMPIRE_ENABLE_DEVELOPER_BENCHMARKS=On | ||
UMPIRE_ENABLE_BENCHMARKS=Off | ||
BLT_CXX_STD="" | ||
CMAKE_CXX_STANDARD=17 | ||
CMAKE_BUILD_TYPE=Release | ||
${{ matrix.shared.args }} | ||
run-build: true | ||
build-args: '--parallel 16' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,51 +1,84 @@ | ||
############################################################################### | ||
# Copyright (c) 2022, Lawrence Livermore National Security, LLC and RADIUSS | ||
# Copyright (c) 2022-23, Lawrence Livermore National Security, LLC and RADIUSS | ||
# project contributors. See the COPYRIGHT file for details. | ||
# | ||
# SPDX-License-Identifier: (MIT) | ||
############################################################################### | ||
|
||
# We define the following GitLab pipeline variables: | ||
variables: | ||
|
||
# On LLNL's ruby, this pipeline creates only one allocation shared among jobs | ||
# in order to save time and resources. This allocation has to be uniquely named | ||
# so that we are sure to retrieve it and avoid collisions. | ||
ALLOC_NAME: ${CI_PROJECT_NAME}_ci_${CI_PIPELINE_ID} | ||
|
||
# Ruby | ||
# Arguments for top level allocation | ||
RUBY_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --partition=pdebug --time=10 --nodes=1" | ||
RUBY_SHARED_ALLOC: "--exclusive --reservation=ci --time=10 --nodes=2" | ||
# Arguments for job level allocation | ||
RUBY_BUILD_AND_TEST_JOB_ALLOC: "--overlap --time=10 --nodes=1" | ||
# Note: We repeat the reservation, necessary when jobs are manually re-triggered. | ||
RUBY_JOB_ALLOC: "--reservation=ci --overlap --nodes=1" | ||
# Project specific variants for ruby | ||
PROJECT_RUBY_VARIANTS: "+fortran " | ||
PROJECT_RUBY_VARIANTS: "~shared +fortran +tools tests=basic " | ||
# Project specific deps for ruby | ||
PROJECT_RUBY_DEPS: "" | ||
|
||
# Poodle | ||
# Arguments for top level allocation | ||
POODLE_SHARED_ALLOC: "--exclusive --partition=pdebug --time=8 --nodes=1" | ||
# Arguments for job level allocation | ||
POODLE_JOB_ALLOC: "--overlap --nodes=1" | ||
# Project specific variants for poodle | ||
PROJECT_POODLE_VARIANTS: "~shared +fortran +tools tests=basic" | ||
# Project specific deps for poodle | ||
PROJECT_POODLE_DEPS: "" | ||
|
||
# Corona | ||
# Arguments for top level allocation | ||
CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--time-limit=15m --nodes=1" | ||
CORONA_SHARED_ALLOC: "--exclusive --time-limit=12m --nodes=1" | ||
# Arguments for job level allocation | ||
CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=10m --nodes=1" | ||
CORONA_JOB_ALLOC: "--nodes=1 --begin-time=+5s" | ||
# Project specific variants for corona | ||
PROJECT_CORONA_VARIANTS: "+fortran " | ||
PROJECT_CORONA_VARIANTS: "~shared +fortran +device_alloc tests=basic " | ||
# Project specific deps for corona | ||
PROJECT_CORONA_DEPS: "^blt@develop" | ||
PROJECT_CORONA_DEPS: "" | ||
|
||
# Tioga | ||
# Arguments for top level allocation | ||
TIOGA_SHARED_ALLOC: "--queue=pci --exclusive --time-limit=15m --nodes=1" | ||
# Arguments for job level allocation | ||
TIOGA_JOB_ALLOC: "--nodes=1 --begin-time=+5s" | ||
# Project specific variants for tioga | ||
PROJECT_TIOGA_VARIANTS: "~shared +fortran +device_alloc tests=basic " | ||
# Project specific deps for tioga | ||
PROJECT_TIOGA_DEPS: "" | ||
|
||
# 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 | ||
LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 18" | ||
LASSEN_JOB_ALLOC: "1 -W 10 -q pci" | ||
# Project specific variants for lassen | ||
PROJECT_LASSEN_VARIANTS: "+fortran " | ||
PROJECT_LASSEN_VARIANTS: "~shared +fortran +tools tests=basic " | ||
# Project specific deps for lassen | ||
PROJECT_LASSEN_DEPS: "" | ||
|
||
# Configuration shared by build and test jobs specific to this project. | ||
# Not all configuration can be shared, here is here projects can fine tune the | ||
# Not all configuration can be shared. Here projects can fine tune the | ||
# CI behavior. | ||
.custom_build_and_test: | ||
# See Umpire for an example (export junit test reports). | ||
.custom_job: | ||
artifacts: | ||
reports: | ||
junit: junit.xml | ||
|
||
.reproducer_vars: | ||
script: | ||
- | | ||
echo -e " | ||
# Required variables \n | ||
export MODULE_LIST=\"${MODULE_LIST}\" \n | ||
export SPEC=\"${SPEC//\"/\\\"}\" \n | ||
# Allow to set job script for debugging (only this differs from CI) \n | ||
export DEBUG_MODE=true \n | ||
# Using the CI build cache is optional and requires a token. Set it like so: \n | ||
# export REGISTRY_TOKEN=\"<your token here>\" \n" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.