Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v0.13.0 RC #267

Merged
merged 14 commits into from
Jun 13, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 4 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ stages:
include:
- local: '.gitlab/custom-jobs-and-variables.yml'
- project: 'radiuss/radiuss-shared-ci'
ref: 'v2023.12.0'
ref: 'v2024.04.0'
file: 'pipelines/${CI_MACHINE}.yml'
- artifact: '${CI_MACHINE}-jobs.yml'
job: 'generate-job-lists'
Expand All @@ -82,9 +82,11 @@ stages:
pipeline_variables: true

include:
- project: 'lc-templates/id_tokens'
file: 'id_tokens.yml'
# [Optional] checks preliminary to running the actual CI test
#- project: 'radiuss/radiuss-shared-ci'
# ref: 'v2023.12.0'
# ref: 'v2024.04.0'
# file: 'utilities/preliminary-ignore-draft-pr.yml'
# pipelines subscribed by the project
- local: '.gitlab/subscribed-pipelines.yml'
15 changes: 13 additions & 2 deletions .gitlab/custom-jobs-and-variables.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@ variables:
# Arguments for top level allocation
POODLE_SHARED_ALLOC: "--exclusive --partition=pdebug --time=10 --nodes=1"
# Arguments for job level allocation
# Note: We repeat the reservation, necessary when jobs are manually re-triggered.
POODLE_JOB_ALLOC: "--overlap --nodes=1"
# Project specific variants for poodle
PROJECT_POODLE_VARIANTS: ""
Expand All @@ -46,7 +45,7 @@ variables:

# Tioga
# Arguments for top level allocation
TIOGA_SHARED_ALLOC: "--exclusive --time-limit=20m --nodes=1"
TIOGA_SHARED_ALLOC: "--queue=pci --exclusive --time-limit=20m --nodes=1"
# Arguments for job level allocation
TIOGA_JOB_ALLOC: "--nodes=1 --begin-time=+5s"
# Project specific variants for tioga
Expand All @@ -71,3 +70,15 @@ variables:
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"
7 changes: 3 additions & 4 deletions .gitlab/jobs/corona.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,9 @@
##############################################################################

# Override reproducer section to define project specific variables.
.corona_reproducer_vars: &corona_reproducer_vars
- |
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
.corona_reproducer_vars:
script:
- !reference [.reproducer_vars, script]

########################
# Overridden shared jobs
Expand Down
7 changes: 3 additions & 4 deletions .gitlab/jobs/lassen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,9 @@
##############################################################################

# Override reproducer section to define project specific variables.
.lassen_reproducer_vars: &lassen_reproducer_vars
- |
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
.lassen_reproducer_vars:
script:
- !reference [.reproducer_vars, script]

########################
# Overridden shared jobs
Expand Down
9 changes: 4 additions & 5 deletions .gitlab/jobs/poodle.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,10 @@
# SPDX-License-Identifier: BSD-3-Clause
###############################################################################

# Override reproducer section to define projet specific variables.
.poodle_reproducer_vars: &poodle_reproducer_vars
- |
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
# Override reproducer section to define project specific variables.
.poodle_reproducer_vars:
script:
- !reference [.reproducer_vars, script]

########################
# Overridden shared jobs
Expand Down
9 changes: 4 additions & 5 deletions .gitlab/jobs/ruby.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,10 @@
# SPDX-License-Identifier: BSD-3-Clause
###############################################################################

# Override reproducer section to define projet specific variables.
.poodle_reproducer_vars: &poodle_reproducer_vars
- |
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
# Override reproducer section to define project specific variables.
.ruby_reproducer_vars:
script:
- !reference [.reproducer_vars, script]

########################
# Overridden shared jobs
Expand Down
7 changes: 3 additions & 4 deletions .gitlab/jobs/tioga.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,9 @@
##############################################################################

# Override reproducer section to define project specific variables.
.tioga_reproducer_vars: &tioga_reproducer_vars
- |
echo -e "export MODULE_LIST=\"${MODULE_LIST}\""
echo -e "export SPEC=\"${SPEC//\"/\\\"}\""
.tioga_reproducer_vars:
script:
- !reference [.reproducer_vars, script]

########################
# Overridden shared jobs
Expand Down
2 changes: 1 addition & 1 deletion .uberenv_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
"package_final_phase": "initconfig",
"package_source_dir": "../..",
"spack_url": "https://github.com/spack/spack.git",
"spack_branch": "develop-2024-01-21",
"spack_branch": "develop-2024-05-26",
"spack_activate": {},
"spack_configs_path": "scripts/radiuss-spack-configs",
"spack_packages_path": ["scripts/radiuss-spack-configs/packages", "scripts/spack_packages/packages"],
Expand Down
4 changes: 2 additions & 2 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,8 @@ cmake_minimum_required(VERSION 3.18)
##########################################################################

project(CARE
LANGUAGES CXX
VERSION 0.12.0)
LANGUAGES C CXX
VERSION 0.13.0)

include(${PROJECT_SOURCE_DIR}/cmake/Setup.cmake)

Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[comment]: # (SPDX-License-Identifier: BSD-3-Clause)
[comment]: # (#################################################################)

# CARE v0.12.0
# CARE v0.13.0

CARE: CHAI and RAJA Extensions
===============================
Expand Down
6 changes: 6 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,12 @@ in this file.

The format of this file is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/).

## [Version 0.13.0] - Release date 2024-06-11

### Added
- Alias for execution policy specificially for kernels with reductions
- Chunked loop policies

## [Version 0.12.0] - Release date 2024-03-11

### Added
Expand Down
21 changes: 10 additions & 11 deletions cmake/SetupMacros.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -69,25 +69,24 @@ macro(care_find_package)

## parse the arguments to the macro
cmake_parse_arguments(
arg "${options}" "${singleValuedArgs}" "${multiValuedArgs}" ${ARGN})
care_arg "${options}" "${singleValuedArgs}" "${multiValuedArgs}" ${ARGN})

if(NOT DEFINED arg_NAME)
if(NOT DEFINED care_arg_NAME)
message(FATAL_ERROR "NAME is a required parameter for the care_find_package macro.")
endif()

string(TOUPPER ${arg_NAME} _name_upper)

find_package(${arg_NAME} QUIET NO_DEFAULT_PATH PATHS ${${_name_upper}_DIR})
set(${_name_upper}_FOUND ${${arg_NAME}_FOUND})
string(TOUPPER ${care_arg_NAME} care_name_upper)
find_package(${care_arg_NAME} QUIET NO_DEFAULT_PATH PATHS ${${care_name_upper}_DIR})
set(${care_name_upper}_FOUND ${${care_arg_NAME}_FOUND})

if(${arg_REQUIRED} AND NOT ${${_name_upper}_FOUND})
message(FATAL_ERROR "Could not find ${arg_NAME}. Set ${_name_upper}_DIR to the install location of ${arg_NAME}.")
if(${care_arg_REQUIRED} AND NOT ${${care_name_upper}_FOUND})
message(FATAL_ERROR "Could not find ${care_arg_NAME}. Set ${care_name_upper}_DIR to the install location of ${care_arg_NAME}.")
endif()

unset(_name_upper)
unset(care_name_upper)

if(${arg_TARGETS})
care_convert_to_system_includes(TARGETS ${arg_TARGETS} RECURSIVE)
if(${care_arg_TARGETS})
care_convert_to_system_includes(TARGETS ${care_arg_TARGETS} RECURSIVE)
endif()

endmacro()
22 changes: 0 additions & 22 deletions configs/lc/hip/rocm-3.6-43-20200704_clang11.0.0.cmake

This file was deleted.

20 changes: 0 additions & 20 deletions configs/lc/hip/rznevada.cmake

This file was deleted.

28 changes: 0 additions & 28 deletions configs/lc/hip/rzwhamo.cmake

This file was deleted.

3 changes: 1 addition & 2 deletions configs/lc/toss_4_x86_64_ib/clang.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,8 @@ set(COMPILER_BASE "/usr/tce/packages/clang/clang-14.0.6-magic" CACHE PATH "")
set(CMAKE_C_COMPILER "${COMPILER_BASE}/bin/clang" CACHE PATH "")
set(CMAKE_CXX_COMPILER "${COMPILER_BASE}/bin/clang++" CACHE PATH "")

set(GCC_HOME "/usr/tce/packages/gcc/gcc-10.3.1-magic" CACHE PATH "")
set(GCC_HOME "/usr/tce/packages/gcc/gcc-12.1.1-magic" CACHE PATH "")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --gcc-toolchain=${GCC_HOME}" CACHE STRING "")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --gcc-toolchain=${GCC_HOME}" CACHE STRING "")

set(BLT_EXPORT_THIRDPARTY OFF CACHE BOOL "")

19 changes: 19 additions & 0 deletions configs/lc/toss_4_x86_64_ib/clang_tsan.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
##############################################################################
# Copyright (c) 2024, Lawrence Livermore National Security, LLC and CARE
# project contributors. See the CARE LICENSE file for details.
#
# SPDX-License-Identifier: BSD-3-Clause
##############################################################################

set(COMPILER_BASE "/usr/tce/packages/clang/clang-14.0.6-magic" CACHE PATH "")
set(CMAKE_C_COMPILER "${COMPILER_BASE}/bin/clang" CACHE PATH "")
set(CMAKE_CXX_COMPILER "${COMPILER_BASE}/bin/clang++" CACHE PATH "")

set(GCC_HOME "/usr/tce/packages/gcc/gcc-12.1.1-magic" CACHE PATH "")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --gcc-toolchain=${GCC_HOME} -fsanitize=thread -g" CACHE STRING "")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --gcc-toolchain=${GCC_HOME} -fsanitize=thread -g" CACHE STRING "")
set(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -fsanitize=thread" CACHE STRING "")

set(ENABLE_OPENMP ON CACHE BOOL "")
set(BLT_EXPORT_THIRDPARTY OFF CACHE BOOL "")

Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@
# SPDX-License-Identifier: BSD-3-Clause
##############################################################################

set(COMPILER_BASE "/usr/tce/packages/clang/clang-14.0.4" CACHE PATH "")
set(CMAKE_C_COMPILER "${COMPILER_BASE}/bin/clang" CACHE PATH "")
set(CMAKE_CXX_COMPILER "${COMPILER_BASE}/bin/clang++" CACHE PATH "")
set(COMPILER_BASE "/usr/tce/packages/intel/intel-2022.1.0-magic" CACHE PATH "")
set(CMAKE_C_COMPILER "${COMPILER_BASE}/bin/icx" CACHE PATH "")
set(CMAKE_CXX_COMPILER "${COMPILER_BASE}/bin/icpx" CACHE PATH "")

set(GCC_HOME "/usr/tce/packages/gcc/gcc-10.2.1/rh" CACHE PATH "")
set(GCC_HOME "/usr/tce/packages/gcc/gcc-12.1.1-magic" CACHE PATH "")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} --gcc-toolchain=${GCC_HOME}" CACHE STRING "")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} --gcc-toolchain=${GCC_HOME}" CACHE STRING "")

Expand Down
17 changes: 17 additions & 0 deletions configs/lc/toss_4_x86_64_ib_cray/amdclang.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
##############################################################################
# Copyright (c) 2020-24, Lawrence Livermore National Security, LLC and CARE
# project contributors. See the CARE LICENSE file for details.
#
# SPDX-License-Identifier: BSD-3-Clause
##############################################################################

set(COMPILER_BASE "/usr/tce/packages/rocmcc/rocmcc-6.1.0-magic" CACHE PATH "")
set(CMAKE_C_COMPILER "${COMPILER_BASE}/bin/amdclang" CACHE PATH "")
set(CMAKE_CXX_COMPILER "${COMPILER_BASE}/bin/amdclang++" CACHE PATH "")

set(ENABLE_HIP ON CACHE BOOL "Enable Hip")
set(ROCM_PATH "/usr/tce/packages/rocmcc/rocmcc-6.1.0-magic" CACHE PATH "")
set(CMAKE_HIP_ARCHITECTURES "gfx942:xnack+" CACHE STRING "")
set(AMDGPU_TARGETS "gfx942:xnack+" CACHE STRING "")

set(CARE_ENABLE_IMPLICIT_CONVERSIONS OFF CACHE BOOL "Enable implicit conversions")
4 changes: 2 additions & 2 deletions docs/sphinx/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,9 @@
# built documents.
#
# The short X.Y version.
version = '0.12'
version = '0.13'
# The full version, including alpha/beta/rc tags.
release = '0.12.0'
release = '0.13.0'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
9 changes: 9 additions & 0 deletions examples/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,12 @@ blt_add_executable(NAME ScanLoopExample
target_include_directories(ScanLoopExample PRIVATE ${PROJECT_SOURCE_DIR}/src)
target_include_directories(ScanLoopExample PRIVATE ${PROJECT_BINARY_DIR}/include)

blt_add_executable(NAME RaceConditionsExample
SOURCES RaceConditions.cpp
DEPENDS_ON ${care_depends})

target_include_directories(RaceConditionsExample PRIVATE ${PROJECT_SOURCE_DIR}/src)
target_include_directories(RaceConditionsExample PRIVATE ${PROJECT_BINARY_DIR}/include)

target_compile_options(RaceConditionsExample PRIVATE -fsanitize=thread -g)
target_link_options(RaceConditionsExample PRIVATE -fsanitize=thread)
Loading
Loading