diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 162e262e19..783309eb2e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -1,67 +1,84 @@ ############################################################################### -# Copyright (c) 2016-22, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) ############################################################################### +# DESCRIPTION: ############################################################################### # General GitLab pipelines configurations for supercomputers and Linux clusters # at Lawrence Livermore National Laboratory (LLNL). -# # This entire pipeline is LLNL-specific # -# Important note: This file is a template provided by -# llnl/radiuss-shared-ci. It should not require any change from the project to -# get started but could feature project-specific stages. +# Important note: This file is a template provided by llnl/radiuss-shared-ci. +# Remains to set variable values, change the reference to the radiuss-shared-ci +# repo, opt-in and out optional features. The project can then extend it with +# additional stages. # -# However, each project should provide: +# In addition, each project should copy over and complete: # - .gitlab/custom-jobs-and-variables.yml # - .gitlab/subscribed-pipelines.yml -# - .gitlab/${MACHINE}-build-and-test-extra.yml +# +# The jobs should be specified in a file local to the project, +# - .gitlab/jobs/${CI_MACHINE}.yml +# or generated (see LLNL/Umpire for an example). ############################################################################### # We define the following GitLab pipeline variables: variables: - MP_BRANCH: "develop" - GITHUB_PROJECT_NAME: "RAJA" - GITHUB_PROJECT_ORG: "LLNL" -# Use a service user to run CI. This prevents from running pipelines as an +##### LC GITLAB CONFIGURATION +# Use an LLNL service user to run CI. This prevents from running pipelines as an # actual user. LLNL_SERVICE_USER: rajasa -# Use a service user workspace. Solves permission issues, stores everything +# Use the service user workspace. Solves permission issues, stores everything # at the same location whoever triggers a pipeline. -# CUSTOM_CI_BUILDS_DIR: "" +# CUSTOM_CI_BUILDS_DIR: "/usr/workspace/rajasa/gitlab-runner" # Tells Gitlab to recursively update the submodules when cloning the project. GIT_SUBMODULE_STRATEGY: recursive -# We build the projects in the CI clone directory. -# TODO: add a clean-up mechanism + +##### PROJECT VARIABLES + MP_BRANCH: "develop" +# We build the projects in the CI clone directory (used in +# script/gitlab/build_and_test.sh script). +# TODO: add a clean-up mechanism. BUILD_ROOT: ${CI_PROJECT_DIR} + +##### SHARED_CI CONFIGURATION +# Required information about GitHub repository + GITHUB_PROJECT_NAME: "RAJA" + GITHUB_PROJECT_ORG: "LLNL" # 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" +# Nested variables are allowed and useful to customize the job command. We +# prevent variable expansion so that you can define them at job level. + JOB_CMD: + value: "./scripts/gitlab/build_and_test.sh" + expand: false +# Override the pattern describing branches that will skip the "draft PR filter +# test". Add protected branches here. See default value in +# preliminary-ignore-draft-pr.yml. + ALWAYS_RUN_PATTERN: "^develop$|^main$|^v[0-9.]*-RC$" -# We organize the build-and-test stage in sub-pipelines. Each sub-pipeline +# We organize the build-and-test stage with sub-pipelines. Each sub-pipeline # corresponds to a test batch on a given machine. # High level stages stages: - - machine-checks + - prerequisites - build-and-test - - multi_project + - multi-project -# Template for jobs triggering a build-and-test sub-pipelines: +# Template for jobs triggering a build-and-test sub-pipeline: .build-and-test: stage: build-and-test trigger: include: - local: '.gitlab/custom-jobs-and-variables.yml' - project: 'radiuss/radiuss-shared-ci' - ref: v2023.06.0 - file: '${CI_MACHINE}-build-and-test.yml' - - local: '.gitlab/${CI_MACHINE}-build-and-test-extra.yml' + ref: 'v2023.12.0' + file: 'pipelines/${CI_MACHINE}.yml' + - artifact: '${CI_MACHINE}-jobs.yml' + job: 'generate-job-lists' strategy: depend forward: pipeline_variables: true @@ -72,7 +89,7 @@ stages: # This will prevent from sticking to a branch (here develop). # MP_BRANCH is short for "Multi-Project Branch" and will usually be develop. trigger-rajaperf: - stage: multi_project + stage: multi-project rules: - if: '$CI_COMMIT_BRANCH == "${MP_BRANCH}" || $MULTI_PROJECT == "ON"' #run only if ... variables: @@ -83,9 +100,9 @@ trigger-rajaperf: strategy: depend include: - # checks preliminary to running the actual CI test (optional) + # [Optional] checks preliminary to running the actual CI test - project: 'radiuss/radiuss-shared-ci' - ref: v2023.03.1 - file: 'preliminary-ignore-draft-pr.yml' + ref: 'v2023.12.0' + file: 'utilities/preliminary-ignore-draft-pr.yml' # pipelines subscribed by the project - local: '.gitlab/subscribed-pipelines.yml' diff --git a/.gitlab/custom-jobs-and-variables.yml b/.gitlab/custom-jobs-and-variables.yml index 935f5c23d0..040449be69 100644 --- a/.gitlab/custom-jobs-and-variables.yml +++ b/.gitlab/custom-jobs-and-variables.yml @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC and RADIUSS +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC and RADIUSS # project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (MIT) @@ -14,19 +14,30 @@ variables: # Ruby # Arguments for top level allocation - RUBY_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --reservation=ci --qos=ci_ruby --time=60 --nodes=2" + RUBY_SHARED_ALLOC: "--exclusive --reservation=ci --time=30 --nodes=2" # Arguments for job level allocation - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--reservation=ci --qos=ci_ruby --time=45 --nodes=1" +# Note: We repeat the reservation, necessary when jobs are manually re-triggered. + RUBY_JOB_ALLOC: "--overlap --reservation=ci --nodes=1" # Project specific variants for ruby PROJECT_RUBY_VARIANTS: "~shared +openmp +tests" # Project specific deps for ruby PROJECT_RUBY_DEPS: "" +# Poodle +# Arguments for top level allocation + POODLE_SHARED_ALLOC: "--exclusive --time=40 --nodes=1" +# Arguments for job level allocation + POODLE_JOB_ALLOC: "--overlap --nodes=1" +# Project specific variants for poodle + PROJECT_POODLE_VARIANTS: "~shared +openmp +tests" +# Project specific deps for poodle + PROJECT_POODLE_DEPS: "" + # Corona # Arguments for top level allocation - CORONA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1" + CORONA_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1 -o per-resource.count=2" # Arguments for job level allocation - CORONA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1 --begin-time=+5s" + CORONA_JOB_ALLOC: "--nodes=1 --begin-time=+5s" # Project specific variants for corona PROJECT_CORONA_VARIANTS: "~shared ~openmp +tests" # Project specific deps for corona @@ -34,9 +45,9 @@ variables: # Tioga # Arguments for top level allocation - TIOGA_BUILD_AND_TEST_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1" + TIOGA_SHARED_ALLOC: "--exclusive --time-limit=60m --nodes=1 -o per-resource.count=2" # Arguments for job level allocation - TIOGA_BUILD_AND_TEST_JOB_ALLOC: "--time-limit=45m --nodes=1 --begin-time=+5s" + TIOGA_JOB_ALLOC: "--nodes=1 --begin-time=+5s" # Project specific variants for corona PROJECT_TIOGA_VARIANTS: "~shared ~openmp +tests" # Project specific deps for corona @@ -45,17 +56,17 @@ variables: # 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 60" + LASSEN_JOB_ALLOC: "1 -W 30 -q pci" # Project specific variants for lassen PROJECT_LASSEN_VARIANTS: "~shared +openmp +tests cuda_arch=70" # Project specific deps for lassen - PROJECT_LASSEN_DEPS: "" + PROJECT_LASSEN_DEPS: "^blt@develop " # Configuration shared by build and test jobs specific to this project. # Not all configuration can be shared. Here projects can fine tune the # CI behavior. # See Umpire for an example (export junit test reports). -.custom_build_and_test: +.custom_job: artifacts: reports: junit: junit.xml diff --git a/.gitlab/corona-build-and-test-extra.yml b/.gitlab/jobs/corona.yml similarity index 57% rename from .gitlab/corona-build-and-test-extra.yml rename to .gitlab/jobs/corona.yml index a4ad4ff693..b483bb6ffb 100644 --- a/.gitlab/corona-build-and-test-extra.yml +++ b/.gitlab/jobs/corona.yml @@ -1,16 +1,22 @@ ############################################################################# -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) ############################################################################# +# 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//\"/\\\"}\"" + ######################## # Overridden shared jobs ######################## -# We duplicate the shared jobs description and add necessary changes for RAJA. -# We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} So that -# the comparison with the original job is easier. +# We duplicate the shared jobs description and add necessary changes for this +# project. We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} +# So that the comparison with the original job is easier. # No overridden jobs so far. @@ -21,8 +27,8 @@ # ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully # describe the spec here. -rocmcc_5_5_0_hip_desul_atomics: +rocmcc_5_7_0_hip_desul_atomics: variables: - SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@5.5.0 ^hip@5.5.0 ^blt@develop" - extends: .build_and_test_on_corona + SPEC: " ~shared +rocm ~openmp +tests +desul amdgpu_target=gfx906 %rocmcc@5.7.0 ^hip@5.7.0 ^blt@develop" + extends: .job_on_corona diff --git a/.gitlab/lassen-build-and-test-extra.yml b/.gitlab/jobs/lassen.yml similarity index 57% rename from .gitlab/lassen-build-and-test-extra.yml rename to .gitlab/jobs/lassen.yml index 2e4118df90..4a17ee2f86 100644 --- a/.gitlab/lassen-build-and-test-extra.yml +++ b/.gitlab/jobs/lassen.yml @@ -1,33 +1,32 @@ ############################################################################## -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) ############################################################################## +# 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//\"/\\\"}\"" + ######################## # Overridden shared jobs ######################## -# We duplicate the shared jobs description and add necessary changes for RAJA. -# We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} So that -# the comparison with the original job is easier. +# We duplicate the shared jobs description and add necessary changes for this +# project. We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} +# So that the comparison with the original job is easier. # Overriding shared spec: Longer allocation + extra flags +# Warning: allowed to fail because of a bug in Spack > 0.20.3 xl_2022_08_19_gcc_8_3_1_cuda_11_2_0: variables: - 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}" + 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} ^blt@develop" MODULE_LIST: "cuda/11.2.0" - LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 120" - extends: .build_and_test_on_lassen - -# Overriding shared spec: Longer allocation + extra flags -xl_2022_08_19_gcc_8_3_1_cuda_11_7_0: - variables: - 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.7.0+allow-unsupported-compilers ${PROJECT_LASSEN_DEPS}" - MODULE_LIST: "cuda/11.7.0" - LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 -W 120" - extends: .build_and_test_on_lassen - + LASSEN_JOB_ALLOC: "1 -W 60 -q pci" + extends: .job_on_lassen + allow_failure: true ############ # Extra jobs @@ -38,15 +37,15 @@ xl_2022_08_19_gcc_8_3_1_cuda_11_7_0: gcc_8_3_1_omptask: variables: - SPEC: " ~shared +openmp +omptask +tests %gcc@8.3.1" - extends: .build_and_test_on_lassen + SPEC: " ~shared +openmp +omptask +tests %gcc@8.3.1 ^blt@develop" + extends: .job_on_lassen gcc_8_3_1_cuda_11_5_0_ats_disabled: - extends: .build_and_test_on_lassen + extends: .job_on_lassen variables: - SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.5.0+allow-unsupported-compilers" + SPEC: " ~shared +openmp +tests +cuda %gcc@8.3.1 cuda_arch=70 ^cuda@11.5.0+allow-unsupported-compilers ^blt@develop" MODULE_LIST: "cuda/11.5.0" - LASSEN_BUILD_AND_TEST_JOB_ALLOC: "1 --atsdisable -W 60" + LASSEN_JOB_ALLOC: "1 --atsdisable -W 30 -q pci" ########## # OTHERS @@ -54,17 +53,17 @@ gcc_8_3_1_cuda_11_5_0_ats_disabled: clang_13_0_1_libcpp: variables: - SPEC: " ~shared +openmp +tests %clang@13.0.1 cflags==\"-DGTEST_HAS_CXXABI_H_=0\" cxxflags==\"-stdlib=libc++ -DGTEST_HAS_CXXABI_H_=0\"" - extends: .build_and_test_on_lassen + SPEC: " ~shared +openmp +tests %clang@13.0.1 cflags==\"-DGTEST_HAS_CXXABI_H_=0\" cxxflags==\"-stdlib=libc++ -DGTEST_HAS_CXXABI_H_=0\" ^blt@develop" + extends: .job_on_lassen #clang_14_0_5_asan: # variables: # SPEC: " ~shared +openmp +tests %clang@14.0.5 cxxflags==\"-fsanitize=address\" " # ASAN_OPTIONS: "detect_leaks=1" # LSAN_OPTIONS: "suppressions=${CI_PROJECT_DIR}/suppressions.asan" -# extends: .build_and_test_on_lassen +# extends: .job_on_lassen gcc_8_3_1_cuda_10_1_243_desul_atomics: variables: - SPEC: " ~shared +openmp +tests +cuda +desul %gcc@8.3.1 cuda_arch=70 ^cuda@10.1.243+allow-unsupported-compilers" - extends: .build_and_test_on_lassen + SPEC: " ~shared +openmp +tests +cuda +desul %gcc@8.3.1 cuda_arch=70 ^cuda@10.1.243+allow-unsupported-compilers ^blt@develop" + extends: .job_on_lassen diff --git a/.gitlab/jobs/poodle.yml b/.gitlab/jobs/poodle.yml new file mode 100644 index 0000000000..1b5f86aa4a --- /dev/null +++ b/.gitlab/jobs/poodle.yml @@ -0,0 +1,66 @@ +############################################################################## +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +# and RAJA project contributors. See the RAJA/LICENSE file for details. +# +# 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//\"/\\\"}\"" + +######################## +# Overridden shared jobs +######################## +# We duplicate the shared jobs description and add necessary changes for this +# project. We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} +# So that the comparison with the original job is easier. + +clang_14_0_6: + variables: + SPEC: " ~shared +openmp +omptask +tests %clang@14.0.6 ^blt@develop" + extends: .job_on_poodle + +gcc_10_3_1: + variables: + SPEC: " ~shared +openmp +omptask +tests %gcc@10.3.1 ^blt@develop" + POODLE_JOB_ALLOC: "--time=60 --nodes=1" + extends: .job_on_poodle + +intel_19_1_2_gcc_10_3_1: + variables: + SPEC: " ~shared +openmp +omptask +tests %intel@19.1.2.gcc.10.3.1 ^blt@develop" + POODLE_JOB_ALLOC: "--time=90 --nodes=1" + extends: .job_on_poodle + +intel_2022_1_0: + variables: + SPEC: "${PROJECT_POODLE_VARIANTS} %intel@2022.1.0 ${PROJECT_POODLE_DEPS} ^blt@develop" + allow_failure: true + extends: .job_on_poodle + +############ +# Extra jobs +############ +# We do not recommend using ${PROJECT__VARIANTS} and +# ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully +# describe the spec here. + +clang_14_0_6_openmp_off: + variables: + SPEC: " ~shared ~openmp +tests %clang@14.0.6 ^blt@develop" + extends: .job_on_poodle + +gcc_10_3_1_openmp_default: + variables: + SPEC: " ~shared +tests %gcc@10.3.1 ^blt@develop" + POODLE_JOB_ALLOC: "--time=60 --nodes=1" + extends: .job_on_poodle + +# OTHERS +clang_14_0_6_gcc_10_3_1_desul_atomics: + variables: + SPEC: " ~shared +openmp +tests +desul %clang@14.0.6.gcc.10.3.1 ^blt@develop" + extends: .job_on_poodle diff --git a/.gitlab/jobs/ruby.yml b/.gitlab/jobs/ruby.yml new file mode 100644 index 0000000000..7a42a815e7 --- /dev/null +++ b/.gitlab/jobs/ruby.yml @@ -0,0 +1,66 @@ +############################################################################## +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +# and RAJA project contributors. See the RAJA/LICENSE file for details. +# +# SPDX-License-Identifier: (BSD-3-Clause) +############################################################################## + +# Override reproducer section to define project specific variables. +.ruby_reproducer_vars: &ruby_reproducer_vars + - | + echo -e "export MODULE_LIST=\"${MODULE_LIST}\"" + echo -e "export SPEC=\"${SPEC//\"/\\\"}\"" + +######################## +# Overridden shared jobs +######################## +# We duplicate the shared jobs description and add necessary changes for this +# project. We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} +# So that the comparison with the original job is easier. + +clang_14_0_6: + variables: + SPEC: " ~shared +openmp +omptask +tests %clang@14.0.6 ^blt@develop" + extends: .job_on_ruby + +gcc_10_3_1: + variables: + SPEC: " ~shared +openmp +omptask +tests %gcc@10.3.1 ^blt@develop" + RUBY_JOB_ALLOC: "--time=60 --nodes=1" + extends: .job_on_ruby + +intel_19_1_2_gcc_10_3_1: + variables: + SPEC: " ~shared +openmp +omptask +tests %intel@19.1.2.gcc.10.3.1 ^blt@develop" + RUBY_JOB_ALLOC: "--time=90 --nodes=1" + extends: .job_on_ruby + +intel_2022_1_0: + variables: + SPEC: "${PROJECT_RUBY_VARIANTS} %intel@2022.1.0 ${PROJECT_RUBY_DEPS} ^blt@develop" + allow_failure: true + extends: .job_on_ruby + +############ +# Extra jobs +############ +# We do not recommend using ${PROJECT__VARIANTS} and +# ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully +# describe the spec here. + +clang_14_0_6_openmp_off: + variables: + SPEC: " ~shared ~openmp +tests %clang@14.0.6 ^blt@develop" + extends: .job_on_ruby + +gcc_10_3_1_openmp_default: + variables: + SPEC: " ~shared +tests %gcc@10.3.1 ^blt@develop" + RUBY_JOB_ALLOC: "--time=60 --nodes=1" + extends: .job_on_ruby + +# OTHERS +clang_14_0_6_gcc_10_3_1_desul_atomics: + variables: + SPEC: " ~shared +openmp +tests +desul %clang@14.0.6.gcc.10.3.1 ^blt@develop" + extends: .job_on_ruby diff --git a/.gitlab/tioga-build-and-test-extra.yml b/.gitlab/jobs/tioga.yml similarity index 55% rename from .gitlab/tioga-build-and-test-extra.yml rename to .gitlab/jobs/tioga.yml index a211ea2d8a..a59af625a3 100644 --- a/.gitlab/tioga-build-and-test-extra.yml +++ b/.gitlab/jobs/tioga.yml @@ -1,16 +1,22 @@ ############################################################################# -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) ############################################################################# +# 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//\"/\\\"}\"" + ######################## # Overridden shared jobs ######################## -# We duplicate the shared jobs description and add necessary changes for RAJA. -# We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} So that -# the comparison with the original job is easier. +# We duplicate the shared jobs description and add necessary changes for this +# project. We keep ${PROJECT__VARIANTS} and ${PROJECT__DEPS} +# So that the comparison with the original job is easier. # No overridden jobs so far. @@ -21,12 +27,12 @@ # ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully # describe the spec here. -rocmcc_5_4_3_hip_desul_atomics: +rocmcc_5_7_1_hip_desul_atomics: variables: - SPEC: "~shared +rocm ~openmp +desul +tests amdgpu_target=gfx90a %rocmcc@5.4.3 ^hip@5.4.3 ^blt@develop" - extends: .build_and_test_on_tioga + SPEC: "~shared +rocm ~openmp +desul +tests amdgpu_target=gfx90a %rocmcc@5.7.1 ^hip@5.7.1 ^blt@develop" + extends: .job_on_tioga -rocmcc_5_4_3_hip_openmp: +rocmcc_5_7_1_hip_openmp: variables: - SPEC: "~shared +rocm +openmp +omptask +tests amdgpu_target=gfx90a %rocmcc@5.4.3 ^hip@5.4.3 ^blt@develop" - extends: .build_and_test_on_tioga + SPEC: "~shared +rocm +openmp +omptask +tests amdgpu_target=gfx90a %rocmcc@5.7.1 ^hip@5.7.1 ^blt@develop" + extends: .job_on_tioga diff --git a/.gitlab/ruby-build-and-test-extra.yml b/.gitlab/ruby-build-and-test-extra.yml deleted file mode 100644 index a8cd89a49b..0000000000 --- a/.gitlab/ruby-build-and-test-extra.yml +++ /dev/null @@ -1,61 +0,0 @@ -############################################################################## -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/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__VARIANTS} and ${PROJECT__DEPS} So that -# the comparison with the original job is easier. - -clang_14_0_6: - variables: - SPEC: " ~shared +openmp +omptask +tests %clang@14.0.6" - extends: .build_and_test_on_ruby - -gcc_10_3_1: - variables: - SPEC: " ~shared +openmp +omptask +tests %gcc@10.3.1" - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1" - extends: .build_and_test_on_ruby - -intel_19_1_2_gcc_8_5_0: - variables: - SPEC: " ~shared +openmp +omptask +tests %intel@19.1.2.gcc.8.5.0" - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=90 --nodes=1" - extends: .build_and_test_on_ruby - -############ -# Extra jobs -############ -# We do not recommend using ${PROJECT__VARIANTS} and -# ${PROJECT__DEPS} in the extra jobs. There is no reason not to fully -# describe the spec here. - -clang_14_0_6_openmp_off: - variables: - SPEC: " ~shared ~openmp +tests %clang@14.0.6" - extends: .build_and_test_on_ruby - -gcc_10_3_1_openmp_default: - variables: - SPEC: " ~shared +tests %gcc@10.3.1" - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1" - extends: .build_and_test_on_ruby - -# OTHERS -clang_14_0_6_gcc_10_3_1_desul_atomics: - variables: - SPEC: " ~shared +openmp +tests +desul %clang@14.0.6.gcc.10.3.1" - extends: .build_and_test_on_ruby - -# Ideally, we want to use this spec, but the build takes too much time... -#intel_oneapi_2022_2_gcc_8_3_1: -# variables: -# SPEC: "~shared +openmp +tests %oneapi@2022.2.gcc.8.3.1" -# RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=90 --nodes=1" -# extends: .build_and_test_on_ruby diff --git a/.gitlab/subscribed-pipelines.yml b/.gitlab/subscribed-pipelines.yml index 8e9e34a552..fc96643769 100644 --- a/.gitlab/subscribed-pipelines.yml +++ b/.gitlab/subscribed-pipelines.yml @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC and RADIUSS +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC and RADIUSS # project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (MIT) @@ -8,7 +8,7 @@ # The template job to test whether a machine is up. # Expects CI_MACHINE defined to machine name. .machine-check: - stage: machine-checks + stage: prerequisites tags: [shell, oslic] variables: GIT_STRATEGY: none @@ -29,6 +29,27 @@ # Comment the jobs for machines you don’t need. ### +# One job to generate the job list for all the subpipelines +generate-job-lists: + stage: prerequisites + tags: [shell, oslic] + variables: + RADIUSS_JOBS_PATH: "scripts/radiuss-spack-configs/gitlab/radiuss-jobs" + LOCAL_JOBS_PATH: ".gitlab/jobs" + script: + - cat ${RADIUSS_JOBS_PATH}/ruby.yml ${LOCAL_JOBS_PATH}/ruby.yml > ruby-jobs.yml + - cat ${RADIUSS_JOBS_PATH}/poodle.yml ${LOCAL_JOBS_PATH}/poodle.yml > poodle-jobs.yml + - cat ${RADIUSS_JOBS_PATH}/lassen.yml ${LOCAL_JOBS_PATH}/lassen.yml > lassen-jobs.yml + - cat ${RADIUSS_JOBS_PATH}/corona.yml ${LOCAL_JOBS_PATH}/corona.yml > corona-jobs.yml + - cat ${RADIUSS_JOBS_PATH}/tioga.yml ${LOCAL_JOBS_PATH}/tioga.yml > tioga-jobs.yml + artifacts: + paths: + - ruby-jobs.yml + - poodle-jobs.yml + - lassen-jobs.yml + - corona-jobs.yml + - tioga-jobs.yml + # RUBY ruby-up-check: variables: @@ -38,7 +59,19 @@ ruby-up-check: ruby-build-and-test: variables: CI_MACHINE: "ruby" - needs: [ruby-up-check] + needs: [ruby-up-check, generate-job-lists] + extends: [.build-and-test] + +# POODLE +poodle-up-check: + variables: + CI_MACHINE: "poodle" + extends: [.machine-check] + +poodle-build-and-test: + variables: + CI_MACHINE: "poodle" + needs: [poodle-up-check, generate-job-lists] extends: [.build-and-test] # CORONA @@ -50,7 +83,7 @@ corona-up-check: corona-build-and-test: variables: CI_MACHINE: "corona" - needs: [corona-up-check] + needs: [corona-up-check, generate-job-lists] extends: [.build-and-test] # TIOGA @@ -62,7 +95,7 @@ tioga-up-check: tioga-build-and-test: variables: CI_MACHINE: "tioga" - needs: [tioga-up-check] + needs: [tioga-up-check, generate-job-lists] extends: [.build-and-test] # LASSEN @@ -74,7 +107,5 @@ lassen-up-check: lassen-build-and-test: variables: CI_MACHINE: "lassen" - needs: [lassen-up-check] + needs: [lassen-up-check, generate-job-lists] extends: [.build-and-test] - - diff --git a/.readthedocs.yml b/.readthedocs.yml index be19340f4f..47a35d011f 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -10,6 +10,9 @@ build: os: ubuntu-22.04 tools: python: "3.11" + apt_packages: + - ghostscript + - texlive-full ## ## Code for debugging directory structure in readthedocs diff --git a/.uberenv_config.json b/.uberenv_config.json index f160101d50..65474d1ea1 100644 --- a/.uberenv_config.json +++ b/.uberenv_config.json @@ -4,7 +4,7 @@ "package_final_phase" : "initconfig", "package_source_dir" : "../..", "spack_url": "https://github.com/spack/spack.git", -"spack_branch": "e4s-23.02", +"spack_branch": "develop-2024-01-21", "spack_activate" : {}, "spack_configs_path": "scripts/radiuss-spack-configs", "spack_packages_path": "scripts/radiuss-spack-configs/packages", diff --git a/CMakeLists.txt b/CMakeLists.txt index 4814246f12..e27ced7557 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # SPDX-License-Identifier: (BSD-3-Clause) ############################################################################### @@ -14,9 +14,9 @@ endif() include(CMakeDependentOption) # Set version number -set(RAJA_VERSION_MAJOR 2023) -set(RAJA_VERSION_MINOR 06) -set(RAJA_VERSION_PATCHLEVEL 1) +set(RAJA_VERSION_MAJOR 2024) +set(RAJA_VERSION_MINOR 02) +set(RAJA_VERSION_PATCHLEVEL 0) if (RAJA_LOADED AND (NOT RAJA_LOADED STREQUAL "${RAJA_VERSION_MAJOR}.${RAJA_VERSION_MINOR}.${RAJA_VERSION_PATCHLEVEL}")) message(FATAL_ERROR "You are mixing RAJA versions. Loaded is ${RAJA_LOADED}, expected ${RAJA_VERSION_MAJOR}.${RAJA_VERSION_MINOR}.${RAJA_VERSION_PATCHLEVEL}") @@ -219,19 +219,18 @@ endif () if (RAJA_ENABLE_SYCL) set (RAJA_ENABLE_DESUL_ATOMICS "On") + set (ENABLE_SYCL "On") # Enable SYCL atomics in Desul set (raja_depends ${raja_depends} sycl) endif () -if (RAJA_ENABLE_TBB) - set(raja_depends - ${raja_depends} - tbb) -endif () - message(STATUS "Desul Atomics support is ${RAJA_ENABLE_DESUL_ATOMICS}") if (RAJA_ENABLE_DESUL_ATOMICS) + # NOTE: ENABLE_OPENMP in Desul implies OpenMP OFFLOAD + if (NOT RAJA_ENABLE_TARGET_OPENMP) + set (DESUL_ENABLE_OPENMP Off CACHE BOOL "Disable Desul OpenMP offload atomics to select builtin host atomics") + endif() add_subdirectory(tpl/desul) set(raja_depends ${raja_depends} @@ -320,8 +319,6 @@ endif() install(FILES ${PROJECT_BINARY_DIR}/include/RAJA/config.hpp - include/RAJA/module.modulemap - include/RAJA/module.private.modulemap DESTINATION "include/RAJA/") diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c85ecf2e34..e96fdcbdfa 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,6 @@ [comment]: # (#################################################################) -[comment]: # (Copyright 2016-23, Lawrence Livermore National Security, LLC) +[comment]: # (Copyright 2016-24, Lawrence Livermore National Security, LLC) [comment]: # (and RAJA project contributors. See the RAJA/LICENSE file) [comment]: # (for details.) [comment]: # diff --git a/Dockerfile b/Dockerfile index 64939607b9..769de328e6 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -9,7 +9,7 @@ FROM ghcr.io/rse-ops/gcc-ubuntu-20.04:gcc-7.3.0 AS gcc7.3.0 ENV GTEST_COLOR=1 COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build -RUN cmake -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_TBB=On -DRAJA_DEPRECATED_TESTS=On -DENABLE_OPENMP=On .. && \ +RUN cmake -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_DEPRECATED_TESTS=On -DENABLE_OPENMP=On .. && \ make -j 6 &&\ ctest -T test --output-on-failure && \ cd .. && rm -rf build @@ -18,7 +18,7 @@ FROM ghcr.io/rse-ops/gcc-ubuntu-20.04:gcc-8.1.0 AS gcc8.1.0 ENV GTEST_COLOR=1 COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build -RUN cmake -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_WARNINGS_AS_ERRORS=On -DENABLE_COVERAGE=On -DRAJA_ENABLE_TBB=On -DENABLE_OPENMP=On .. && \ +RUN cmake -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_WARNINGS_AS_ERRORS=On -DENABLE_COVERAGE=On -DENABLE_OPENMP=On .. && \ make -j 6 &&\ ctest -T test --output-on-failure && \ cd .. && rm -rf build @@ -27,7 +27,7 @@ FROM ghcr.io/rse-ops/gcc-ubuntu-20.04:gcc-9.4.0 AS gcc9.4.0 ENV GTEST_COLOR=1 COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build -RUN cmake -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_TBB=On -DRAJA_ENABLE_RUNTIME_PLUGINS=On -DENABLE_OPENMP=On .. && \ +RUN cmake -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_RUNTIME_PLUGINS=On -DENABLE_OPENMP=On .. && \ make -j 6 &&\ ctest -T test --output-on-failure && \ cd .. && rm -rf build @@ -36,7 +36,7 @@ FROM ghcr.io/rse-ops/gcc-ubuntu-20.04:gcc-11.2.0 AS gcc11.2.0 ENV GTEST_COLOR=1 COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build -RUN cmake -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_TBB=On -DRAJA_ENABLE_BOUNDS_CHECK=ON -DENABLE_OPENMP=On .. && \ +RUN cmake -DCMAKE_CXX_COMPILER=g++ -DCMAKE_CXX_COMPILER=g++ -DRAJA_ENABLE_WARNINGS=On -DRAJA_ENABLE_BOUNDS_CHECK=ON -DENABLE_OPENMP=On .. && \ make -j 6 &&\ ctest -T test --output-on-failure && \ cd .. && rm -rf build @@ -46,7 +46,7 @@ ENV GTEST_COLOR=1 COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build RUN . /opt/spack/share/spack/setup-env.sh && export LD_LIBRARY_PATH=/opt/view/lib:$LD_LIBRARY_PATH && \ - cmake -DCMAKE_CXX_COMPILER=clang++ -DRAJA_ENABLE_TBB=On -DENABLE_OPENMP=On .. && \ + cmake -DCMAKE_CXX_COMPILER=clang++ -DENABLE_OPENMP=On .. && \ make -j 6 &&\ ctest -T test --output-on-failure && \ cd .. && rm -rf build @@ -108,7 +108,7 @@ RUN . /opt/spack/share/spack/setup-env.sh && export LD_LIBRARY_PATH=/opt/view/li ## make -j 6 && \ ## cd .. && rm -rf build -FROM ghcr.io/rse-ops/intel-ubuntu-22.04:intel-2022.1.0 AS sycl +FROM ghcr.io/rse-ops/intel-ubuntu-22.04:intel-2023.2.1 AS sycl ENV GTEST_COLOR=1 COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build diff --git a/LICENSE b/LICENSE index 8134a55661..86509c8f98 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2016-2023, Lawrence Livermore National Security, LLC. +Copyright (c) 2016-2024, Lawrence Livermore National Security, LLC. All rights reserved. Redistribution and use in source and binary forms, with or without diff --git a/README.md b/README.md index c2cdd89595..aa42af1a87 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ [comment]: # (#################################################################) -[comment]: # (Copyright 2016-23, Lawrence Livermore National Security, LLC) +[comment]: # (Copyright 2016-24, Lawrence Livermore National Security, LLC) [comment]: # (and RAJA project contributors. See the RAJA/LICENSE file) [comment]: # (for details.) [comment]: # @@ -9,7 +9,7 @@ # RAJA -[![Azure Piepline Build Status](https://dev.azure.com/LLNL-RAJA/RAJA/_apis/build/status/LLNL.RAJA?branchName=develop)](https://dev.azure.com/LLNL-RAJA/RAJA/_build/latest?definitionId=1&branchName=develop) +[![Azure Pipeline Build Status](https://dev.azure.com/LLNL-RAJA/RAJA/_apis/build/status/LLNL.RAJA?branchName=develop)](https://dev.azure.com/LLNL-RAJA/RAJA/_build/latest?definitionId=1&branchName=develop) [![Documentation Status](https://readthedocs.org/projects/raja/badge/?version=develop)](https://raja.readthedocs.io/en/develop/?badge=develop) [![Coverage](https://img.shields.io/codecov/c/github/LLNL/RAJA/develop.svg)](https://codecov.io/gh/LLNL/RAJA) [![Join the chat at https://gitter.im/llnl/raja](https://badges.gitter.im/llnl/raja.svg)](https://gitter.im/llnl/raja?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge) diff --git a/RELEASE b/RELEASE index 78dd7659e7..64037327f3 100644 --- a/RELEASE +++ b/RELEASE @@ -1,8 +1,8 @@ ******************************************************************************* -RAJA: ................................, version 0.14.0 +RAJA: ................................, version 2023.06.1 -Copyright (c) 2016-23, Lawrence Livermore National Security, LLC. +Copyright (c) 2016-24, Lawrence Livermore National Security, LLC. Produced at the Lawrence Livermore National Laboratory. All rights reserved. See details in the RAJA/LICENSE file. diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index d4c291b2de..06b703b3b7 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,5 +1,5 @@ [comment]: # (#################################################################) -[comment]: # (Copyright 2016-23, Lawrence Livermore National Security, LLC) +[comment]: # (Copyright 2016-24, Lawrence Livermore National Security, LLC) [comment]: # (and RAJA project contributors. See the RAJA/LICENSE file) [comment]: # (for details.) [comment]: # @@ -20,6 +20,51 @@ Notable changes include: * Bug fixes/improvements: +Version 2024.02.0 -- Release date 2024-02-14 +============================================ + +This release contains several RAJA improvements and submodule updates. + +Notable changes include: + + * New features / API changes: + * BREAKING CHANGE (ALMOST): The loop_exec and associated policies such as + loop_atomic, loop_reduce, etc. were deprecated in the v2023.06.0 release + (please see the release notes for that version for details). Users + should replace these with `seq_exec` and associated policies for + sequential CPU execution. The code behavior will be identical to what + you observed with `loop_exec`, etc. However, due to a request from + some users with special circumstances, the `loop_*` policies still + exist in this release as type aliases to their `seq_*` analogues. The + `loop_*` policies will be removed in a future release. + * BREAKING CHANGE: RAJA TBB back-end support has been removed. It was + not feature complete and the TBB API has changed so that the code no + longer compiles with newer Intel compilers. Since it doesn't appear + that anyone depends on it, we have removed it. + * An `IndexLayout` concept was added, which allows for accessing elements + of a RAJA `View` via a collection of indicies and use a different + indexing strategy along different dimensions of a multi-dimensional + `View`. Please the RAJA User Guide for more information. + * Add support for SYCL reductions using the new RAJA reduction API. + * Add support for new reduction API for all back-ends in RAJA::launch. + + * Build changes/improvements: + * Update BLT submodule to v0.6.1 and incorporate its new macros for + managing TPL targets in CMake. + * Update camp submodule to v2024.02.0, which contains changes to support + ROCm 6.x compilers. + * Update desul submodule to afbd448. + * Replace internal use of HIP and CUDA platform macros to their newer + versions to support latest compilers. + + * Bug fixes/improvements: + * Change internal memory allocation for HIP to use coarse-grained pinned + memory, which improves performance because it can be cached on a device. + * Fix compilation error resulting from incorrect namespacing of OpenMP + execution policy. + * Several fixes to internal implementaion of Reducers and Operators. + + Version 2023.06.1 -- Release date 2023-08-16 ============================================ @@ -177,7 +222,7 @@ Notable changes include: * A compilation bug was fixed in the new reduction interface support for OpenMP target offload. * An issue was fixed in AVX compiler checking logic for RAJA vectorization - intrinsics capabilities. + intrinsic capabilities. Version 2022.10.1 -- Release date 2022-10-31 @@ -600,7 +645,7 @@ Notable changes include: * New OpenMP execution policies added to support static, dynamic, and guided scheduling. * Added support for const iterators to be used with RAJA scans. - * Support for bitwise and and or reductions have been added. + * Support for bitwise "and" and "or" reductions have been added. * The RAJA::kernel interface has been expanded to allow only segment index arguments used in a lambda to be passed to the lambda. In previous versions of RAJA, every lambda invoked in a kernel had to @@ -608,7 +653,7 @@ Notable changes include: to RAJA::kernel execution templates, even if not all segment indices were used in a lambda. This release still allows that usage pattern. The new capability requires an additional template parameter to be - passed to the RAJA::statement::Lambda type, which identify the segment + passed to the RAJA::statement::Lambda type, which identifies the segment indices that will be passed and in which order. * API Changes: @@ -644,7 +689,7 @@ Notable changes include: eliminate compiler warnings for certain use cases. * Several warnings generated by the MSVC compiler have been eliminated. * A couple of PGI compiler warnings have been removed. - * CMake improvements to make it is easier to use an external camp or + * CMake improvements to make it easier to use an external camp or CUB library with RAJA. * Note that the RAJA tests are undergoing a substantial overhaul. Users, who chose to build and run RAJA tests, should know that many tests @@ -961,7 +1006,7 @@ Major changes include: summarizes available 'statement' types. However, it remains a work-in-progress and expanded documentation with more examples will be available in future releases. - * Documentation of other RAJA features have been expanded and improved in + * Documentation of other RAJA features has been expanded and improved in this release along with additional example codes. Other notable changes include: diff --git a/benchmark/CMakeLists.txt b/benchmark/CMakeLists.txt index 849b74feae..96991afe9c 100644 --- a/benchmark/CMakeLists.txt +++ b/benchmark/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/benchmark/host-device-lambda-benchmark.cpp b/benchmark/host-device-lambda-benchmark.cpp index 5e35059433..33c78e2d8c 100644 --- a/benchmark/host-device-lambda-benchmark.cpp +++ b/benchmark/host-device-lambda-benchmark.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// diff --git a/benchmark/ltimes.cpp b/benchmark/ltimes.cpp index e06696efac..b2fa413b8e 100644 --- a/benchmark/ltimes.cpp +++ b/benchmark/ltimes.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/blt b/blt index 5a792c1775..058b312f8a 160000 --- a/blt +++ b/blt @@ -1 +1 @@ -Subproject commit 5a792c1775e7a7628d84dcde31652a689f1df7b5 +Subproject commit 058b312f8a5ef305e12a4380deaa13d618eff54e diff --git a/cmake/RAJAMacros.cmake b/cmake/RAJAMacros.cmake index 4f12d19832..c412593db7 100644 --- a/cmake/RAJAMacros.cmake +++ b/cmake/RAJAMacros.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -32,10 +32,6 @@ macro(raja_add_executable) list (APPEND arg_DEPENDS_ON sycl) endif () - if (RAJA_ENABLE_TBB) - list (APPEND arg_DEPENDS_ON tbb) - endif () - if (${arg_TEST}) set (_output_dir ${CMAKE_BINARY_DIR}/test) elseif (${arg_REPRODUCER}) @@ -81,10 +77,6 @@ macro(raja_add_plugin_library) list (APPEND arg_DEPENDS_ON sycl) endif () - if (RAJA_ENABLE_TBB) - list (APPEND arg_DEPENDS_ON tbb) - endif () - blt_add_library( NAME ${arg_NAME} SOURCES ${arg_SOURCES} @@ -110,7 +102,7 @@ function(raja_set_failtest TESTNAME) set(test_name ${TESTNAME}) # Chopping off backend from test name - string(REGEX REPLACE "\-Sequential|\-OpenMP|\-OpenMPTarget|\-TBB|\-CUDA|\-HIP" "" test_nobackend ${test_name}) + string(REGEX REPLACE "\-Sequential|\-OpenMP|\-OpenMPTarget|\-CUDA|\-HIP" "" test_nobackend ${test_name}) # Finding test source code if(EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/tests/${test_nobackend}.hpp") @@ -149,7 +141,7 @@ endfunction() macro(raja_add_test) set(options ) - set(singleValueArgs NAME) + set(singleValueArgs NAME NUM_MPI_TASKS NUM_OMP_THREADS) set(multiValueArgs SOURCES DEPENDS_ON) cmake_parse_arguments(arg @@ -167,6 +159,8 @@ macro(raja_add_test) blt_add_test( NAME ${arg_NAME} + NUM_MPI_TASKS ${arg_NUM_MPI_TASKS} + NUM_OMP_THREADS ${arg_NUM_OMP_THREADS} #COMMAND ${TEST_DRIVER} $) COMMAND ${TEST_DRIVER} ${arg_NAME}) @@ -190,7 +184,7 @@ endmacro(raja_add_reproducer) macro(raja_add_benchmark) set(options ) - set(singleValueArgs NAME) + set(singleValueArgs NAME NUM_MPI_TASKS NUM_OMP_THREADS) set(multiValueArgs SOURCES DEPENDS_ON) cmake_parse_arguments(arg @@ -206,5 +200,7 @@ macro(raja_add_benchmark) blt_add_benchmark( NAME ${arg_NAME} + NUM_MPI_TASKS ${arg_NUM_MPI_TASKS} + NUM_OMP_THREADS ${arg_NUM_OMP_THREADS} COMMAND ${TEST_DRIVER} ${arg_NAME}) endmacro(raja_add_benchmark) diff --git a/cmake/SetupBasics.cmake b/cmake/SetupBasics.cmake index 09fe7125e8..4e1bafe989 100644 --- a/cmake/SetupBasics.cmake +++ b/cmake/SetupBasics.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/cmake/SetupCompilers.cmake b/cmake/SetupCompilers.cmake index c30d9b7865..db264cbcf8 100644 --- a/cmake/SetupCompilers.cmake +++ b/cmake/SetupCompilers.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -9,11 +9,6 @@ set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -O3" CACHE STRING "") set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} -O3" CACHE STRING "") set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -O0" CACHE STRING "") -if (RAJA_ENABLE_MODULES) - message(WARNING "RAJA_ENABLE_MODULES is deprecated, please add the -fmodules flag manually if desired.") - set(RAJA_ENABLE_MODULES Off CACHE BOOL "" FORCE) -endif() - if (CMAKE_CXX_COMPILER_ID MATCHES GNU) if (CMAKE_CXX_COMPILER_VERSION VERSION_LESS 4.9) message(FATAL_ERROR "RAJA requires GCC 4.9 or greater!") diff --git a/cmake/SetupDependentOptions.cmake b/cmake/SetupDependentOptions.cmake index 6929c6bf0d..d5b8ee2a39 100644 --- a/cmake/SetupDependentOptions.cmake +++ b/cmake/SetupDependentOptions.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/cmake/SetupPackages.cmake b/cmake/SetupPackages.cmake index 7efd192b65..80a0330e24 100644 --- a/cmake/SetupPackages.cmake +++ b/cmake/SetupPackages.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -15,20 +15,6 @@ if (RAJA_ENABLE_OPENMP) endif() endif() -if (RAJA_ENABLE_TBB) - find_package(TBB) - if(TBB_FOUND) - blt_register_library( - NAME tbb - INCLUDES ${TBB_INCLUDE_DIRS} - LIBRARIES ${TBB_LIBRARIES}) - message(STATUS "TBB Enabled") - else() - message(WARNING "TBB NOT FOUND") - set(RAJA_ENABLE_TBB Off CACHE BOOL "" FORCE) - endif() -endif () - if (RAJA_ENABLE_CUDA) if (RAJA_ENABLE_EXTERNAL_CUB STREQUAL "VersionDependent") if (CUDA_VERSION_STRING VERSION_GREATER_EQUAL "11.0") @@ -112,23 +98,8 @@ blt_list_append(TO TPL_DEPS ELEMENTS cub IF RAJA_ENABLE_EXTERNAL_CUB) blt_list_append(TO TPL_DEPS ELEMENTS rocPRIM IF RAJA_ENABLE_EXTERNAL_ROCPRIM) blt_list_append(TO TPL_DEPS ELEMENTS roctx IF RAJA_ENABLE_ROCTX) -set(RAJA_NEEDS_BLT_TPLS False) -if (RAJA_ENABLE_CUDA OR RAJA_ENABLE_HIP OR RAJA_ENABLE_OPENMP OR RAJA_ENABLE_MPI) - set(RAJA_NEEDS_BLT_TPLS True) -endif () - -if (RAJA_NEEDS_BLT_TPLS) - if (NOT BLT_EXPORTED) - set(BLT_EXPORTED On CACHE BOOL "" FORCE) - blt_import_library(NAME blt_stub EXPORTABLE On) - set_target_properties(blt_stub PROPERTIES EXPORT_NAME blt::blt_stub) - install(TARGETS blt_stub - EXPORT bltTargets) - blt_export_tpl_targets(EXPORT bltTargets NAMESPACE blt) - install(EXPORT bltTargets - DESTINATION lib/cmake/raja) - endif() -endif () +# Install setup cmake files to allow users to configure TPL targets at configuration time. +blt_install_tpl_setups(DESTINATION lib/cmake/raja) foreach(dep ${TPL_DEPS}) # If the target is EXPORTABLE, add it to the export set diff --git a/cmake/SetupRajaConfig.cmake b/cmake/SetupRajaConfig.cmake index 298f903edf..d255efc31c 100644 --- a/cmake/SetupRajaConfig.cmake +++ b/cmake/SetupRajaConfig.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -57,7 +57,6 @@ check_symbol_exists(_mm_malloc "" RAJA_HAVE_MM_MALLOC) # Set up RAJA_ENABLE prefixed options set(RAJA_ENABLE_OPENMP ${ENABLE_OPENMP}) set(RAJA_ENABLE_TARGET_OPENMP ${ENABLE_TARGET_OPENMP}) -set(RAJA_ENABLE_TBB ${ENABLE_TBB}) set(RAJA_ENABLE_CUDA ${ENABLE_CUDA}) set(RAJA_ENABLE_NV_TOOLS_EXT ${ENABLE_NV_TOOLS_EXT}) set(RAJA_ENABLE_ROCTX ${ENABLE_ROCTX}) diff --git a/cmake/SetupRajaOptions.cmake b/cmake/SetupRajaOptions.cmake index 3a27bc8cd0..09276e18db 100644 --- a/cmake/SetupRajaOptions.cmake +++ b/cmake/SetupRajaOptions.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,7 +11,6 @@ set(ENABLE_GTEST_DEATH_TESTS On CACHE BOOL "Enable tests asserting failure.") option(RAJA_ENABLE_NV_TOOLS_EXT "Build with NV_TOOLS_EXT support" Off) option(RAJA_ENABLE_ROCTX "Build with ENABLE_ROCTX support" Off) -option(RAJA_ENABLE_TBB "Build TBB support" Off) option(RAJA_ENABLE_TARGET_OPENMP "Build OpenMP on target device support" Off) option(RAJA_ENABLE_SYCL "Build SYCL support" Off) @@ -37,5 +36,3 @@ option(RAJA_ENABLE_DESUL_ATOMICS "Enable support of desul atomics" Off) set(DESUL_ENABLE_TESTS Off CACHE BOOL "") set(TEST_DRIVER "" CACHE STRING "driver used to wrap test commands") - -set(BLT_EXPORT_THIRDPARTY ON CACHE BOOL "") diff --git a/cmake/thirdparty/FindCUB.cmake b/cmake/thirdparty/FindCUB.cmake index 15ec250f06..3fb5ff1c6c 100644 --- a/cmake/thirdparty/FindCUB.cmake +++ b/cmake/thirdparty/FindCUB.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/cmake/thirdparty/FindNvToolsExt.cmake b/cmake/thirdparty/FindNvToolsExt.cmake index aa65776375..a6a0da3189 100644 --- a/cmake/thirdparty/FindNvToolsExt.cmake +++ b/cmake/thirdparty/FindNvToolsExt.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/cmake/thirdparty/FindRoctracer.cmake b/cmake/thirdparty/FindRoctracer.cmake index 711cb92f4b..6a049017af 100644 --- a/cmake/thirdparty/FindRoctracer.cmake +++ b/cmake/thirdparty/FindRoctracer.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/cmake/thirdparty/FindSphinx.cmake b/cmake/thirdparty/FindSphinx.cmake index 99f2693e58..e7f492df8c 100644 --- a/cmake/thirdparty/FindSphinx.cmake +++ b/cmake/thirdparty/FindSphinx.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/cmake/thirdparty/FindrocPRIM.cmake b/cmake/thirdparty/FindrocPRIM.cmake index 9237e8a863..fc38ee0082 100644 --- a/cmake/thirdparty/FindrocPRIM.cmake +++ b/cmake/thirdparty/FindrocPRIM.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docker/Dockerfile b/docker/Dockerfile index bd9918ce6c..cf052fabbe 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docs/CMakeLists.txt b/docs/CMakeLists.txt index 655ce20718..18648caae3 100644 --- a/docs/CMakeLists.txt +++ b/docs/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docs/conf.py b/docs/conf.py index 158bbf28be..c523ce8c26 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -79,16 +79,16 @@ # General information about the project. project = u'RAJA' -copyright = u'2016-2023, Lawrence Livermore National Security, LLNS' +copyright = u'2016-2024, Lawrence Livermore National Security, LLNS' # The version info for the project you're documenting, acts as replacement for # |version| and |release|, also used in various other places throughout the # built documents. # # The short X.Y version. -version = u'2022.10' +version = u'2024.02' # The full version, including alpha/beta/rc tags. -release = u'2022.10.5' +release = u'2024.02.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/docs/doxygen/CMakeLists.txt b/docs/doxygen/CMakeLists.txt index 01f7947402..7c9caf7516 100644 --- a/docs/doxygen/CMakeLists.txt +++ b/docs/doxygen/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docs/doxygen/Doxyfile b/docs/doxygen/Doxyfile index 6d1926f911..226ccefd48 100644 --- a/docs/doxygen/Doxyfile +++ b/docs/doxygen/Doxyfile @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docs/doxygen/Doxyfile.in b/docs/doxygen/Doxyfile.in index 03e49d1c50..a0f0752f82 100644 --- a/docs/doxygen/Doxyfile.in +++ b/docs/doxygen/Doxyfile.in @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docs/index.rst b/docs/index.rst index 280d0b8bc1..450bab4447 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/requirements.txt b/docs/requirements.txt index 93120e66c8..0a42ee80cd 100644 --- a/docs/requirements.txt +++ b/docs/requirements.txt @@ -1 +1,3 @@ -docutils<0.18 +docutils +sphinx==6.2.1 +sphinx-rtd-theme==1.2.2 diff --git a/docs/sphinx/dev_guide/branch_development.rst b/docs/sphinx/dev_guide/branch_development.rst index d7b8064abe..b50a5e48d9 100644 --- a/docs/sphinx/dev_guide/branch_development.rst +++ b/docs/sphinx/dev_guide/branch_development.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/dev_guide/build_configurations.rst b/docs/sphinx/dev_guide/build_configurations.rst index d43048ac98..a71c047d33 100644 --- a/docs/sphinx/dev_guide/build_configurations.rst +++ b/docs/sphinx/dev_guide/build_configurations.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -152,7 +152,13 @@ Generating a host-config file ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ To generate a host-config file for a desired configuration, run the -``uberenv.py`` python script from the top-level RAJA directory. For example, +``uberenv.py`` python script from the top-level RAJA directory. + +.. important:: **Do not** run the ``uberenv.py`` script, which invokes Spack + in your LC home directory. Running Spack in your home directory + may cause you to exceed your LC disk space quota. + +For example, .. code-block:: bash diff --git a/docs/sphinx/dev_guide/ci.rst b/docs/sphinx/dev_guide/ci.rst index 719fbd1b0b..9466a76dd5 100644 --- a/docs/sphinx/dev_guide/ci.rst +++ b/docs/sphinx/dev_guide/ci.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -17,28 +17,24 @@ Continuous Integration (CI) Testing viewed by clicking the appropriate link in the **checks** section of a GitHub pull request. -The CI tools used by the RAJA project are: +The RAJA project uses two CI tools to run tests: * **Azure Pipelines** runs builds and tests for Linux, Windows, and MacOS - environments using recent versions of various compilers. While we do GPU - builds for CUDA, HIP, and SYCL on Azure, RAJA tests are only run for - CPU-only pipelines. Docker container images we use for the Linux testing - are maintained in the - `RSE Ops Project `_. Please see - the `RAJA Azure DevOps `_ project to learn - more about our testing there. - - * **GitLab** instances in the Collaboration Zone (CZ) of the Livermore - Computing (LC) Center run builds and tests on LC HPC platforms using + environments using compilers in container images maintained in the + `RSE Ops Project `_. + While we do some GPU builds on Azure, RAJA tests are only run for CPU-only + builds. The current set of builds run on Azure can be seen by looking at + the ``RAJA/azure-pipelines.yml`` and ``RAJA/Dockerfile`` files. + + * **GitLab** instance in the Collaboration Zone (CZ) of the Livermore + Computing (LC) Center runs builds and tests on LC platforms using software stacks (compilers, etc.) important to many RAJA user applications. - Execution of LC GitLab CI on LC resources has restrictions, which are - described below. If you have access to LC platforms, you can access - information about - `LC GitLab CI `_ + GitLab build configurations are more complex than Azure; they will be + described in detail in :ref:`gitlab_ci-label`. -The tools integrate with the RAJA GitHub project and automatically run RAJA +These tools integrate with the RAJA GitHub project and automatically run RAJA builds and tests when a PR is created and when changes are pushed to a PR -branch. +branch or one of our protected branches `main` and `develop`. The following sections describe basic elements of the operation of the CI tools. @@ -55,46 +51,58 @@ machine and compiler environments important to RAJA user applications at LLNL. Constraints ----------- -Running GitLab CI on Livermore Computing (LC) platforms is constrained by LC -security policies. The policies require that all members of a GitHub project -be members of the LLNL GitHub organization and have two-factor authentication +LC security policies constrain how projects can run GitLab CI on LC platforms. +Specifically, policies require that all members of a GitHub project be members +of the LLNL GitHub organization and have two-factor authentication enabled on their GitHub accounts. When these requirements are satisfied, -mirroring of a GitHub repo and triggering GitLab CI functionality from GitHub -can be done. Otherwise, LC GitLab CI checks will not be run for a project. -For a compliant LLNL GitHub project, such as RAJA, auto-mirroring of the -GitHub repo on LC GitLab is done every 30 minutes or so, triggering builds and +GitLab on the LC CZ can mirror a GitHub project and trigger GitLab CI when +changes are made to the GitHub repo. If the requirements are not met, LC +GitLab CI checks will not run. This implies, for example, that GitLab CI will +not run an LLNL organization project for a PR made from a fork of the project +repo by someone not in the LLNL organization. + +For a compliant LLNL GitHub project like RAJA, auto-mirroring of the +GitHub repo to LC GitLab is done every 30 minutes or so, triggering builds and tests on new changes pushed to the RAJA GitHub project. If you have access to LC platforms, you can learn more about `LC GitLab mirroring `_. -**GitLab CI will not run for a PR branch on a fork of the RAJA repo.** We -manually manage contributions made on a fork of the RAJA repo using the -procedure described in :ref:`contributing-label`. +.. important:: **GitLab CI will not run for a PR branch on a fork of the RAJA + repo.** The RAJA project manually manages contributions made + on forks of the RAJA repo using the procedure described in + :ref:`contributing-label`. .. _gitlab_ci_workflow-label: GitLab CI (LC) Testing Workflow -------------------------------------- -The figure below shows the high-level steps in the RAJA GitLab CI testing -process. The main steps, which we will discuss in more detail later, are: - - #. A *mirror* of the RAJA GitHub repo in the RAJA LC CZ GitLab project is - updated automatically after the RAJA ``develop`` or ``main`` branches - are changed as well as when any PR branch in the RAJA GitHub project is - changed. There may be a delay in the mirroring, since it is not - synhronous with changes to the RAJA GitHub project. - #. GitLab launches CI test pipelines. While running, the execution and - pass/fail status may be viewed and monitored in the GitLab CI GUI - or in the RAJA GitHub project checks section for a PR. +The figure below shows the sequence of steps in the RAJA GitLab CI testing +process. More details about these steps will appear in the in later sections: + + #. A *mirror* of the RAJA GitHub repo is updated in the RAJA LC CZ GitLab + project automatically (approximately every 30 minutes). + + .. note:: There may be a delay in the mirroring, since it is not + synchronous with changes to the RAJA GitHub project. + + #. GitLab launches CI test pipelines for any new changes made to the + ``develop`` or ``main`` branches or any non-fork PR branch. While + running, the execution and pass/fail status may be viewed and monitored + in the GitLab CI GUI or in the RAJA GitHub project checks section of a PR. + #. For each platform and compiler combination, `Spack `_ builds RAJA dependencies and generates a configuration in the form of a CMake cache file, or *host-config* file. + #. A host-config file is passed to CMake, which configures a RAJA build space. Then, RAJA and its tests are compiled. + #. Next, the RAJA tests are run. - #. When test pipelines complete, results are reported in GitLab. - #. Lastly, GitLab reports to GitHub to show the status of checks there. + + #. When test pipelines complete, results are reported to GitLab. + + #. Lastly, GitLab reports to GitHub indicating the the status of checks there. .. figure:: ./figures/RAJA-Gitlab-Workflow2.png @@ -110,32 +118,37 @@ play in the RAJA GitLab CI workflow. GitLab CI Testing Dependencies (specific to LC CZ) --------------------------------------------------- -RAJA GitLab CI testing depends on several other projects that we share with -other projects. These include +RAJA GitLab CI testing depends on several other projects that we develop +collaboratively with other projects. These include * `RADIUSS Shared CI `_, a centralized framework for software testing with GitLab CI on LC machines. The project is developed on GitHub and is mirrored to the LC - CZ GitLab instance, where it is used by multiple projects. - * `Spack `_, a widely used - multi-platform package manager that builds and installs software stacks. + CZ GitLab instance. + * `Spack `_, a multi-platform package + manager that builds and installs HPC software stacks. * `Uberenv `_, a Python script - that helps to automate the use of Spack and other tools for building + that helps to simplify the workflow of Spack and other tools for building third-party dependencies. Uberenv is a submodule in RAJA that lives in ``RAJA/scripts/uberenv/``. - * `RADIUSS Spack Configs `_, - a collection of build configurations used by Spack to generate host-config - files for CMake. The build configurations are specific to LLNL LC - platforms and are used by multiple projects. It also contains Spack - packages for various projects, including RAJA. The RAJA Spack package is - maintained in this project. RADIUSS Spack Configs is a submodule in RAJA - that lives in ``RAJA/scripts/radiuss-spack-configs/``. + * `RADIUSS Spack Configs `_, a + collection of Spack compiler and package configurations used by Spack to + generate build configurations. The build configurations are specific to + LLNL LC platforms. Spack packages for multiple projects are maintained in + this project. Shared RADIUSS CI jobs are also hosted by this project as + they relate to the Spack configuration. RADIUSS Spack Configs is a + submodule in RAJA that lives in ``RAJA/scripts/radiuss-spack-configs/``. The relationships among these dependencies in a project that uses them is -illustrated in the `RADIUSS Shared CI User Guide `_. The guide also describes +described in the `RADIUSS Shared CI User Guide `_ along with information about how the framework works and how to set up a project to use it. -In the rest of the this section, we describe files in the RAJA repo that are +.. important:: The RAJA Spack package is maintained in the `RADIUSS Spack + Configs `_ project. After + packages are updated there, they are pushed to the Spack repo on GitHub via + a pull request. + +The remainder of this section describes files in the RAJA repo that are used to configure and customize the shared CI framework specifically for the RAJA project. @@ -149,27 +162,43 @@ support LC GitLab CI testing. .. figure:: ./figures/RAJA-Gitlab-Files.png - The figure shows directories and files in the RAJA repo that support GitLab - CI testing. Files in blue are specific to RAJA and are maintained in the - RAJA repo. Red directories and files are in Git submodules that are - shared and maintained with other projects. - -Briefly, these files play the following roles in our GitLab CI testing: - - * The ``RAJA/.gitlab-ci.yml`` file is the root file for GitLab CI - configuration. We place jobs is small pipelines described by separate - files that are included by this one. Global variables can also be defined - here. - * The ``.uberenv_config.json`` file defines the Spack version we use, where - Spack packages live, etc. - * Files in the ``RAJA/.gitlab`` directory define test pipelines that RAJA - subscribes to an which are defined in the - `RADIUSS Shared CI `_ project, - as well as RAJA-specific jobs, and any job customization that we use, - such as job time limits, etc. These files are customizations of templates - provided by `RADIUSS Shared CI `_. - * The ``RAJA/scripts/gitlab/build_and_test.sh`` file defines the RAJA build - and test process and commands that are run during it. + The figure shows directories and files in the RAJA repo that support GitLab + CI testing. Files in blue are specific to the CI while those in red relates + to the build (Spack) environment description. The ``build_and_test.sh`` + scripts stands at the interface between CI and Spack. ``uberenv`` and + ``radiuss-spack-configs`` are both Git submodules that are shared and + maintained with other projects. + +Briefly, these files play the following roles in GitLab CI testing: + + * The `RAJA/.gitlab-ci.yml + `_ file is the + top-level file for GitLab CI configuration. It defines variables used + throughout the CI configuration such as GitHub project name and + organization, service user account name, version information for RADIUSS + Shared CI project we are using, and top-level information for triggering + build-and-test sub-pipelines. + * The `RAJA/.uberenv_config.json + `_ file + defines information about Spack such as Spack version we are using, + location of Spack packages, etc. + * The `RAJA/.gitlab `_ + directory contains several files that connect RAJA GitLab pipelines to + shared pipelines defined in the `RADIUSS Shared CI + `_ project, as well as + RAJA-specific jobs and global job customizations that we use, such as job + time limits, etc. These files are modified from templates provided by the + RADIUSS Shared CI project. + * In particular, `RAJA/.gitlab/jobs + `_ directory + contains the files defining RAJA specific jobs per machine. This file is + appended to the list of shared CI jobs provided by `RADIUSS Spack Configs + `_. Each job ultimately consists + in one Spack spec. + * The `RAJA/scripts/gitlab/build_and_test.sh + `_ + contains commands that are run during the RAJA build and test process. It is + set in the CI using the ``JOB_CMD`` variable. In the following sections, we discuss how these files are used in the steps of the RAJA GitLab CI testing process summarized above. @@ -179,80 +208,64 @@ steps of the RAJA GitLab CI testing process summarized above. Launching CI pipelines (step 2) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -In **step 2** of the diagram above, GitLab launches RAJA test pipelines. -The `RAJA/.gitlab-ci.yml `_ file contains high-level testing information that applies to all RAJA -GitLab CI testing pipelines. This includes - - * **GitLab pipeline variables**, such as project name, service user account - name, etc. - - * **High-level pipeline stages** for build and test, multi-project testing, - etc. - - * **Build and test sub-pipelines**. Note that this is where the connection - is made to the RADIUSS Shared CI project (and version on the LC CZ GitLab - instance) and to files in the ``RAJA/.gitlab`` directory that define the - Spack specs for build configurations that are run on each machine on - which RAJA tests are run. - - * **Cross-project test pipelines**, which are triggered when testing - certain RAJA branches, mainly the develop branch. - - * **CI subscribed pipelines**, which are defined in the - RADIUSS Shared CI project. - -.. important:: Variables that define how resources are allocated and job time - limits for LC machines that are used to run RAJA CI are defined - in the ``RAJA/.gilab/custom-jobs-and-variables.yml`` file. +In **step 2** of the diagram above, GitLab launches RAJA test pipelines +starting with the content of the ``RAJA/.gitlab-ci.yml`` file described above. +Most importantly, this file identifies the location of two files +`RAJA/.gitlab/subscribed-pipelines.yml `_ and +`RAJA/.gitlab/custom-jobs-and-variables.yml `_. +The ``subscribed-pipelines.yml`` file connects the RAJA GitLab environment to +the platform and pipelines defined in the RADIUSS Shared CI project. +The ``custom-jobs-and-variables.yml`` file defines how resources are +allocated to run test jobs on various LC platforms and common build +configuration variants for those platforms Each job that is run is defined by a Spack spec in one of two places, depending -on whether it is *shared* with other projects or it is specific to RAJA. The -shared jobs are defined in files named ``-build-and-test.yml`` in -the top-level directory of the -`RADIUSS Shared CI Project `_. -RAJA-specific jobs are defined in -``RAJA/.gitlab/-build-and-test-extra.yml`` files. - -**Each shared job will be run as-is unless it is overridden** in the RAJA -'extra' file for the corresponding machine. For example, a shared job for the -LC ruby machine may appear in the RADIUSS Shared CI file -``ruby-build-and-test.yml`` as:: +on whether it is *shared* with other projects or it is specific to RAJA. The +shared jobs are defined in files located in +``gitlab/radiuss-jobs/.yml`` in the `RADIUSS Spack Configs Project +`_. Overrides (modifications) +of those jobs and other RAJA-specific jobs are defined in +``RAJA/.gitlab/jobs/.yml`` files. + +**Each shared job will be run as-is unless it is overridden** in the RAJA local +jobs file for the corresponding machine. For example, a shared job for the LC +ruby machine may appear in the RADIUSS Spack Configs file +``gitlab/radiuss-jobs/ruby.yml`` as:: gcc_8_1_0: variables: SPEC: "${PROJECT_RUBY_VARIANTS} %gcc@8.1.0 ${PROJECT_RUBY_DEPS}" - extends: .build_and_test_on_ruby + extends: .job_on_ruby -and then may be overridden in the ``RAJA/.gitlab/ruby-build-and-test-extra.yml`` +and then may be overridden in the ``RAJA/.gitlab/jobs/ruby.yml`` file as:: gcc_8_1_0: variables: SPEC: " ${PROJECT_RUBY_VARIANTS} %gcc@8.1.0 ${PROJECT_RUBY_DEPS}" - RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1" - extends: .build_and_test_on_ruby + RUBY_JOB_ALLOC: "--time=60 --nodes=1" + extends: .job_on_ruby In this example, the Spack build spec is the same, but the job is configured -with a timeout limit and number of nodes appropriate for RAJA testing. +with a specific timeout limit and number of nodes appropriate for RAJA testing. -.. important:: A shared job override **must use the same job label as the - shared job** defined in the RADIUSS Shared CI project. +.. important:: A shared job override **must use the same job label as the + shared job** defined in the RADIUSS Shared CI project. -RAJA-specific jobs whose configurations are not shared with other projects -are also defined in the -``RAJA/.gitlab/-build-and-test-extra.yml`` files. For example:: +RAJA-specific jobs whose configurations are not shared with other projects are +also defined in the ``RAJA/.gitlab/jobs/.yml`` files. For example:: clang_10_0_1_gcc_8_3_1_desul_atomics: variables: SPEC: " ~shared +openmp +tests +desul %clang@10.0.1 cxxflags=--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 cflags=--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1" - extends: .build_and_test_on_ruby + extends: .job_on_ruby defines a RAJA job with desul atomics enabled to be run on the ruby machine. -.. important:: Each base compiler configuration that is used in GitLab CI - testing must have a Spack spec defined for it in the appropriate - file for the machine that it will be tested on in the - `RADIUSS Spack Configs `_ project. +.. important:: Each base compiler configuration that is used in GitLab CI + testing must have a Spack spec defined for it in the appropriate file for + the machine that it will be tested on in the `RADIUSS Spack Configs + `_ project. .. _gitlab_ci_running-label: @@ -261,105 +274,31 @@ Running a CI build and test pipeline (steps 3, 4, 5, 6) The `RAJA/scripts/gitlab/build_and_test.sh `_ file defines the steps executed for each build and test pipeline as well as information that will appear in the -log output for each step. - -After some basic set up, the script invokes the -``RAJA/scripts/uberenv/uberenv.py`` Python script that drives Spack to generate -host-config files:: - - ... - - python3 scripts/uberenv/uberenv.py --spec="${spec}" ${prefix_opt} - - ... - -Project specific settings related to which Spack version to use, where -Spack packages live, etc. are located in the +log output for each step. The script "echoes" information to the test logs +indicating what it is doing. Following the echo commands in the file may help +one understand the workflow. + +The details of the various steps in the process may change from time to time. +However, the basic sequence is: + + #. Perform some basic (platform-independent) setup. + #. Invoke the ``RAJA/scripts/uberenv/uberenv.py`` Python script that drives + Spack to generate a host-config file from a given spec **(step 3)**. + #. Run CMake to configure a build space passing the host-config file to it + which contains all CMake variable settings for the configuration. + #. Build RAJA and tests **(step 4)**. + #. Run RAJA tests via ctest **(step 5)**. + #. Export XML test reports for reporting in GitLab **(step 6)**, which is + done by the RADIUSS Shared CI Framework. + #. Perform clean up tasks. + +Recall that RAJA project specific settings defining the Spack version to use, +locations of Spack packages, etc. are located in the `RAJA/.uberenv_config.json `_ file. -The Uberenv Python script invokes Spack to generate a CMake *host-config* -file containing a RAJA build specification **(step 3)**. To generate -a *host-config* file, Spack uses the packages and specs maintained in the -`RADIUSS Spack Configs project -`_, plus RAJA-specific specs -defined in files in the `RAJA/.gitlab `_ directory, as described earlier. - -.. note:: Please see :ref:`spack_host_config-label` for more information about - how to manually generate host-config files and use them for local - debugging. - -After the host-config file is generated, the -``RAJA/scripts/gitlab/build_and_test.sh`` script creates a build space -directory and runs CMake in it, passing the host-config (cache) file. Then, -it builds the RAJA code and tests **(step 4)**:: - - ... - - build_dir="${build_root}/build_${hostconfig//.cmake/}" - install_dir="${build_root}/install_${hostconfig//.cmake/}" - - ... - - date - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ Host-config: ${hostconfig_path}" - echo "~~~~~ Build Dir: ${build_dir}" - echo "~~~~~ Project Dir: ${project_dir}" - echo "~~~~~ Install Dir: ${install_dir}" - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "" - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ Building RAJA" - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - - .. - - rm -rf ${build_dir} 2>/dev/null - mkdir -p ${build_dir} && cd ${build_dir} - - ... - - $cmake_exe \ - -C ${hostconfig_path} \ - -DCMAKE_INSTALL_PREFIX=${install_dir} \ - ${project_dir} - - ... - - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ RAJA Built" - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - date - -Next, it runs the tests **(step 5)**:: - - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ Testing RAJA" - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - - ... - - cd ${build_dir} - - ... - - ctest --output-on-failure -T test 2>&1 | tee tests_output.txt - - ... - - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - echo "~~~~~ RAJA Tests Complete" - echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - date - -Lastly, test results are collected in a JUnit XML file that -GitLab uses for reporting the results in its GUI **(step 6)**. This is -done by the -`RADIUSS Shared CI Framework `_ - -The commands shown here intermingle with other commands that emit messages, -timing information for various operations, etc. which appear in a log -file that can be viewed in the GitLab GUI. +Also, recall that to generate a host-config file, Spack uses packages and +specs in the `RADIUSS Spack Configs project `_ (a RAJA submodule), +plus RAJA-specific specs defined in files in the `RAJA/.gitlab/jobs `_ directory, as described earlier. .. _azure_ci-label: @@ -367,15 +306,15 @@ file that can be viewed in the GitLab GUI. Azure Pipelines CI ================== -The Azure Pipelines tool builds and tests for Linux, Windows, and MacOS -environments. While we do builds for CUDA, HIP, and SYCL RAJA back-ends +We use Azure Pipelines to run builds and tests for Linux, Windows, and MacOS +environments. While we do builds for CUDA, HIP, and SYCL RAJA GPU back-ends in the Azure Linux environment, RAJA tests are only run for CPU-only pipelines. Azure Pipelines Testing Workflow -------------------------------- The Azure Pipelines testing workflow for RAJA is much simpler than the GitLab -testing process described above. +testing process described earlier. The test jobs we run for each OS environment are specified in the `RAJA/azure-pipelines.yml `_ file. This file defines the job steps, commands, @@ -386,7 +325,7 @@ A summary of the configurations we build are: for the Windows test builds. For example, we build and test RAJA as a static and shared library. This is indicated in the Windows ``strategy`` section:: - + strategy: matrix: shared: diff --git a/docs/sphinx/dev_guide/ci_tasks.rst b/docs/sphinx/dev_guide/ci_tasks.rst index ac39b40453..70c65e8903 100644 --- a/docs/sphinx/dev_guide/ci_tasks.rst +++ b/docs/sphinx/dev_guide/ci_tasks.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -8,53 +8,58 @@ .. _ci_tasks-label: -****************************************************** +***************************************************** Continuous Integration (CI) Testing Maintenance Tasks -****************************************************** +***************************************************** In :ref:`ci-label`, we described RAJA CI workflows. This section describes how to perform common RAJA CI testing maintenance tasks. .. _gitlab_ci_tasks-label: -================= +=============== GitLab CI Tasks -================= +=============== -The tasks in this section apply to GitLab CI testing on Livermore -Computing (LC) platforms. +The tasks in this section apply to GitLab CI testing on Livermore +Computing (LC) platforms. LC folks and others maintain Confluence pages +with a lot of useful information for setting up and maintaining GitLab CI +for a project, mirroring a GitHub to GitLab, etc. Please refer to `LC GitLab CI `_ for such information. Changing build and test configurations ----------------------------------------- +-------------------------------------- The build for each test we run is defined by a Spack spec in one of two places, depending on whether it is *shared* with other projects or it is specific to RAJA. The details are described in :ref:`gitlab_ci_pipelines-label`. Remove a configuration -^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^ -To remove a RAJA-specific test configuration, simply delete the entry for it -in the ``RAJA/.gitlab/-build-and-test-extra.yml`` file where it is -defined. +To remove a RAJA-specific test configuration, simply delete the entry for it in +the ``RAJA/.gitlab/jobs/.yml`` file where it is defined. Here, +``MACHINE`` is the name of an LC platform where GitLab CI is run. To remove a shared configuration, it must be removed from the appropriate -``-build-and-test.yml`` file in the -`RADIUSS Shared CI `_ project. -Create a branch there, remove the job entry, and create a pull request. +``gitlab/radiuss-jobs/.yml`` file in the `RADIUSS Spack Configs +`_ project. Create a branch +there, remove the job entry, and create a pull request. + +.. important:: The RADIUSS Spack Configs project is used by several other + projects. When changing a shared configuration file, please make sure the + change is OK with those other projects. Add a configuration -^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^ -To add a RAJA-specific test configuration, add the entry for it to the -``RAJA/.gitlab/-build-and-test-extra.yml`` file, where ``MACHINE`` -is the name of the LC platform where it will be run. When adding a -RAJA-specific test configuration, it is important to note two -items that must be set properly: +To add a RAJA-specific test configuration, add an entry for it to the +``RAJA/.gitlab/jobs/.yml`` file, where ``MACHINE`` is the name of the +LC platform where it will be run. When adding a test configuration, it is +important to note two items that must be specified properly: - * the unique **job label**, which identifies it in the machine configuration + * A unique **job label**, which identifies it in the machine configuration file and also on a web page for a GitLab CI pipeline - * the build **Spack spec**, which identifies the compiler and version, + * A build **Spack spec**, which identifies the compiler and version, compiler flags, build options, etc. For example, an entry for a build using the clang 12.0.1 compiler with CUDA @@ -65,45 +70,47 @@ For example, an entry for a build using the clang 12.0.1 compiler with CUDA clang_12_0_1_cuda_11_5_0: variables: SPEC: " ~shared +openmp +tests +cuda cuda_arch=70 %clang@12.0.1 ^cuda@11.5.0" - extends: .build_and_test_on_lassen + extends: .job_on_lassen -Here, we enable OpenMP and CUDA, both of which must be enabled to use them, -and specify the CUDA target architecture 'sm_70'. +Here, we enable OpenMP and CUDA, both of which must be enabled to test those +RAJA back-ends, and specify the CUDA target architecture 'sm_70'. To add a shared configuration, it must be added to the appropriate -``-build-and-test.yml`` file in the -`RADIUSS Shared CI `_ project. -Create a branch there, add the job entry, and create a pull request. +``gitlab/radiuss-jobs/.yml`` file in the `RADIUSS Spack Configs +`_ project. Create a branch +there, add the job entry, and create a pull request. + +.. important:: The RADIUSS Spack Configs project is used by several other + projects. When changing a shared configuration file, please make sure the + change is OK with those other projects. Modifying a configuration -^^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^^^ -To change an existing configuration, change the relevant information in the -configuration, such variant(s) or target compute architecture, in the -appropriate -``RAJA/.gitlab/-build-and-test-extra.yml`` file. Make sure to -also modify the job label, so it is descriptive of the configuration. +To change an existing configuration, change the relevant information in the +configuration in the appropriate ``RAJA/.gitlab/jobs/.yml`` file. Make +sure to also modify the job label as needed, so it is descriptive of the +configuration (and remains unique!!). To modify a shared configuration, it must be changed in the appropriate -``-build-and-test.yml`` file in the -`RADIUSS Shared CI `_ project. -Create a branch there, modify the job entry, and create a pull request. - -.. important:: Build spec information used in RAJA GitLab CI pipelines - must exist in the ``compilers.yaml`` file and/or - ``packages.yaml`` file for the appropriate system type in - the `RADIUSS Spack Configs `_ repo. - - If the desired entry is not there, but exists in a newer version - of the RADIUSS Spack Configs project, update the RAJA submodule - to use the newer version. If the information does not exist in - any version of the RADIUSS Spack Configs project, create a - branch there, add the needed spec info, and create a pull - request. Then, when that PR is merged, update the RAJA submodule - to the new version. +``gitlab/radiuss-jobs/.yml`` file in the `RADIUSS Spack Configs +`_ project. Create a branch +there, modify the job entry, and create a pull request. + +.. important:: Build spec information used in RAJA GitLab CI pipelines must + exist in the ``compilers.yaml`` file and/or ``packages.yaml`` file for the + appropriate system type in the `RADIUSS Spack Configs + `_ repo. + + If the desired entry is not there, but exists in a newer version of the RADIUSS + Spack Configs project, update the RAJA submodule to use the newer version. If + the information does not exist in any version of the RADIUSS Spack Configs + project, create a branch there, add the needed spec info, and create a pull + request. Then, when that PR is merged, update the RAJA submodule for the + RADIUSS Spack Configs project to the new version. Changing run parameters -^^^^^^^^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^^^^^^^ The parameters for each system/scheduler on which we run GitLab CI for RAJA, such as job time limits, resource allocations, etc. are defined in the @@ -111,11 +118,10 @@ RAJA, such as job time limits, resource allocations, etc. are defined in the remain as is, for the most part, and should not be changed unless absolutely necessary. -Sometimes a particular job will take longer to build and run than the -default allotted time for jobs on a machine. In this case, the time for the -job can be adjusted in the job entry in the associated -``RAJA/.gitlab/-build-and-test-extra.yml`` file. -For example: +For example, sometimes a particular job will take longer to build and run than +the default allotted time for jobs on a machine. In this case, the time for the +job can be adjusted in the job entry in the associated +``RAJA/.gitlab/jobs/.yml`` file. For example: .. code-block:: bash @@ -123,13 +129,13 @@ For example: variables: SPEC: " ${PROJECT_RUBY_VARIANTS} %gcc@8.1.0 ${PROJECT_RUBY_DEPS}" RUBY_BUILD_AND_TEST_JOB_ALLOC: "--time=60 --nodes=1" - extends: .build_and_test_on_ruby + extends: .job_on_ruby This example sets the build and test allocation time to 60 minutes and the the run resource to one node. Allowing failures -^^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^^^ Sometimes a shared job configuration is known to fail for RAJA. To allow the job to fail without the CI check associated with it failing, we can @@ -140,29 +146,30 @@ annotate the job for this. For example: ibm_clang_9_0_0: variables: SPEC: " ${PROJECT_LASSEN_VARIANTS} %clang@ibm.9.0.0 ${PROJECT_LASSEN_DEPS}" - extends: .build_and_test_on_lassen + extends: .job_on_lassen allow_failure: true -.. important:: When a shared job needs to be modified for RAJA specifically, - we call that "overriding": The job label must be kept the same - as in the ``-build-and-test.yml`` file in the - `RADIUSS Shared CI `_, - and the job implementation can be adapted. If you override a - shared job, please add a comment to describe the change. +.. important:: When a shared job needs to be modified for RAJA specifically, we + call that "overriding": The job label must be kept the same as in the + ``gitlab/radiuss-jobs/.yml`` file in the `RADIUSS Spack Configs + `_, and the RAJA-specific job + can be adapted. If you override a shared job, please add a comment to + describe the change in the ``RAJA/.gitlab/jobs/.yml`` file where + the job is overridden. -================= +============== Azure CI Tasks -================= +============== The tasks in this section apply to RAJA Azure Pipelines CI. Changing Builds/Container Images ---------------------------------------- +-------------------------------- The builds we run in Azure are defined in the `RAJA/azure-pipelines.yml `_ file. Linux/Docker -^^^^^^^^^^^^^ +^^^^^^^^^^^^ To update or add a new compiler / job to Azure CI we need to edit both ``azure-pipelines.yml`` and ``Dockerfile``. @@ -185,8 +192,9 @@ In the ``Dockerfile`` we will want to add our section that defines the commands COPY . /home/raja/workspace WORKDIR /home/raja/workspace/build RUN cmake -DCMAKE_CXX_COMPILER=compilerX ... && \ - make -j 6 &&\ - ctest -T test --output-on-failure + make -j 6 && \ + ctest -T test --output-on-failure && \ + cd .. && rm -rf build Each of our docker builds is built up on a base image maintained by RSE-Ops, a table of available base containers can be found `here `_. We are also able to add target names to each build with ``AS ...``. This target name correlates to the ``docker_target: ...`` defined in ``azure-pipelines.yml``. @@ -195,7 +203,7 @@ The base containers are shared across multiple projects and are regularly rebuil Check `here `_ for a list of all currently available RSE-Ops containers. Please see the `RSE-Ops Containers Project `_ on GitHub to get new containers built that aren't yet available. Windows / MacOS -^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^ We run our Windows / MacOS builds directly on the Azure virtual machine instances. In order to update the Windows / MacOS instance we can change the ``pool`` under ``-job: Windows`` or ``-job: Mac``:: @@ -213,7 +221,7 @@ Changing Build/Run Parameters ----------------------------- Linux/Docker -^^^^^^^^^^^^^^ +^^^^^^^^^^^^ We can edit the build and run configurations of each docker build, in the ``RUN`` command. Such as adding CMake options or changing the parallel build value of ``make -j N`` for adjusting throughput. @@ -236,7 +244,7 @@ Each base image is built using `spack `_. For th source /opt/view/setvars.sh Windows / MacOS -^^^^^^^^^^^^^^^^^ +^^^^^^^^^^^^^^^ Windows and MacOS build / run parameters can be configured directly in ``azure-pipelines.yml``. CMake options can be configured with ``CMAKE_EXTRA_FLAGS`` for each job. The ``-j`` value can also be edited directly in the Azure ``script`` definitions for each job. @@ -250,28 +258,35 @@ matches an entry in the Docker test matrix in the .. _rajaperf_ci_tasks-label: -================================ +=============================== RAJA Performance Suite CI Tasks -================================ +=============================== The `RAJA Performance Suite `_ project CI -testing processes, directory/file structure, and dependencies are nearly -identical to that for RAJA, which is described in :ref:`ci-label`. Specifically, - - * The RAJA Performance Suite GitLab CI process is driven by the - `RAJAPerf/.gitlab-ci.yml `_ file. - * The ``-jobs.yml`` and ``-templates.yml`` files reside - in the - `RAJAPerf/.gitlab `_ - directory. - * The ``build_and_test.sh`` script resides in the `RAJAPerf/scripts/gitlab `_ directory. - * The `RAJAPerf/Dockerfile `_ drives the Azure testing pipelines. - -The main difference is that for GitLab CI, is that the Performance Suite uses -the RAJA submodules for ``uberenv`` and ``radiuss-spack-configs`` located in -the RAJA submodule to avoid redundant submodules. This is reflected in the -`RAJAPerf/.uberenv_config.json `_ -file which point at the relevant RAJA submodule locations. +testing processes, directory/file structure, and dependencies are nearly +identical to that for RAJA, which is described in :ref:`ci-label`. +Specifically, + + * The RAJA Performance Suite GitLab CI process is driven by the + `RAJAPerf/.gitlab-ci.yml + `_ file. + * The ``custom-jobs-and-variables.yml`` and ``subscribed-pipelines.yml`` + files reside in the `RAJAPerf/.gitlab + `_ directory. + * The ``build_and_test.sh`` script resides in the `RAJAPerf/scripts/gitlab + `_ directory. + * The `RAJAPerf/Dockerfile + `_ drives the + Azure testing pipelines. + +The Performance Suite GitLab CI uses the ``uberenv`` and +``radiuss-spack-configs`` versions located in the RAJA submodule to make the +testing consistent across projects and avoid redundancy. This is reflected in +the `RAJAPerf/.uberenv_config.json +`_ file +which point at the relevant RAJA submodule locations. That is the paths contain +``tpl/RAJA/...``. Apart from this minor difference, all CI maintenance and development tasks for -the RAJA Performance Suite follow the guidance in :ref:`ci_tasks-label`. +the RAJA Performance Suite follow the same pattern that is described in +:ref:`ci_tasks-label`. diff --git a/docs/sphinx/dev_guide/contributing.rst b/docs/sphinx/dev_guide/contributing.rst index c7d4aa1568..b8fc618bce 100644 --- a/docs/sphinx/dev_guide/contributing.rst +++ b/docs/sphinx/dev_guide/contributing.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/dev_guide/figures/RAJA-Gitlab-Files.png b/docs/sphinx/dev_guide/figures/RAJA-Gitlab-Files.png index 5bd3dde5a5..c0704c3889 100644 Binary files a/docs/sphinx/dev_guide/figures/RAJA-Gitlab-Files.png and b/docs/sphinx/dev_guide/figures/RAJA-Gitlab-Files.png differ diff --git a/docs/sphinx/dev_guide/index.rst b/docs/sphinx/dev_guide/index.rst index 0093513e3e..492aa7592b 100644 --- a/docs/sphinx/dev_guide/index.rst +++ b/docs/sphinx/dev_guide/index.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/dev_guide/release_process.rst b/docs/sphinx/dev_guide/release_process.rst index 7c0775cc3d..fde3624f25 100644 --- a/docs/sphinx/dev_guide/release_process.rst +++ b/docs/sphinx/dev_guide/release_process.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/dev_guide/tests.rst b/docs/sphinx/dev_guide/tests.rst index 8a12a39064..acdb713db1 100644 --- a/docs/sphinx/dev_guide/tests.rst +++ b/docs/sphinx/dev_guide/tests.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/dev_guide/versioning.rst b/docs/sphinx/dev_guide/versioning.rst index f9e9f1454b..a57db0f02e 100644 --- a/docs/sphinx/dev_guide/versioning.rst +++ b/docs/sphinx/dev_guide/versioning.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/raja_license.rst b/docs/sphinx/raja_license.rst index 219bba3b07..68f00580fb 100644 --- a/docs/sphinx/raja_license.rst +++ b/docs/sphinx/raja_license.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -12,7 +12,7 @@ RAJA Copyright and License Information ====================================== -Copyright (c) 2016-23, Lawrence Livermore National Security, LLC. +Copyright (c) 2016-24, Lawrence Livermore National Security, LLC. Produced at the Lawrence Livermore National Laboratory. diff --git a/docs/sphinx/user_guide/CMakeLists.txt b/docs/sphinx/user_guide/CMakeLists.txt index 62b092c872..3a0dfb78cf 100644 --- a/docs/sphinx/user_guide/CMakeLists.txt +++ b/docs/sphinx/user_guide/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/docs/sphinx/user_guide/app_considerations.rst b/docs/sphinx/user_guide/app_considerations.rst index 5806f1a1ab..a483ea09dc 100644 --- a/docs/sphinx/user_guide/app_considerations.rst +++ b/docs/sphinx/user_guide/app_considerations.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/config_options.rst b/docs/sphinx/user_guide/config_options.rst index 37dc60baff..65115f4a50 100644 --- a/docs/sphinx/user_guide/config_options.rst +++ b/docs/sphinx/user_guide/config_options.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -193,7 +193,6 @@ are as follows (names are descriptive of what they enable): RAJA_ENABLE_CLANG_CUDA Off (RAJA_)ENABLE_HIP Off RAJA_ENABLE_TARGET_OPENMP Off (when on, ENABLE_OPENMP must also be on) - RAJA_ENABLE_TBB Off RAJA_ENABLE_SYCL Off ========================== ============================================ diff --git a/docs/sphinx/user_guide/feature/atomic.rst b/docs/sphinx/user_guide/feature/atomic.rst index 7250525fb2..a4868fdf0a 100644 --- a/docs/sphinx/user_guide/feature/atomic.rst +++ b/docs/sphinx/user_guide/feature/atomic.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/iteration_spaces.rst b/docs/sphinx/user_guide/feature/iteration_spaces.rst index e6fa50f862..217d0eac4f 100644 --- a/docs/sphinx/user_guide/feature/iteration_spaces.rst +++ b/docs/sphinx/user_guide/feature/iteration_spaces.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/local_array.rst b/docs/sphinx/user_guide/feature/local_array.rst index 92db00be56..210c64cb8d 100644 --- a/docs/sphinx/user_guide/feature/local_array.rst +++ b/docs/sphinx/user_guide/feature/local_array.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -57,12 +57,12 @@ its constituent parts:: // using POL = RAJA::KernelPolicy< - RAJA::statement::For<1, RAJA::loop_exec, + RAJA::statement::For<1, RAJA::seq_exec, RAJA::statement::InitLocalMem, - RAJA::statement::For<0, RAJA::loop_exec, + RAJA::statement::For<0, RAJA::seq_exec, RAJA::statement::Lambda<0> >, - RAJA::statement::For<0, RAJA::loop_exec, + RAJA::statement::For<0, RAJA::seq_exec, RAJA::statement::Lambda<1> > > diff --git a/docs/sphinx/user_guide/feature/loop_basic.rst b/docs/sphinx/user_guide/feature/loop_basic.rst index db93432cff..d717e60f35 100644 --- a/docs/sphinx/user_guide/feature/loop_basic.rst +++ b/docs/sphinx/user_guide/feature/loop_basic.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/plugins.rst b/docs/sphinx/user_guide/feature/plugins.rst index 72aae00add..a0e528b84b 100644 --- a/docs/sphinx/user_guide/feature/plugins.rst +++ b/docs/sphinx/user_guide/feature/plugins.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -212,7 +212,7 @@ After CHAI has been built with RAJA support enabled, applications can use CHAI array[i] = i * 2.0f; }); - RAJA::forall(0, 1000, [=] (int i) { + RAJA::forall(0, 1000, [=] (int i) { std::cout << "array[" << i << "] is " << array[i] << std::endl; }); diff --git a/docs/sphinx/user_guide/feature/policies.rst b/docs/sphinx/user_guide/feature/policies.rst index 2f707c5efd..e61be4e598 100644 --- a/docs/sphinx/user_guide/feature/policies.rst +++ b/docs/sphinx/user_guide/feature/policies.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -49,21 +49,19 @@ apply during code compilation. ====================================== ============= ========================== seq_launch_t launch Creates a sequential execution space. - seq_exec forall, Strictly sequential - kernel (For), execution. - scan, - sort + seq_exec forall, Sequential execution, + kernel (For), where the compiler is + scan, allowed to apply any + sort any optimizations + that its heuristics deem + beneficial; i.e., no loop + decorations (pragmas or + intrinsics) in the RAJA + implementation. simd_exec forall, Try to force generation of kernel (For), SIMD instructions via scan compiler hints in RAJA's internal implementation. - loop_exec forall, Allow the compiler to - kernel (For), generate any optimizations - scan, that its heuristics deem - sort beneficial; - i.e., no loop decorations - (pragmas or intrinsics) in - RAJA implementation. ====================================== ============= ========================== @@ -231,43 +229,6 @@ a template argument as described above. more code to execute in the parallel region and there is an implicit barrier at the end of it. -Threading Building Block (TBB) Parallel CPU Policies -^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - -RAJA provides a basic set of TBB execution policies for use with the -RAJA TBB back-end, which supports a subset of RAJA features. - - ====================================== ============= ========================== - Threading Building Blocks Policies Works with Brief description - ====================================== ============= ========================== - tbb_for_exec forall, Execute loop iterations. - kernel (For), as tasks in parallel using - scan TBB ``parallel_for`` - method. - tbb_for_static forall, Same as above, but use. - kernel (For), a static scheduler with - scan given chunk size. - tbb_for_dynamic forall, Same as above, but use - kernel (For), a dynamic scheduler. - scan - ====================================== ============= ========================== - -.. note:: To control the number of TBB worker threads used by these policies: - set the value of the environment variable 'TBB_NUM_WORKERS' (which is - fixed for duration of run), or create a 'task_scheduler_init' object:: - - tbb::task_scheduler_init TBBinit( nworkers ); - - // do some parallel work - - TBBinit.terminate(); - TBBinit.initialize( new_nworkers ); - - // do some more parallel work - - This allows changing number of workers at run time. - - GPU Policies for CUDA and HIP ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ @@ -668,11 +629,6 @@ omp_parallel_segit Create OpenMP parallel region and iterate over segments in parallel inside it; i.e., apply ``omp parallel for`` pragma on loop over segments. omp_parallel_for_segit Same as above. - -**Intel Threading Building Blocks** -tbb_segit Iterate over index set segments in - parallel using a TBB 'parallel_for' - method. ====================================== ========================================= ------------------------- @@ -686,11 +642,11 @@ surround code that uses execution back-ends other than OpenMP. For example:: RAJA::region([=]() { - RAJA::forall(segment, [=] (int idx) { + RAJA::forall(segment, [=] (int idx) { // do something at iterate 'idx' } ); - RAJA::forall(segment, [=] (int idx) { + RAJA::forall(segment, [=] (int idx) { // do something else at iterate 'idx' } ); @@ -725,15 +681,12 @@ Reduction Policy Loop Policies Brief description to Use With ======================= ============= ========================================== seq_reduce seq_exec, Non-parallel (sequential) reduction. - loop_exec omp_reduce any OpenMP OpenMP parallel reduction. policy omp_reduce_ordered any OpenMP OpenMP parallel reduction with result policy guaranteed to be reproducible. omp_target_reduce any OpenMP OpenMP parallel target offload reduction. target policy -tbb_reduce any TBB TBB parallel reduction. - policy cuda/hip_reduce any CUDA/HIP Parallel reduction in a CUDA/HIP kernel policy (device synchronization will occur when reduction value is finalized). @@ -766,7 +719,7 @@ Atomic Policy Loop Policies Brief description to Use With ============================= ============= ======================================== seq_atomic seq_exec, Atomic operation performed in a - loop_exec non-parallel (sequential) kernel. + non-parallel (sequential) kernel. omp_atomic any OpenMP Atomic operation in OpenM kernel.P policy multithreading or target kernel; i.e., apply ``omp atomic`` pragma. @@ -781,14 +734,12 @@ cuda/hip_atomic_explicit any CUDA/HIP Atomic operation performed in a CUDA argument. See additional explanation and example below. builtin_atomic seq_exec, Compiler *builtin* atomic operation. - loop_exec, any OpenMP policy -auto_atomic seq_exec, Atomic operation *compatible* with loop - loop_exec, execution policy. See example below. - any OpenMP Can not be used inside cuda/hip - policy, explicit atomic policies. - any +auto_atomic seq_exec, Atomic operation *compatible* with + any OpenMP loop execution policy. See example + policy, below. Cannot be used inside CUDA or + any HIP explicit atomic policies. CUDA/HIP/SYCL policy ============================= ============= ======================================== @@ -827,11 +778,8 @@ context and the CUDA atomic operation is applied. Similarly, if an OpenMP execution policy was used, the OpenMP version of the atomic operation would be used. -.. note:: * There are no RAJA atomic policies for TBB (Intel Threading Building - Blocks) execution contexts since reductions are not supported - for the RAJA TBB back-end. - * The ``builtin_atomic`` policy may be preferable to the - ``omp_atomic`` policy in terms of performance. +.. note:: The ``builtin_atomic`` policy may be preferable to the + ``omp_atomic`` policy in terms of performance. .. _localarraypolicy-label: diff --git a/docs/sphinx/user_guide/feature/reduction.rst b/docs/sphinx/user_guide/feature/reduction.rst index d73290c37c..8643e4a225 100644 --- a/docs/sphinx/user_guide/feature/reduction.rst +++ b/docs/sphinx/user_guide/feature/reduction.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -14,22 +14,22 @@ Reduction Operations RAJA does not provide separate loop execution methods for loops containing reduction operations like some other C++ loop programming abstraction models. -Instead, RAJA provides reduction types that allow users to perform reduction +Instead, RAJA provides reduction types that allow users to perform reduction operations in kernels launched using ``RAJA::forall``, ``RAJA::kernel``, -and ``RAJA::launch`` methods in a portable, thread-safe manner. Users may -use as many reduction objects in a loop kernel as they need. Available RAJA +and ``RAJA::launch`` methods in a portable, thread-safe manner. Users may +use as many reduction objects in a loop kernel as they need. Available RAJA reduction types are described in this section. .. note:: All RAJA reduction types are located in the namespace ``RAJA``. Also -.. note:: * Each RAJA reduction type is templated on a **reduction policy** +.. note:: * Each RAJA reduction type is templated on a **reduction policy** and a **reduction value type** for the reduction variable. The **reduction policy type must be compatible with the execution - policy used by the kernel in which it is used.** For example, in - a CUDA kernel, a CUDA reduction policy must be used. - * Each RAJA reduction type accepts an **initial reduction value or + policy used by the kernel in which it is used.** For example, in + a CUDA kernel, a CUDA reduction policy must be used. + * Each RAJA reduction type accepts an **initial reduction value or values** at construction (see below). * Each RAJA reduction type has a 'get' method to access reduced values after kernel execution completes. @@ -62,12 +62,12 @@ and two less common bitwise reduction types: * ``ReduceBitOr< reduce_policy, data_type >`` - Bitwise 'or' of values (i.e., ``a | b``). -.. note:: * When ``RAJA::ReduceMinLoc`` and ``RAJA::ReduceMaxLoc`` are used - in a sequential execution context, the loop index of the +.. note:: * When ``RAJA::ReduceMinLoc`` and ``RAJA::ReduceMaxLoc`` are used + in a sequential execution context, the loop index of the min/max is the first index where the min/max occurs. - * When these reductions are used in a parallel execution context, - the loop index computed for the reduction value may be any index - where the min or max occurs. + * When these reductions are used in a parallel execution context, + the loop index computed for the reduction value may be any index + where the min or max occurs. .. note:: ``RAJA::ReduceBitAnd`` and ``RAJA::ReduceBitOr`` reduction types are designed to work on integral data types because **in C++, at the language level, there is no such thing as a bitwise operator on floating-point numbers.** @@ -78,7 +78,7 @@ Reduction Examples Next, we provide a few examples to illustrate basic usage of RAJA reduction types. -Here is a simple RAJA reduction example that shows how to use a sum reduction +Here is a simple RAJA reduction example that shows how to use a sum reduction type and a min-loc reduction type:: const int N = 1000; @@ -116,12 +116,12 @@ The results of these operations will yield the following values: * my_vsum == 978 (= 998 - 10 - 10) * my_vmin == -10 - * my_vminloc == 100 or 500 + * my_vminloc == 100 or 500 Note that the location index for the minimum array value can be one of two values depending on the order of the reduction finalization since the loop is run in parallel. Also, note that the reduction objects are created using -a ``RAJA::omp_reduce`` reduction policy, which is compatible with the +a ``RAJA::omp_reduce`` reduction policy, which is compatible with the OpenMP execution policy used in the kernel. Here is an example of a bitwise or reduction:: @@ -148,8 +148,8 @@ Here is an example of a bitwise or reduction:: int my_or_reduce_val = static_cast(my_or.get()); The result of the reduction is the value '13'. In binary representation -(i.e., bits), :math:`9 = ...01001` (the vector entries) and -:math:`5 = ...00101` (the initial reduction value). +(i.e., bits), :math:`9 = ...01001` (the vector entries) and +:math:`5 = ...00101` (the initial reduction value). So :math:`9 | 5 = ...01001 | ...00101 = ...01101 = 13`. ------------------- @@ -157,22 +157,22 @@ Reduction Policies ------------------- For more information about available RAJA reduction policies and guidance -on which to use with RAJA execution policies, please see +on which to use with RAJA execution policies, please see :ref:`reducepolicy-label`. -------------------------------- Experimental Reduction Interface -------------------------------- -An experimental reduction interface is now available that offers several -usability and performance advantages over the current reduction model in RAJA. -The new interface allows ``RAJA::forall`` to take optional "plugin-like" -objects to extend the execution behavior of a ``RAJA::forall`` execution +An experimental reduction interface is now available that offers several +usability and performance advantages over the current reduction model in RAJA. +The new interface allows ``RAJA::forall`` to take optional "plugin-like" +objects to extend the execution behavior of a ``RAJA::forall`` execution context. -The new interface passes ``RAJA::expt::Reduce`` objects as function +The new interface passes ``RAJA::expt::Reduce`` objects as function arguments to ``RAJA::forall`` and provides users with thread-local variables -of the reduction data type to be updated inside the lambda. This differs +of the reduction data type to be updated inside the lambda. This differs from the current reduction model in which ``RAJA::ReduceOP`` objects are captured by the user-supplied kernel body lambda expression. @@ -185,45 +185,45 @@ RAJA::expt::Reduce double rs = 0.0; double rm = 1e100; - - RAJA::forall ( Res, Seg, + + RAJA::forall ( Res, Seg, RAJA::expt::Reduce(&rs), RAJA::expt::Reduce(&rm), [=] (int i, double& _rs, double& _rm) { _rs += a[i]; - _rm = RAJA_MIN(a[i], _rm); + _rm = RAJA_MIN(a[i], _rm); } ); - + std::cout << rs ... std::cout << rm ... * Each ``RAJA::expt::Reduce`` argument to ``RAJA::forall`` is templated on - a reduction operator, and takes a pointer to a target variable to write + a reduction operator, and takes a pointer to a target variable to write the final reduction result to, ``&rs`` and ``&rm`` in the example code above. The reduction operation will include the existing value of the given target variable. -* The kernel body lambda expression passed to ``RAJA::forall`` must have a - parameter corresponding to each ``RAJA::expt::Reduce`` argument, ``_rs`` and +* The kernel body lambda expression passed to ``RAJA::forall`` must have a + parameter corresponding to each ``RAJA::expt::Reduce`` argument, ``_rs`` and ``_rm`` in the example code. These parameters refer to a local target for each reduction operation. It is important to note that the parameters follow the - kernel iteration variable, ``i`` in this case, and appear in the same order + kernel iteration variable, ``i`` in this case, and appear in the same order as the corresponding ``RAJA::expt::Reduce`` arguments to ``RAJA::forall``. The parameter types must be references to the types used in the ``RAJA::expt::Reduce`` arguments. -* The local variables referred to by ``_rs`` and ``_rm`` are initialized with +* The local variables referred to by ``_rs`` and ``_rm`` are initialized with the *identity* of the reduction operation to be performed. * The local variables are updated in the user supplied lambda. -* The local variables are reduced to a single value, combining their values +* The local variables are reduced to a single value, combining their values across all threads participating in the ``RAJA::forall`` execution. -* Finally, the target variable is updated with the result of the - ``RAJA::forall`` reduction by performing the reduction operation to combine - the existing value of the target variable and the result of the +* Finally, the target variable is updated with the result of the + ``RAJA::forall`` reduction by performing the reduction operation to combine + the existing value of the target variable and the result of the ``RAJA::forall`` reduction. -* The final reduction value is accessed by referencing the target variable +* The final reduction value is accessed by referencing the target variable passed to ``RAJA::expt::Reduce`` in the ``RAJA::forall`` method. -.. note:: In the above example ``Res`` is a resource object that must be +.. note:: In the above example ``Res`` is a resource object that must be compatible with the ``EXEC_POL``. ``Seg`` is the iteration space object for ``RAJA::forall``. @@ -235,24 +235,24 @@ RAJA::expt::Reduce RAJA::expt::ValLoc .................. -As with the current RAJA reduction interface, the new interface supports *loc* -reductions, which provide the ability to get a kernel/loop index at which the -final reduction value was found. With this new interface, *loc* reductions +As with the current RAJA reduction interface, the new interface supports *loc* +reductions, which provide the ability to get a kernel/loop index at which the +final reduction value was found. With this new interface, *loc* reductions are performed using ``ValLoc`` types. Since they are strongly typed, they -provide ``min()`` and ``max()`` operations that are equivalent to using +provide ``min()`` and ``max()`` operations that are equivalent to using ``RAJA_MIN()`` or ``RAJA_MAX`` macros as demonstrated in the code example below. -Users must use the ``getVal()`` and ``getLoc()`` methods to access the reduction +Users must use the ``getVal()`` and ``getLoc()`` methods to access the reduction results:: double* a = ...; using VL_DOUBLE = RAJA::expt::ValLoc; VL_DOUBLE rm_loc; - - RAJA::forall ( Res, Seg, + + RAJA::forall ( Res, Seg, RAJA::expt::Reduce(&rm_loc), [=] (int i, VL_DOUBLE& _rm_loc) { - _rm_loc = RAJA_MIN(VL_DOUBLE(a[i], i), _rm_loc); + _rm_loc = RAJA_MIN(VL_DOUBLE(a[i], i), _rm_loc); //_rm_loc.min(VL_DOUBLE(a[i], i)); // Alternative to RAJA_MIN } ); @@ -272,15 +272,15 @@ any number of ``RAJA::expt::Reduce`` objects to the ``RAJA::forall`` method:: VL_DOUBLE rm_loc; double rs; double rm; - - RAJA::forall ( Res, Seg, + + RAJA::forall ( Res, Seg, RAJA::expt::Reduce(&rs), // --> 1 double added RAJA::expt::Reduce(&rm), // --> 1 double added RAJA::expt::Reduce(&rm_loc), // --> 1 VL_DOUBLE added RAJA::expt::KernelName("MyFirstRAJAKernel"), // --> NO args added [=] (int i, double& _rs, double& _rm, VL_DOUBLE& _rm_loc) { _rs += a[i]; - _rm = RAJA_MIN(a[i], _rm); + _rm = RAJA_MIN(a[i], _rm); _rm_loc.min(VL_DOUBLE(a[i], i)); } ); @@ -291,22 +291,58 @@ any number of ``RAJA::expt::Reduce`` objects to the ``RAJA::forall`` method:: std::cout << rm_loc.getLoc() ... Again, the lambda expression parameters are in the same order as -the ``RAJA::expt::Reduce`` arguments to ``RAJA::forall``. Both the types and -order of the parameters must match to get correct results and to compile +the ``RAJA::expt::Reduce`` arguments to ``RAJA::forall``. Both the types and +order of the parameters must match to get correct results and to compile successfully. Otherwise, a static assertion will be triggered:: LAMBDA Not invocable w/ EXPECTED_ARGS. .. note:: This static assert is only enabled when passing an undecorated C++ - lambda. Meaning, this check will not happen when passing + lambda. Meaning, this check will not happen when passing extended-lambdas (i.e. DEVICE tagged lambdas) or other functor like objects. .. note:: The experimental ``RAJA::forall`` interface is more flexible than the current implementation, other optional arguments besides ``RAJA::expt::Reduce`` can be passed to a ``RAJA::forall`` to extend - its behavior. In the above example we demonstrate using - ``RAJA::expt::KernelName``, which wraps a ``RAJA::forall`` executing - under a ``HIP`` or ``CUDA`` policy in a named region. Use of + its behavior. In the above example we demonstrate using + ``RAJA::expt::KernelName``, which wraps a ``RAJA::forall`` executing + under a ``HIP`` or ``CUDA`` policy in a named region. Use of ``RAJA::expt::KernelName`` does not require an additional parameter in the lambda expression. + + +Experimental reduction support in Launch +........................................ + +The experimental reduction interface is also supported with the ``RAJA::launch`` API. +The usage of the experiemental reductions is similar to the forall example as illustrated below:: + + double* a = ...; + + double rs = 0.0; + double rm = 1e100; + + RAJA::launch ( Res, + RAJA::expt::Reduce(&rs), + RAJA::expt::Reduce(&rm), + "LaunchReductionKernel", + [=] RAJA_HOST_DEVICE (int i, double& _rs, double& _rm) { + + RAJA::loop(ctx, Seg, [&] (int i) { + + _rs += a[i]; + _rm = RAJA_MIN(a[i], _rm); + + } + ); + + } + ); + + std::cout << rs ... + std::cout << rm ... + +All experimental reduction operators are supported within ``RAJA::launch``. Kernel naming in +launch does currently employ a different strategy as illustrated above but will be unified in a future +release. A wide range of examples may be found under ``examples/launch-param-reductions.cpp``. diff --git a/docs/sphinx/user_guide/feature/resource.rst b/docs/sphinx/user_guide/feature/resource.rst index 1d8460e71c..860af3eddd 100644 --- a/docs/sphinx/user_guide/feature/resource.rst +++ b/docs/sphinx/user_guide/feature/resource.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/scan.rst b/docs/sphinx/user_guide/feature/scan.rst index badd99ba95..ba7a30ba41 100644 --- a/docs/sphinx/user_guide/feature/scan.rst +++ b/docs/sphinx/user_guide/feature/scan.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/sort.rst b/docs/sphinx/user_guide/feature/sort.rst index 075032d2d6..3a950abe36 100644 --- a/docs/sphinx/user_guide/feature/sort.rst +++ b/docs/sphinx/user_guide/feature/sort.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/tiling.rst b/docs/sphinx/user_guide/feature/tiling.rst index b42ac964c0..da98d89b95 100644 --- a/docs/sphinx/user_guide/feature/tiling.rst +++ b/docs/sphinx/user_guide/feature/tiling.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -79,7 +79,7 @@ The ``RAJA::launch`` API also supports loop tiling through specialized methods. The launch version of the code above is :: using launch_t = RAJA::LaunchPolicy; - using loop_t = RAJA::LoopPolicy; + using loop_t = RAJA::LoopPolicy; RAJA::launch( RAJA::LaunchParams(), RAJA_HOST_DEVICE(RAJA::launchContext ctx) { @@ -154,7 +154,7 @@ The launch API uses ``RAJA::tile_tcount`` and ``RAJA::loop_icount`` methods which has a second argument on the lambda for the index. We illustrate usage below:: using launch_t = RAJA::LaunchPolicy; - using loop_t = RAJA::LoopPolicy; + using loop_t = RAJA::LoopPolicy; RAJA::launch( RAJA::LaunchParams(), RAJA_HOST_DEVICE(RAJA::launchContext ctx) { diff --git a/docs/sphinx/user_guide/feature/vectorization.rst b/docs/sphinx/user_guide/feature/vectorization.rst index 4b5678dff6..33b8b28514 100644 --- a/docs/sphinx/user_guide/feature/vectorization.rst +++ b/docs/sphinx/user_guide/feature/vectorization.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/feature/view.rst b/docs/sphinx/user_guide/feature/view.rst index 03bb7bc2c9..ca28e1db1b 100644 --- a/docs/sphinx/user_guide/feature/view.rst +++ b/docs/sphinx/user_guide/feature/view.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -330,6 +330,64 @@ indices by :math:`N`, :: } } +Index Layout +^^^^^^^^^^^^ + +``RAJA::IndexLayout`` is a layout that can use an index list to map input +indices to an entry within a view. Each dimension of the layout is required to +have its own indexing strategy to determine this mapping. + +Three indexing strategies are natively supported in RAJA: ``RAJA::DirectIndex``, +``RAJA::IndexList``, and ``RAJA::ConditionalIndexList``. ``DirectIndex`` +maps an input index to itself, and does not take any arguments in its +constructor. The ``IndexList`` strategy takes a pointer to an array of +indices. With this strategy, a given input index is mapped to the entry in its +list corresponding to that index. Lastly, the +``ConditionalIndexStrategy`` takes a pointer to an array of indices. When +the pointer is not a null pointer, the ``ConditionalIndex`` strategy is +equivalent to that of the ``IndexList``. If the index list provided to +the constructor is a null pointer, the ``ConditionalIndexList`` is +identical to the ``DirectIndex`` strategy. The +``ConditionalIndexList`` strategy is useful when the index list is not +initialized for some situations. + +A simple illustrative example is shown below:: + + int data[2][3]; + + for (int i = 0; i < 2; i ++ ) { + for (int j = 0; j < 3; j ++ ) { + // fill data[i][j]... + } + } + + int index_list[2] = {1,2}; + + auto index_tuple = RAJA::tuple, RAJA::IndexList<>>( + RAJA::DirectIndex<>(), RAJA::IndexList<>{&index_list[0]}); + + auto index_layout = RAJA::make_index_layout(index_tuple, 2, 3); + auto view = RAJA::make_index_view(&data[0][0], index_layout); + + assert( view(1,0) == data[1][1] ); + assert( &view(1,1) == &data[1][2] ); + +In the above example, a two-dimensional index layout is created with extents 2 +and 3 for the first and second dimension, respectively. A ``DirectIndex`` +strategy is implemented for the first dimension and ``IndexList`` is used +with the entries for the second dimension with the list {1,2}. With this +layout, the view created above will choose the entry along the first dimension +based on the first input index provided, and the second provided index will be +mapped to that corresponding entry of the index_list for the second dimension. + +.. note:: There is currently no bounds checking implemented for + ``IndexLayout``. When using the ``IndexList`` or + ``ConditionalIndexList`` strategies, it is the user's + responsibility to know the extents of the index lists when accessing + data from a view. It is also the user's responsibility to ensure + the index lists being used reside in the same memory space as the + data stored in the view. + ------------------- RAJA Index Mapping ------------------- diff --git a/docs/sphinx/user_guide/feature/workgroup.rst b/docs/sphinx/user_guide/feature/workgroup.rst index 18547e26ba..754524345b 100644 --- a/docs/sphinx/user_guide/feature/workgroup.rst +++ b/docs/sphinx/user_guide/feature/workgroup.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and other RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -79,13 +79,11 @@ loop. try to force generation of SIMD instructions via compiler hints in RAJA internal implementation. - loop_work Execute loop iterations sequentially and + seq_work Execute loop iterations sequentially and allow compiler to generate any optimizations. omp_work Execute loop iterations in parallel using OpenMP. - tbb_work Execute loop iterations in parallel - using TBB. cuda_work, Execute loop iterations in parallel cuda_work_async using a CUDA kernel launched with given thread-block size. diff --git a/docs/sphinx/user_guide/features.rst b/docs/sphinx/user_guide/features.rst index e59b5655ee..4d9e4bf711 100644 --- a/docs/sphinx/user_guide/features.rst +++ b/docs/sphinx/user_guide/features.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/getting_started.rst b/docs/sphinx/user_guide/getting_started.rst index 7389a8ca76..62196fff00 100644 --- a/docs/sphinx/user_guide/getting_started.rst +++ b/docs/sphinx/user_guide/getting_started.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -20,8 +20,8 @@ Requirements ============ The primary requirement for using RAJA is a C++14 standard compliant compiler. -Certain features, such as various programming model back-ends like CUDA or HIP, -msut be supported by the compiler you chose to use them. Available RAJA +Certain features, such as programming model back-ends like CUDA or HIP, +must be supported by the compiler you chose to use them. Available RAJA configuration options and how to enable or disable features are described in :ref:`configopt-label`. diff --git a/docs/sphinx/user_guide/index.rst b/docs/sphinx/user_guide/index.rst index 4abdd1babe..f2fb6ca46d 100644 --- a/docs/sphinx/user_guide/index.rst +++ b/docs/sphinx/user_guide/index.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial.rst b/docs/sphinx/user_guide/tutorial.rst index 9a8c04b419..e153553fc7 100644 --- a/docs/sphinx/user_guide/tutorial.rst +++ b/docs/sphinx/user_guide/tutorial.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -95,7 +95,7 @@ Here, "ExecPol", "IdxType", and "LoopBody" are C++ types that a user specifies in her code and which are seen by the compiler when the code is built. For example:: - RAJA::forall< RAJA::loop_exec >( RAJA::TypedRangeSegment(0, N), [=](int i) { + RAJA::forall< RAJA::seq_exec >( RAJA::TypedRangeSegment(0, N), [=](int i) { a[i] = b[i] + c[i]; }); @@ -106,7 +106,7 @@ The C-style analogue of this kernel is:: a[i] = b[i] + c[i]; } -The execution policy type ``RAJA::loop_exec`` template argument +The execution policy type ``RAJA::seq_exec`` template argument is used to choose as specific implementation of the ``RAJA::forall`` method. The ``IdxType`` and ``LoopBody`` types are deduced by the compiler based the arguments passed to the ``RAJA::forall`` method; diff --git a/docs/sphinx/user_guide/tutorial/add_vectors.rst b/docs/sphinx/user_guide/tutorial/add_vectors.rst index 5bfc913d02..ad145835cf 100644 --- a/docs/sphinx/user_guide/tutorial/add_vectors.rst +++ b/docs/sphinx/user_guide/tutorial/add_vectors.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -59,22 +59,15 @@ policy type: :end-before: _rajaseq_vector_add_end :language: C++ -The RAJA sequential execution policy enforces strictly sequential execution; -in particular, no SIMD vectorization instructions or other substantial -optimizations will be generated by the compiler. To attempt to force the -compiler to generate SIMD vector instructions, we would use the RAJA SIMD -execution policy:: +When using the RAJA sequential execution policy, the resulting loop +implementation is essentially the same as writing a C-style for-loop +with no directives applied to the loop. The compiler is allowed to +perform any optimizations that its heuristics deem are safe and potentially +beneficial for performance. To attempt to force the compiler to generate SIMD +vector instructions, we would use the RAJA SIMD execution policy:: RAJA::simd_exec -An alternative RAJA policy is:: - - RAJA::loop_exec - -which allows the compiler to generate optimizations based on how its internal -heuristics suggest that it is safe to do so and potentially -beneficial for performance, but the optimizations are not forced. - To run the kernel with OpenMP multithreaded parallelism on a CPU, we use the ``RAJA::omp_parallel_for_exec`` execution policy: diff --git a/docs/sphinx/user_guide/tutorial/atomic_histogram.rst b/docs/sphinx/user_guide/tutorial/atomic_histogram.rst index 6f92e599b5..12baef641d 100644 --- a/docs/sphinx/user_guide/tutorial/atomic_histogram.rst +++ b/docs/sphinx/user_guide/tutorial/atomic_histogram.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/dot_product.rst b/docs/sphinx/user_guide/tutorial/dot_product.rst index f49a5b47b6..b6e2535e9c 100644 --- a/docs/sphinx/user_guide/tutorial/dot_product.rst +++ b/docs/sphinx/user_guide/tutorial/dot_product.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/gaussSeidel.rst-KEEP b/docs/sphinx/user_guide/tutorial/gaussSeidel.rst-KEEP index 747af45f0d..5810653095 100644 --- a/docs/sphinx/user_guide/tutorial/gaussSeidel.rst-KEEP +++ b/docs/sphinx/user_guide/tutorial/gaussSeidel.rst-KEEP @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/halo-exchange.rst b/docs/sphinx/user_guide/tutorial/halo-exchange.rst index 2476590be7..0050e6310a 100644 --- a/docs/sphinx/user_guide/tutorial/halo-exchange.rst +++ b/docs/sphinx/user_guide/tutorial/halo-exchange.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/indexset_segments.rst b/docs/sphinx/user_guide/tutorial/indexset_segments.rst index 90fa7d3e73..e867dc13d2 100644 --- a/docs/sphinx/user_guide/tutorial/indexset_segments.rst +++ b/docs/sphinx/user_guide/tutorial/indexset_segments.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/jacobi.rst-KEEP b/docs/sphinx/user_guide/tutorial/jacobi.rst-KEEP index 6d5016ff08..aff5e08643 100644 --- a/docs/sphinx/user_guide/tutorial/jacobi.rst-KEEP +++ b/docs/sphinx/user_guide/tutorial/jacobi.rst-KEEP @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/kernel_exec_pols.rst b/docs/sphinx/user_guide/tutorial/kernel_exec_pols.rst index fedea62209..82d868645b 100644 --- a/docs/sphinx/user_guide/tutorial/kernel_exec_pols.rst +++ b/docs/sphinx/user_guide/tutorial/kernel_exec_pols.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -133,7 +133,7 @@ and :language: C++ The first of these, in which we parallelize the outer 'k' loop, replaces -the ``RAJA::loop_exec`` loop execution policy with the +the ``RAJA::seq_exec`` loop execution policy with the ``RAJA::omp_parallel_for_exec`` policy, which applies the same OpenMP directive to the outer loop used in the C-style variant. diff --git a/docs/sphinx/user_guide/tutorial/kernel_nested_loop_reorder.rst b/docs/sphinx/user_guide/tutorial/kernel_nested_loop_reorder.rst index 9c0d3d2f13..536e78e90e 100644 --- a/docs/sphinx/user_guide/tutorial/kernel_nested_loop_reorder.rst +++ b/docs/sphinx/user_guide/tutorial/kernel_nested_loop_reorder.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/launch_basic.rst b/docs/sphinx/user_guide/tutorial/launch_basic.rst index 19f6f153ca..2682037860 100644 --- a/docs/sphinx/user_guide/tutorial/launch_basic.rst +++ b/docs/sphinx/user_guide/tutorial/launch_basic.rst @@ -74,10 +74,10 @@ The mapping between teams and threads to the underlying programming model depends on how the ``RAJA::loop`` template parameter types are defined. For example, we may define host and device mapping strategies as:: - using teams_x = RAJA::LoopPolicy; - using thread_x = RAJA::LoopPolicy; + using teams_x = RAJA::LoopPolicy< RAJA::seq_exec, + RAJA::cuda_block_x_direct >; + using thread_x = RAJA::LoopPolicy< RAJA::seq_exec, + RAJA::cuda_block_x_direct >; Here, the ``RAJA::LoopPolicy`` type holds both the host (CPU) and device (CUDA GPU) loop mapping strategies. On the host, both the team/thread diff --git a/docs/sphinx/user_guide/tutorial/launch_exec_pols.rst b/docs/sphinx/user_guide/tutorial/launch_exec_pols.rst index 5a09e08799..21223a5dc2 100644 --- a/docs/sphinx/user_guide/tutorial/launch_exec_pols.rst +++ b/docs/sphinx/user_guide/tutorial/launch_exec_pols.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/matrix_multiply.rst b/docs/sphinx/user_guide/tutorial/matrix_multiply.rst index 66abcee73b..e566b8d23c 100644 --- a/docs/sphinx/user_guide/tutorial/matrix_multiply.rst +++ b/docs/sphinx/user_guide/tutorial/matrix_multiply.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/matrix_transpose.rst b/docs/sphinx/user_guide/tutorial/matrix_transpose.rst index b3d4f0bda1..4f85bb4d88 100644 --- a/docs/sphinx/user_guide/tutorial/matrix_transpose.rst +++ b/docs/sphinx/user_guide/tutorial/matrix_transpose.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## @@ -99,7 +99,7 @@ and number of blocks to launch is determined by the implementation of the For ``RAJA::launch`` variants, we use ``RAJA::loop`` methods to write a loop hierarchy within the kernel execution space. For a sequential implementation, we pass the ``RAJA::seq_launch_t`` template parameter -to the launch method and pass the ``RAJA::loop_exec`` parameter to the loop +to the launch method and pass the ``RAJA::seq_exec`` parameter to the loop methods. The complete sequential ``RAJA::launch`` variant is: .. literalinclude:: ../../../../exercises/launch-matrix-transpose_solution.cpp diff --git a/docs/sphinx/user_guide/tutorial/matrix_transpose_local_array.rst b/docs/sphinx/user_guide/tutorial/matrix_transpose_local_array.rst index 0bb70fa94e..780b5da285 100644 --- a/docs/sphinx/user_guide/tutorial/matrix_transpose_local_array.rst +++ b/docs/sphinx/user_guide/tutorial/matrix_transpose_local_array.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/matrix_transpose_tiled.rst b/docs/sphinx/user_guide/tutorial/matrix_transpose_tiled.rst index 06e5b484ed..8cc733be8c 100644 --- a/docs/sphinx/user_guide/tutorial/matrix_transpose_tiled.rst +++ b/docs/sphinx/user_guide/tutorial/matrix_transpose_tiled.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/offset-layout-5pt-stencil.rst b/docs/sphinx/user_guide/tutorial/offset-layout-5pt-stencil.rst index 916ee7b956..8e4f3babf0 100644 --- a/docs/sphinx/user_guide/tutorial/offset-layout-5pt-stencil.rst +++ b/docs/sphinx/user_guide/tutorial/offset-layout-5pt-stencil.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/permuted-layout-batch-matrix-multiply.rst b/docs/sphinx/user_guide/tutorial/permuted-layout-batch-matrix-multiply.rst index aab7d9bd22..e8a709ab33 100644 --- a/docs/sphinx/user_guide/tutorial/permuted-layout-batch-matrix-multiply.rst +++ b/docs/sphinx/user_guide/tutorial/permuted-layout-batch-matrix-multiply.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/reductions.rst b/docs/sphinx/user_guide/tutorial/reductions.rst index 07d8ed4618..6a3e196aee 100644 --- a/docs/sphinx/user_guide/tutorial/reductions.rst +++ b/docs/sphinx/user_guide/tutorial/reductions.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/scan.rst b/docs/sphinx/user_guide/tutorial/scan.rst index 72f13630f8..b18da452ef 100644 --- a/docs/sphinx/user_guide/tutorial/scan.rst +++ b/docs/sphinx/user_guide/tutorial/scan.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/sort.rst b/docs/sphinx/user_guide/tutorial/sort.rst index 6c2035c269..c2d6e8bd03 100644 --- a/docs/sphinx/user_guide/tutorial/sort.rst +++ b/docs/sphinx/user_guide/tutorial/sort.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/vertexsum_coloring.rst b/docs/sphinx/user_guide/tutorial/vertexsum_coloring.rst index 29d118c6c3..96528c138a 100644 --- a/docs/sphinx/user_guide/tutorial/vertexsum_coloring.rst +++ b/docs/sphinx/user_guide/tutorial/vertexsum_coloring.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/view_layout.rst b/docs/sphinx/user_guide/tutorial/view_layout.rst index 7cfa936f69..252a9fe8b1 100644 --- a/docs/sphinx/user_guide/tutorial/view_layout.rst +++ b/docs/sphinx/user_guide/tutorial/view_layout.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/tutorial/wave.rst-KEEP b/docs/sphinx/user_guide/tutorial/wave.rst-KEEP index 3b88ce2b67..108805205a 100644 --- a/docs/sphinx/user_guide/tutorial/wave.rst-KEEP +++ b/docs/sphinx/user_guide/tutorial/wave.rst-KEEP @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/sphinx/user_guide/using_raja.rst b/docs/sphinx/user_guide/using_raja.rst index cb606440cc..6dc8086a9c 100644 --- a/docs/sphinx/user_guide/using_raja.rst +++ b/docs/sphinx/user_guide/using_raja.rst @@ -1,5 +1,5 @@ .. ## -.. ## Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +.. ## Copyright (c) 2016-24, Lawrence Livermore National Security, LLC .. ## and RAJA project contributors. See the RAJA/LICENSE file .. ## for details. .. ## diff --git a/docs/style_guide.md b/docs/style_guide.md index c5f43fc29b..e0854e82eb 100644 --- a/docs/style_guide.md +++ b/docs/style_guide.md @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt index 13c1395ee8..7fd580972b 100644 --- a/examples/CMakeLists.txt +++ b/examples/CMakeLists.txt @@ -19,6 +19,10 @@ raja_add_executable( NAME forall-param-reductions SOURCES forall-param-reductions.cpp) +raja_add_executable( + NAME launch-param-reductions + SOURCES launch-param-reductions.cpp) + raja_add_executable( NAME resource-dynamic-forall SOURCES resource-dynamic-forall.cpp) diff --git a/examples/dynamic-forall.cpp b/examples/dynamic-forall.cpp index f68de1b7b6..5131010bd6 100644 --- a/examples/dynamic-forall.cpp +++ b/examples/dynamic-forall.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/dynamic_mat_transpose.cpp b/examples/dynamic_mat_transpose.cpp index 4a03b33c39..9fc973e311 100644 --- a/examples/dynamic_mat_transpose.cpp +++ b/examples/dynamic_mat_transpose.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/forall-param-reductions.cpp b/examples/forall-param-reductions.cpp index 8f557c36ec..8e16113c95 100644 --- a/examples/forall-param-reductions.cpp +++ b/examples/forall-param-reductions.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/jacobi.cpp b/examples/jacobi.cpp index fd28b67a3e..0badaa7396 100644 --- a/examples/jacobi.cpp +++ b/examples/jacobi.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/launch-param-reductions.cpp b/examples/launch-param-reductions.cpp new file mode 100644 index 0000000000..7dec3595a6 --- /dev/null +++ b/examples/launch-param-reductions.cpp @@ -0,0 +1,345 @@ +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +#include +#include +#include + +#include "memoryManager.hpp" + +#include "RAJA/RAJA.hpp" + +/* + * Reduction Example + * + * This example illustrates use of the RAJA reduction types: min, max, + * sum, min-loc, and max-loc. + * + * RAJA features shown: + * - `forall` loop iteration template method + * - Index range segment + * - Execution policies + * - Reduction types + * + * If CUDA is enabled, CUDA unified memory is used. + */ + +/* + Specify the number of threads in a GPU thread block +*/ +#if defined(RAJA_ENABLE_CUDA) +constexpr int CUDA_BLOCK_SIZE = 256; +#endif + +#if defined(RAJA_ENABLE_HIP) +constexpr int HIP_BLOCK_SIZE = 256; +#endif + +int main(int RAJA_UNUSED_ARG(argc), char** RAJA_UNUSED_ARG(argv[])) +{ + + std::cout << "\n\nRAJA reductions example...\n"; + + // _reductions_array_init_start +// +// Define array length +// + constexpr int N = 1000000; + +// +// Allocate array data and initialize data to alternating sequence of 1, -1. +// + int* a = memoryManager::allocate(N); + + for (int i = 0; i < N; ++i) { + if ( i % 2 == 0 ) { + a[i] = 1; + } else { + a[i] = -1; + } + } + +// +// Set min and max loc values +// + constexpr int minloc_ref = N / 2; + a[minloc_ref] = -100; + + constexpr int maxloc_ref = N / 2 + 1; + a[maxloc_ref] = 100; + // _reductions_array_init_end + +// +// Note: with this data initialization scheme, the following results will +// be observed for all reduction kernels below: +// +// - the sum will be zero +// - the min will be -100 +// - the max will be 100 +// - the min loc will be N/2 +// - the max loc will be N/2 + 1 +// +// + +// +// Define index range for iterating over a elements in all examples +// + // _reductions_range_start + RAJA::TypedRangeSegment arange(0, N); + // _reductions_range_end + +// +// Define ValLoc Type +// + + using VALLOC_INT = RAJA::expt::ValLoc; +//----------------------------------------------------------------------------// + + std::cout << "\n Running RAJA sequential reductions...\n"; + + // _reductions_raja_seq_start + using LAUNCH_POL1 = RAJA::LaunchPolicy; + using LOOP_POL1 = RAJA::LoopPolicy; + + int seq_sum = 0; + int seq_min = std::numeric_limits::max(); + int seq_max = std::numeric_limits::min(); + VALLOC_INT seq_minloc(std::numeric_limits::max(), -1); + VALLOC_INT seq_maxloc(std::numeric_limits::min(), -1); + + //RAJA::forall(arange, + RAJA::launch + (RAJA::LaunchParams(), "SeqReductionKernel", + RAJA::expt::Reduce(&seq_sum), + RAJA::expt::Reduce(&seq_min), + RAJA::expt::Reduce(&seq_max), + RAJA::expt::Reduce(&seq_minloc), + RAJA::expt::Reduce(&seq_maxloc), + [=] RAJA_HOST_DEVICE (RAJA::LaunchContext ctx, + int &_seq_sum, int &_seq_min, + int &_seq_max, VALLOC_INT &_seq_minloc, + VALLOC_INT &_seq_maxloc) { + + RAJA::loop(ctx, arange, [&] (int i) { + + _seq_sum += a[i]; + + _seq_min = RAJA_MIN(a[i], _seq_min); + _seq_max = RAJA_MAX(a[i], _seq_max); + + _seq_minloc = RAJA_MIN(VALLOC_INT(a[i], i), _seq_minloc); + _seq_maxloc = RAJA_MAX(VALLOC_INT(a[i], i), _seq_maxloc); + //_seq_minloc.min(a[i], i); + //_seq_maxloc.max(a[i], i); + // Note : RAJA::expt::ValLoc objects provide min() and max() methods + // that are equivalent to the assignments with RAJA_MIN and RAJA_MAX + // above. + } + ); + + } + ); + + std::cout << "\tsum = " << seq_sum << std::endl; + std::cout << "\tmin = " << seq_min << std::endl; + std::cout << "\tmax = " << seq_max << std::endl; + std::cout << "\tmin, loc = " << seq_minloc.getVal() << " , " + << seq_minloc.getLoc() << std::endl; + std::cout << "\tmax, loc = " << seq_maxloc.getVal() << " , " + << seq_maxloc.getLoc() << std::endl; + // _reductions_raja_seq_end + + +//----------------------------------------------------------------------------// + +#if defined(RAJA_ENABLE_OPENMP) + std::cout << "\n Running RAJA OpenMP reductions...\n"; + + // _reductions_raja_omppolicy_start + using LAUNCH_POL2 = RAJA::LaunchPolicy; + using LOOP_POL2 = RAJA::LoopPolicy; + // _reductions_raja_omppolicy_end + + int omp_sum = 0; + int omp_min = std::numeric_limits::max(); + int omp_max = std::numeric_limits::min(); + VALLOC_INT omp_minloc(std::numeric_limits::max(), -1); + VALLOC_INT omp_maxloc(std::numeric_limits::min(), -1); + + RAJA::launch + (RAJA::LaunchParams(), "OmpReductionKernel", + RAJA::expt::Reduce(&omp_sum), + RAJA::expt::Reduce(&omp_min), + RAJA::expt::Reduce(&omp_max), + RAJA::expt::Reduce(&omp_minloc), + RAJA::expt::Reduce(&omp_maxloc), + [=] RAJA_HOST_DEVICE (RAJA::LaunchContext ctx, + int &_omp_sum, int &_omp_min, + int &_omp_max, VALLOC_INT &_omp_minloc, + VALLOC_INT &_omp_maxloc) { + + RAJA::loop(ctx, arange, [&] (int i) { + + _omp_sum += a[i]; + + _omp_min = RAJA_MIN(a[i], _omp_min); + _omp_max = RAJA_MAX(a[i], _omp_max); + + _omp_minloc = RAJA_MIN(VALLOC_INT(a[i], i), _omp_minloc); + _omp_maxloc = RAJA_MAX(VALLOC_INT(a[i], i), _omp_maxloc); + //_omp_minloc.min(a[i], i); + //_omp_maxloc.max(a[i], i); + } + ); + + } + ); + + std::cout << "\tsum = " << omp_sum << std::endl; + std::cout << "\tmin = " << omp_min << std::endl; + std::cout << "\tmax = " << omp_max << std::endl; + std::cout << "\tmin, loc = " << omp_minloc.getVal() << " , " + << omp_minloc.getLoc() << std::endl; + std::cout << "\tmax, loc = " << omp_maxloc.getVal() << " , " + << omp_maxloc.getLoc() << std::endl; + +#endif + +//----------------------------------------------------------------------------// + +#if defined(RAJA_ENABLE_CUDA) + std::cout << "\n Running RAJA CUDA reductions...\n"; + + // _reductions_raja_cudapolicy_start + using LAUNCH_POL3 = RAJA::LaunchPolicy>; + using LOOP_POL3 = RAJA::LoopPolicy; + // _reductions_raja_cudapolicy_end + + const int NUMBER_OF_TEAMS = (N-1)/CUDA_BLOCK_SIZE + 1; + + int cuda_sum = 0; + int cuda_min = std::numeric_limits::max(); + int cuda_max = std::numeric_limits::min(); + VALLOC_INT cuda_minloc(std::numeric_limits::max(), -1); + VALLOC_INT cuda_maxloc(std::numeric_limits::min(), -1); + + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(NUMBER_OF_TEAMS), RAJA::Threads(CUDA_BLOCK_SIZE)), + "CUDAReductionKernel", + RAJA::expt::Reduce(&cuda_sum), + RAJA::expt::Reduce(&cuda_min), + RAJA::expt::Reduce(&cuda_max), + RAJA::expt::Reduce(&cuda_minloc), + RAJA::expt::Reduce(&cuda_maxloc), + [=] RAJA_HOST_DEVICE (RAJA::LaunchContext ctx, + int &_cuda_sum, int &_cuda_min, int &_cuda_max, + VALLOC_INT &_cuda_minloc, VALLOC_INT &_cuda_maxloc) { + + + RAJA::loop(ctx, arange, [&] (int i) { + + _cuda_sum += a[i]; + + _cuda_min = RAJA_MIN(a[i], _cuda_min); + _cuda_max = RAJA_MAX(a[i], _cuda_max); + + _cuda_minloc = RAJA_MIN(VALLOC_INT(a[i], i), _cuda_minloc); + _cuda_maxloc = RAJA_MAX(VALLOC_INT(a[i], i), _cuda_maxloc); + //_cuda_minloc.min(a[i], i); + //_cuda_maxloc.max(a[i], i); + + } + ); + + + } + ); + + std::cout << "\tsum = " << cuda_sum << std::endl; + std::cout << "\tmin = " << cuda_min << std::endl; + std::cout << "\tmax = " << cuda_max << std::endl; + std::cout << "\tmin, loc = " << cuda_minloc.getVal() << " , " + << cuda_minloc.getLoc() << std::endl; + std::cout << "\tmax, loc = " << cuda_maxloc.getVal() << " , " + << cuda_maxloc.getLoc() << std::endl; + +#endif + +//----------------------------------------------------------------------------// + +#if defined(RAJA_ENABLE_HIP) + std::cout << "\n Running RAJA HIP reductions...\n"; + + int* d_a = memoryManager::allocate_gpu(N); + hipErrchk(hipMemcpy( d_a, a, N * sizeof(int), hipMemcpyHostToDevice )); + + // _reductions_raja_hippolicy_start + using LAUNCH_POL3 = RAJA::LaunchPolicy>; + using LOOP_POL3 = RAJA::LoopPolicy; + // _reductions_raja_hippolicy_end + + const int NUMBER_OF_TEAMS = (N-1)/HIP_BLOCK_SIZE + 1; + + int hip_sum = 0; + int hip_min = std::numeric_limits::max(); + int hip_max = std::numeric_limits::min(); + VALLOC_INT hip_minloc(std::numeric_limits::max(), -1); + VALLOC_INT hip_maxloc(std::numeric_limits::min(), -1); + + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(NUMBER_OF_TEAMS), RAJA::Threads(HIP_BLOCK_SIZE)), + "HipReductionKernel", + RAJA::expt::Reduce(&hip_sum), + RAJA::expt::Reduce(&hip_min), + RAJA::expt::Reduce(&hip_max), + RAJA::expt::Reduce(&hip_minloc), + RAJA::expt::Reduce(&hip_maxloc), + [=] RAJA_HOST_DEVICE (RAJA::LaunchContext ctx, + int &_hip_sum, int &_hip_min, + int &_hip_max, VALLOC_INT &_hip_minloc, + VALLOC_INT &_hip_maxloc) { + + RAJA::loop(ctx, arange, [&] (int i) { + + _hip_sum += d_a[i]; + + _hip_min = RAJA_MIN(d_a[i], _hip_min); + _hip_max = RAJA_MAX(d_a[i], _hip_max); + + _hip_minloc = RAJA_MIN(VALLOC_INT(d_a[i], i), _hip_minloc); + _hip_maxloc = RAJA_MAX(VALLOC_INT(d_a[i], i), _hip_maxloc); + //_hip_minloc.min(d_a[i], i); + //_hip_maxloc.max(d_a[i], i); + + } + ); + + } + ); + + std::cout << "\tsum = " << hip_sum << std::endl; + std::cout << "\tmin = " << hip_min << std::endl; + std::cout << "\tmax = " << hip_max << std::endl; + std::cout << "\tmin, loc = " << hip_minloc.getVal() << " , " + << hip_minloc.getLoc() << std::endl; + std::cout << "\tmax, loc = " << hip_maxloc.getVal() << " , " + << hip_maxloc.getLoc() << std::endl; + + memoryManager::deallocate_gpu(d_a); +#endif + +//----------------------------------------------------------------------------// + +// +// Clean up. +// + memoryManager::deallocate(a); + + std::cout << "\n DONE!...\n"; + + return 0; +} diff --git a/examples/launch_flatten.cpp b/examples/launch_flatten.cpp index f8f3fec2d1..2a3d92ad84 100644 --- a/examples/launch_flatten.cpp +++ b/examples/launch_flatten.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/launch_reductions.cpp b/examples/launch_reductions.cpp index e981404595..24e313e649 100644 --- a/examples/launch_reductions.cpp +++ b/examples/launch_reductions.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/memoryManager.hpp b/examples/memoryManager.hpp index fcf1d01312..62d3d6e3e7 100644 --- a/examples/memoryManager.hpp +++ b/examples/memoryManager.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/multiview.cpp b/examples/multiview.cpp index 5edb61cea2..b765dc84d4 100644 --- a/examples/multiview.cpp +++ b/examples/multiview.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/omp-target-kernel.cpp b/examples/omp-target-kernel.cpp index c60c82fade..ce425e07a6 100644 --- a/examples/omp-target-kernel.cpp +++ b/examples/omp-target-kernel.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/omp-target-ltimes.cpp b/examples/omp-target-ltimes.cpp index b0fe1346b9..f51694b3af 100644 --- a/examples/omp-target-ltimes.cpp +++ b/examples/omp-target-ltimes.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/pi-reduce_vs_atomic.cpp b/examples/pi-reduce_vs_atomic.cpp index 139c25d722..ea0c18611f 100644 --- a/examples/pi-reduce_vs_atomic.cpp +++ b/examples/pi-reduce_vs_atomic.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/plugin/CMakeLists.txt b/examples/plugin/CMakeLists.txt index 0ea9218c84..a01de12e22 100644 --- a/examples/plugin/CMakeLists.txt +++ b/examples/plugin/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/plugin/counter-plugin.cpp b/examples/plugin/counter-plugin.cpp index 41fb92b25f..8134cd9b83 100644 --- a/examples/plugin/counter-plugin.cpp +++ b/examples/plugin/counter-plugin.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/plugin/test-plugin-dynamic.cpp b/examples/plugin/test-plugin-dynamic.cpp index 61b09f124a..c9e574a99e 100644 --- a/examples/plugin/test-plugin-dynamic.cpp +++ b/examples/plugin/test-plugin-dynamic.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/plugin/test-plugin.cpp b/examples/plugin/test-plugin.cpp index dce1dc070a..b18233cb90 100644 --- a/examples/plugin/test-plugin.cpp +++ b/examples/plugin/test-plugin.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/plugin/timer-plugin.cpp b/examples/plugin/timer-plugin.cpp index 09f48e98ac..2619f9fcd9 100644 --- a/examples/plugin/timer-plugin.cpp +++ b/examples/plugin/timer-plugin.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/raja-launch.cpp b/examples/raja-launch.cpp index dd0dbcfc22..b2642e16ff 100644 --- a/examples/raja-launch.cpp +++ b/examples/raja-launch.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/red-black-gauss-seidel.cpp b/examples/red-black-gauss-seidel.cpp index 5c9712d096..cfe74dc58a 100644 --- a/examples/red-black-gauss-seidel.cpp +++ b/examples/red-black-gauss-seidel.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/resource-dynamic-forall.cpp b/examples/resource-dynamic-forall.cpp index 1f9f4bcd88..01d45bb2ae 100644 --- a/examples/resource-dynamic-forall.cpp +++ b/examples/resource-dynamic-forall.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/resource-forall.cpp b/examples/resource-forall.cpp index 39cab4cbce..b374bdba3f 100644 --- a/examples/resource-forall.cpp +++ b/examples/resource-forall.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -149,34 +149,6 @@ int main(int RAJA_UNUSED_ARG(argc), char **RAJA_UNUSED_ARG(argv[])) checkResult(c, N); #endif -#if defined(RAJA_ENABLE_TBB) -//----------------------------------------------------------------------------// -// RAJA::tbb_for_dynamic policy execution.... -//----------------------------------------------------------------------------// - - std::cout << "\n Running RAJA tbb_for_dynamic vector addition...\n"; - - RAJA::forall(host, RAJA::RangeSegment(0, N), - [=] (int i) { - c[i] = a[i] + b[i]; - }); - - checkResult(c, N); - -//----------------------------------------------------------------------------// -// RAJA::tbb_for_static policy execution.... -//----------------------------------------------------------------------------// - - std::cout << "\n Running RAJA tbb_for_static<8> vector addition...\n"; - - RAJA::forall>(host, RAJA::RangeSegment(0, N), - [=] (int i) { - c[i] = a[i] + b[i]; - }); - - checkResult(c, N); -#endif - #if defined(RAJA_ENABLE_CUDA) || defined(RAJA_ENABLE_HIP) || defined(RAJA_ENABLE_SYCL) diff --git a/examples/resource-kernel.cpp b/examples/resource-kernel.cpp index 052a314404..a754876479 100644 --- a/examples/resource-kernel.cpp +++ b/examples/resource-kernel.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/resource-launch.cpp b/examples/resource-launch.cpp index 638dada9ac..288b70f8a5 100644 --- a/examples/resource-launch.cpp +++ b/examples/resource-launch.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/resource-runtime-launch.cpp b/examples/resource-runtime-launch.cpp index c7f172abbb..9524c32cde 100644 --- a/examples/resource-runtime-launch.cpp +++ b/examples/resource-runtime-launch.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/tut_daxpy.cpp b/examples/tut_daxpy.cpp index 6ff525ce5c..74b127e0d6 100644 --- a/examples/tut_daxpy.cpp +++ b/examples/tut_daxpy.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/tut_halo-exchange.cpp b/examples/tut_halo-exchange.cpp index 75e82164ec..c584695128 100644 --- a/examples/tut_halo-exchange.cpp +++ b/examples/tut_halo-exchange.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/tut_matrix-multiply.cpp b/examples/tut_matrix-multiply.cpp index 55e3e37eed..e939d96dbb 100644 --- a/examples/tut_matrix-multiply.cpp +++ b/examples/tut_matrix-multiply.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/examples/wave-eqn.cpp b/examples/wave-eqn.cpp index d7938e8591..e3b83480ee 100644 --- a/examples/wave-eqn.cpp +++ b/examples/wave-eqn.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/CMakeLists.txt b/exercises/CMakeLists.txt index 4448d745ad..2383130514 100644 --- a/exercises/CMakeLists.txt +++ b/exercises/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################## -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/Dockerfile b/exercises/Dockerfile index 32d87fdaae..3486ac60ff 100644 --- a/exercises/Dockerfile +++ b/exercises/Dockerfile @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/atomic-histogram.cpp b/exercises/atomic-histogram.cpp index a32ff12875..602a04a10e 100644 --- a/exercises/atomic-histogram.cpp +++ b/exercises/atomic-histogram.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/atomic-histogram_solution.cpp b/exercises/atomic-histogram_solution.cpp index d9f4d6a5ed..368f729ebc 100644 --- a/exercises/atomic-histogram_solution.cpp +++ b/exercises/atomic-histogram_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/dot-product_solution.cpp b/exercises/dot-product_solution.cpp index 2f25efec5d..a1bc7ad419 100644 --- a/exercises/dot-product_solution.cpp +++ b/exercises/dot-product_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernel-matrix-transpose-local-array.cpp b/exercises/kernel-matrix-transpose-local-array.cpp index d2482c0e8f..227af7d2be 100644 --- a/exercises/kernel-matrix-transpose-local-array.cpp +++ b/exercises/kernel-matrix-transpose-local-array.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernel-matrix-transpose-local-array_solution.cpp b/exercises/kernel-matrix-transpose-local-array_solution.cpp index f63c79935c..7b44cd3453 100644 --- a/exercises/kernel-matrix-transpose-local-array_solution.cpp +++ b/exercises/kernel-matrix-transpose-local-array_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernel-matrix-transpose-tiled.cpp b/exercises/kernel-matrix-transpose-tiled.cpp index 5430be3c1b..7316563117 100644 --- a/exercises/kernel-matrix-transpose-tiled.cpp +++ b/exercises/kernel-matrix-transpose-tiled.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernel-matrix-transpose-tiled_solution.cpp b/exercises/kernel-matrix-transpose-tiled_solution.cpp index 25ffc94f14..9124a1b174 100644 --- a/exercises/kernel-matrix-transpose-tiled_solution.cpp +++ b/exercises/kernel-matrix-transpose-tiled_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernel-matrix-transpose.cpp b/exercises/kernel-matrix-transpose.cpp index 87dd7a0529..04f71bf7e0 100644 --- a/exercises/kernel-matrix-transpose.cpp +++ b/exercises/kernel-matrix-transpose.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernel-matrix-transpose_solution.cpp b/exercises/kernel-matrix-transpose_solution.cpp index f6e9bd7466..4dab678520 100644 --- a/exercises/kernel-matrix-transpose_solution.cpp +++ b/exercises/kernel-matrix-transpose_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernelintro-execpols.cpp b/exercises/kernelintro-execpols.cpp index 194f61234a..fdffc21ca9 100644 --- a/exercises/kernelintro-execpols.cpp +++ b/exercises/kernelintro-execpols.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernelintro-execpols_solution.cpp b/exercises/kernelintro-execpols_solution.cpp index 8c06b168cc..c5041e01a9 100644 --- a/exercises/kernelintro-execpols_solution.cpp +++ b/exercises/kernelintro-execpols_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernelintro-nested-loop-reorder.cpp b/exercises/kernelintro-nested-loop-reorder.cpp index c0fc30fe5c..406ea7e581 100644 --- a/exercises/kernelintro-nested-loop-reorder.cpp +++ b/exercises/kernelintro-nested-loop-reorder.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/kernelintro-nested-loop-reorder_solution.cpp b/exercises/kernelintro-nested-loop-reorder_solution.cpp index a9eae22a29..9df3ff4657 100644 --- a/exercises/kernelintro-nested-loop-reorder_solution.cpp +++ b/exercises/kernelintro-nested-loop-reorder_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launch-matrix-transpose-local-array.cpp b/exercises/launch-matrix-transpose-local-array.cpp index 3469eb6243..eea48d073a 100644 --- a/exercises/launch-matrix-transpose-local-array.cpp +++ b/exercises/launch-matrix-transpose-local-array.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launch-matrix-transpose-local-array_solution.cpp b/exercises/launch-matrix-transpose-local-array_solution.cpp index e6071ced62..fe2d41ecec 100644 --- a/exercises/launch-matrix-transpose-local-array_solution.cpp +++ b/exercises/launch-matrix-transpose-local-array_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launch-matrix-transpose-tiled.cpp b/exercises/launch-matrix-transpose-tiled.cpp index ead9ca8268..1206cbc680 100644 --- a/exercises/launch-matrix-transpose-tiled.cpp +++ b/exercises/launch-matrix-transpose-tiled.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launch-matrix-transpose-tiled_solution.cpp b/exercises/launch-matrix-transpose-tiled_solution.cpp index c981cf5a5c..646040f6f0 100644 --- a/exercises/launch-matrix-transpose-tiled_solution.cpp +++ b/exercises/launch-matrix-transpose-tiled_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launch-matrix-transpose.cpp b/exercises/launch-matrix-transpose.cpp index d92c9ec272..7cd96429bb 100644 --- a/exercises/launch-matrix-transpose.cpp +++ b/exercises/launch-matrix-transpose.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launch-matrix-transpose_solution.cpp b/exercises/launch-matrix-transpose_solution.cpp index 20a6ded33e..a7822bc1c7 100644 --- a/exercises/launch-matrix-transpose_solution.cpp +++ b/exercises/launch-matrix-transpose_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launchintro-execpols.cpp b/exercises/launchintro-execpols.cpp index 39b0dfe90f..10c2b0e302 100644 --- a/exercises/launchintro-execpols.cpp +++ b/exercises/launchintro-execpols.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/launchintro-execpols_solution.cpp b/exercises/launchintro-execpols_solution.cpp index e18d725ddf..1bfff68acf 100644 --- a/exercises/launchintro-execpols_solution.cpp +++ b/exercises/launchintro-execpols_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/memoryManager.hpp b/exercises/memoryManager.hpp index fcf1d01312..62d3d6e3e7 100644 --- a/exercises/memoryManager.hpp +++ b/exercises/memoryManager.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/offset-layout-stencil.cpp b/exercises/offset-layout-stencil.cpp index 4b9e516028..3432adbb50 100644 --- a/exercises/offset-layout-stencil.cpp +++ b/exercises/offset-layout-stencil.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/offset-layout-stencil_solution.cpp b/exercises/offset-layout-stencil_solution.cpp index 65cb1922ce..f212ca7630 100644 --- a/exercises/offset-layout-stencil_solution.cpp +++ b/exercises/offset-layout-stencil_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/permuted-layout-batch-matrix-multiply.cpp b/exercises/permuted-layout-batch-matrix-multiply.cpp index 7d5fcb18d7..2fb9d7ac56 100644 --- a/exercises/permuted-layout-batch-matrix-multiply.cpp +++ b/exercises/permuted-layout-batch-matrix-multiply.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/permuted-layout-batch-matrix-multiply_solution.cpp b/exercises/permuted-layout-batch-matrix-multiply_solution.cpp index 7558560035..297ec45047 100644 --- a/exercises/permuted-layout-batch-matrix-multiply_solution.cpp +++ b/exercises/permuted-layout-batch-matrix-multiply_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/reductions.cpp b/exercises/reductions.cpp index 71c0212361..4c6b90c063 100644 --- a/exercises/reductions.cpp +++ b/exercises/reductions.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/reductions_solution.cpp b/exercises/reductions_solution.cpp index 109982caac..6da731e62e 100644 --- a/exercises/reductions_solution.cpp +++ b/exercises/reductions_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/scan.cpp b/exercises/scan.cpp index 921c8e5482..68f52fce2b 100644 --- a/exercises/scan.cpp +++ b/exercises/scan.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/scan_solution.cpp b/exercises/scan_solution.cpp index d85501e0a4..7ed7101192 100644 --- a/exercises/scan_solution.cpp +++ b/exercises/scan_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/segment-indexset-basics.cpp b/exercises/segment-indexset-basics.cpp index 5848d7f0e3..b7c0c26458 100644 --- a/exercises/segment-indexset-basics.cpp +++ b/exercises/segment-indexset-basics.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/segment-indexset-basics_solution.cpp b/exercises/segment-indexset-basics_solution.cpp index ea0173df36..4267582d98 100644 --- a/exercises/segment-indexset-basics_solution.cpp +++ b/exercises/segment-indexset-basics_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/sort.cpp b/exercises/sort.cpp index 5364079a10..21a5fb5edd 100644 --- a/exercises/sort.cpp +++ b/exercises/sort.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/sort_solution.cpp b/exercises/sort_solution.cpp index 7302f7926e..98f65c6dbe 100644 --- a/exercises/sort_solution.cpp +++ b/exercises/sort_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/CMakeLists.txt b/exercises/tutorial_halfday/CMakeLists.txt index 0a2fcf6092..3a844696a7 100644 --- a/exercises/tutorial_halfday/CMakeLists.txt +++ b/exercises/tutorial_halfday/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex2_approx-pi.cpp b/exercises/tutorial_halfday/ex2_approx-pi.cpp index 037ed30be3..c1ccc05aee 100644 --- a/exercises/tutorial_halfday/ex2_approx-pi.cpp +++ b/exercises/tutorial_halfday/ex2_approx-pi.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex2_approx-pi_solution.cpp b/exercises/tutorial_halfday/ex2_approx-pi_solution.cpp index 2fe3e525cc..5654ffbea2 100644 --- a/exercises/tutorial_halfday/ex2_approx-pi_solution.cpp +++ b/exercises/tutorial_halfday/ex2_approx-pi_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex5_line-of-sight.cpp b/exercises/tutorial_halfday/ex5_line-of-sight.cpp index d1e6d021e0..c17fb2eb8a 100644 --- a/exercises/tutorial_halfday/ex5_line-of-sight.cpp +++ b/exercises/tutorial_halfday/ex5_line-of-sight.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex5_line-of-sight_solution.cpp b/exercises/tutorial_halfday/ex5_line-of-sight_solution.cpp index 96c515d5fd..12348816a1 100644 --- a/exercises/tutorial_halfday/ex5_line-of-sight_solution.cpp +++ b/exercises/tutorial_halfday/ex5_line-of-sight_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex6_stencil-offset-layout.cpp b/exercises/tutorial_halfday/ex6_stencil-offset-layout.cpp index c450f7b5d1..4d29f7b3ae 100644 --- a/exercises/tutorial_halfday/ex6_stencil-offset-layout.cpp +++ b/exercises/tutorial_halfday/ex6_stencil-offset-layout.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex6_stencil-offset-layout_solution.cpp b/exercises/tutorial_halfday/ex6_stencil-offset-layout_solution.cpp index ea63155bfa..51aad20dae 100644 --- a/exercises/tutorial_halfday/ex6_stencil-offset-layout_solution.cpp +++ b/exercises/tutorial_halfday/ex6_stencil-offset-layout_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex8_tiled-matrix-transpose.cpp b/exercises/tutorial_halfday/ex8_tiled-matrix-transpose.cpp index fb0963cc8b..d183c221fa 100644 --- a/exercises/tutorial_halfday/ex8_tiled-matrix-transpose.cpp +++ b/exercises/tutorial_halfday/ex8_tiled-matrix-transpose.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex8_tiled-matrix-transpose_solution.cpp b/exercises/tutorial_halfday/ex8_tiled-matrix-transpose_solution.cpp index 6ee089f5ea..dbb9a75c20 100644 --- a/exercises/tutorial_halfday/ex8_tiled-matrix-transpose_solution.cpp +++ b/exercises/tutorial_halfday/ex8_tiled-matrix-transpose_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex9_matrix-transpose-local-array.cpp b/exercises/tutorial_halfday/ex9_matrix-transpose-local-array.cpp index bb8a568d4e..71743ba2d4 100644 --- a/exercises/tutorial_halfday/ex9_matrix-transpose-local-array.cpp +++ b/exercises/tutorial_halfday/ex9_matrix-transpose-local-array.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/ex9_matrix-transpose-local-array_solution.cpp b/exercises/tutorial_halfday/ex9_matrix-transpose-local-array_solution.cpp index 9cce5f0491..1900bf1157 100644 --- a/exercises/tutorial_halfday/ex9_matrix-transpose-local-array_solution.cpp +++ b/exercises/tutorial_halfday/ex9_matrix-transpose-local-array_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/tutorial_halfday/memoryManager.hpp b/exercises/tutorial_halfday/memoryManager.hpp index 992594f8e1..83fb8cb3bb 100644 --- a/exercises/tutorial_halfday/memoryManager.hpp +++ b/exercises/tutorial_halfday/memoryManager.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/vector-addition.cpp b/exercises/vector-addition.cpp index 3a1223fffa..a266402224 100644 --- a/exercises/vector-addition.cpp +++ b/exercises/vector-addition.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/vector-addition_solution.cpp b/exercises/vector-addition_solution.cpp index 31afff2e0f..31956601e0 100644 --- a/exercises/vector-addition_solution.cpp +++ b/exercises/vector-addition_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/vertexsum-indexset.cpp b/exercises/vertexsum-indexset.cpp index c1834b23d4..258250a741 100644 --- a/exercises/vertexsum-indexset.cpp +++ b/exercises/vertexsum-indexset.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/vertexsum-indexset_solution.cpp b/exercises/vertexsum-indexset_solution.cpp index 46f7ae7e83..5c1617343a 100644 --- a/exercises/vertexsum-indexset_solution.cpp +++ b/exercises/vertexsum-indexset_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/view-layout.cpp b/exercises/view-layout.cpp index 88b8e41a13..0f9383e95e 100644 --- a/exercises/view-layout.cpp +++ b/exercises/view-layout.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/exercises/view-layout_solution.cpp b/exercises/view-layout_solution.cpp index faa9eb78ce..7614c993a8 100644 --- a/exercises/view-layout_solution.cpp +++ b/exercises/view-layout_solution.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/alcf-builds/cooley_clang5_0.cmake b/host-configs/alcf-builds/cooley_clang5_0.cmake index 87d3d2a7a8..fda781013e 100644 --- a/host-configs/alcf-builds/cooley_clang5_0.cmake +++ b/host-configs/alcf-builds/cooley_clang5_0.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/alcf-builds/cooley_gcc7_1_0.cmake b/host-configs/alcf-builds/cooley_gcc7_1_0.cmake index d10f80a889..c74b1f6cb5 100644 --- a/host-configs/alcf-builds/cooley_gcc7_1_0.cmake +++ b/host-configs/alcf-builds/cooley_gcc7_1_0.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/alcf-builds/cooley_nvcc_clang4_0.cmake b/host-configs/alcf-builds/cooley_nvcc_clang4_0.cmake index 6764893307..b1a3ce522b 100644 --- a/host-configs/alcf-builds/cooley_nvcc_clang4_0.cmake +++ b/host-configs/alcf-builds/cooley_nvcc_clang4_0.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/alcf-builds/theta_intel18_0.cmake b/host-configs/alcf-builds/theta_intel18_0.cmake index fda66edc43..304cd5ebb4 100755 --- a/host-configs/alcf-builds/theta_intel18_0.cmake +++ b/host-configs/alcf-builds/theta_intel18_0.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/bgqos/clang_4_0_0.cmake b/host-configs/lc-builds/bgqos/clang_4_0_0.cmake index 4e0e93fc69..ab4f34c687 100644 --- a/host-configs/lc-builds/bgqos/clang_4_0_0.cmake +++ b/host-configs/lc-builds/bgqos/clang_4_0_0.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/clang_X.cmake b/host-configs/lc-builds/blueos/clang_X.cmake index 247560b468..e933034626 100755 --- a/host-configs/lc-builds/blueos/clang_X.cmake +++ b/host-configs/lc-builds/blueos/clang_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/clangcuda_X.cmake b/host-configs/lc-builds/blueos/clangcuda_X.cmake index 07c71af185..c0ecb9a217 100644 --- a/host-configs/lc-builds/blueos/clangcuda_X.cmake +++ b/host-configs/lc-builds/blueos/clangcuda_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/gcc_X.cmake b/host-configs/lc-builds/blueos/gcc_X.cmake index 27d6cef312..12e3787bc6 100755 --- a/host-configs/lc-builds/blueos/gcc_X.cmake +++ b/host-configs/lc-builds/blueos/gcc_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/nvcc_clang_X.cmake b/host-configs/lc-builds/blueos/nvcc_clang_X.cmake index 7f00ac1049..fb69f0c810 100755 --- a/host-configs/lc-builds/blueos/nvcc_clang_X.cmake +++ b/host-configs/lc-builds/blueos/nvcc_clang_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/nvcc_gcc_X.cmake b/host-configs/lc-builds/blueos/nvcc_gcc_X.cmake index e35c60ca6e..c6462dc315 100755 --- a/host-configs/lc-builds/blueos/nvcc_gcc_X.cmake +++ b/host-configs/lc-builds/blueos/nvcc_gcc_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/nvcc_xl_X.cmake b/host-configs/lc-builds/blueos/nvcc_xl_X.cmake index d11b152400..8c3f1d20c1 100755 --- a/host-configs/lc-builds/blueos/nvcc_xl_X.cmake +++ b/host-configs/lc-builds/blueos/nvcc_xl_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/pgi_X.cmake b/host-configs/lc-builds/blueos/pgi_X.cmake index 91c2ec8fdc..32d500c233 100755 --- a/host-configs/lc-builds/blueos/pgi_X.cmake +++ b/host-configs/lc-builds/blueos/pgi_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/blueos/xl_X.cmake b/host-configs/lc-builds/blueos/xl_X.cmake index 4196171e14..d089c56364 100755 --- a/host-configs/lc-builds/blueos/xl_X.cmake +++ b/host-configs/lc-builds/blueos/xl_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/toss3/clang_X.cmake b/host-configs/lc-builds/toss3/clang_X.cmake deleted file mode 100755 index 8a7edf7498..0000000000 --- a/host-configs/lc-builds/toss3/clang_X.cmake +++ /dev/null @@ -1,16 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_CLANG" CACHE STRING "") - -set(CMAKE_CXX_FLAGS_RELEASE "--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 -O3 -march=native -funroll-loops -finline-functions" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 -O3 -g -march=native -funroll-loops -finline-functions" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 -O0 -g" CACHE STRING "") - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/clangcuda_6_0_0_nvcc_8_0.cmake b/host-configs/lc-builds/toss3/clangcuda_6_0_0_nvcc_8_0.cmake index 0aab79bd9e..164e865577 100644 --- a/host-configs/lc-builds/toss3/clangcuda_6_0_0_nvcc_8_0.cmake +++ b/host-configs/lc-builds/toss3/clangcuda_6_0_0_nvcc_8_0.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/lc-builds/toss3/gcc_X.cmake b/host-configs/lc-builds/toss3/gcc_X.cmake deleted file mode 100755 index 4a108c5c30..0000000000 --- a/host-configs/lc-builds/toss3/gcc_X.cmake +++ /dev/null @@ -1,16 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_GNU" CACHE STRING "") - -set(CMAKE_CXX_FLAGS_RELEASE "-Ofast -march=native -finline-functions -finline-limit=20000" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Ofast -march=native -g -finline-functions -finline-limit=20000" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/hip_3_X.cmake b/host-configs/lc-builds/toss3/hip_3_X.cmake deleted file mode 100644 index f88981b39d..0000000000 --- a/host-configs/lc-builds/toss3/hip_3_X.cmake +++ /dev/null @@ -1,28 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_CLANG" CACHE STRING "") - -set(CMAKE_CXX_FLAGS_RELEASE "-O2" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") - -set(HIP_COMMON_OPT_FLAGS ) -set(HIP_COMMON_DEBUG_FLAGS) -set(HOST_OPT_FLAGS) - -if(CMAKE_BUILD_TYPE MATCHES Release) - set(RAJA_HIPCC_FLAGS "-fPIC -O2 ${HIP_COMMON_OPT_FLAGS} ${HOST_OPT_FLAGS}" CACHE STRING "") -elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo) - set(RAJA_HIPCC_FLAGS "-fPIC -g -O2 ${HIP_COMMON_OPT_FLAGS} ${HOST_OPT_FLAGS}" CACHE STRING "") -elseif(CMAKE_BUILD_TYPE MATCHES Debug) - set(RAJA_HIPCC_FLAGS "-fPIC -g -O0 ${HIP_COMMON_DEBUG_FLAGS}" CACHE STRING "") -endif() - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/hip_4_5_link_X.cmake b/host-configs/lc-builds/toss3/hip_4_5_link_X.cmake deleted file mode 100644 index 88a17e8f0b..0000000000 --- a/host-configs/lc-builds/toss3/hip_4_5_link_X.cmake +++ /dev/null @@ -1,32 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_CLANG" CACHE STRING "") - -set(CMAKE_CXX_FLAGS_RELEASE "-O2" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") - -set(HIP_COMMON_OPT_FLAGS ) -set(HIP_COMMON_DEBUG_FLAGS) -set(HOST_OPT_FLAGS) - -if(DEFINED ROCM_ROOT_DIR) - set(CMAKE_EXE_LINKER_FLAGS "-Wl,--disable-new-dtags -L${ROCM_ROOT_DIR}/hip/lib -L${ROCM_ROOT_DIR}/lib -L${ROCM_ROOT_DIR}/lib64 -Wl,-rpath,${ROCM_ROOT_DIR}/hip/lib:${ROCM_ROOT_DIR}/lib:${ROCM_ROOT_DIR}/lib64 -lamdhip64 -lhsakmt -lhsa-runtime64 -lamd_comgr" CACHE PATH "") -endif() - -if(CMAKE_BUILD_TYPE MATCHES Release) - set(RAJA_HIPCC_FLAGS "-fPIC -O2 ${HIP_COMMON_OPT_FLAGS} ${HOST_OPT_FLAGS}" CACHE STRING "") -elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo) - set(RAJA_HIPCC_FLAGS "-fPIC -g -O2 ${HIP_COMMON_OPT_FLAGS} ${HOST_OPT_FLAGS}" CACHE STRING "") -elseif(CMAKE_BUILD_TYPE MATCHES Debug) - set(RAJA_HIPCC_FLAGS "-fPIC -g -O0 ${HIP_COMMON_DEBUG_FLAGS}" CACHE STRING "") -endif() - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/hip_4_link_X.cmake b/host-configs/lc-builds/toss3/hip_4_link_X.cmake deleted file mode 100644 index 68cd2123d5..0000000000 --- a/host-configs/lc-builds/toss3/hip_4_link_X.cmake +++ /dev/null @@ -1,32 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_CLANG" CACHE STRING "") - -set(CMAKE_CXX_FLAGS_RELEASE "-O2" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") - -set(HIP_COMMON_OPT_FLAGS ) -set(HIP_COMMON_DEBUG_FLAGS) -set(HOST_OPT_FLAGS) - -if(DEFINED ROCM_ROOT_DIR) - set(CMAKE_EXE_LINKER_FLAGS "-Wl,--disable-new-dtags -L${ROCM_ROOT_DIR}/hip/lib -L${ROCM_ROOT_DIR}/lib -L${ROCM_ROOT_DIR}/lib64 -Wl,-rpath,${ROCM_ROOT_DIR}/hip/lib:${ROCM_ROOT_DIR}/lib:${ROCM_ROOT_DIR}/lib64 -lamdhip64 -lhsakmt -lhsa-runtime64" CACHE PATH "") -endif() - -if(CMAKE_BUILD_TYPE MATCHES Release) - set(RAJA_HIPCC_FLAGS "-fPIC -O2 ${HIP_COMMON_OPT_FLAGS} ${HOST_OPT_FLAGS}" CACHE STRING "") -elseif(CMAKE_BUILD_TYPE MATCHES RelWithDebInfo) - set(RAJA_HIPCC_FLAGS "-fPIC -g -O2 ${HIP_COMMON_OPT_FLAGS} ${HOST_OPT_FLAGS}" CACHE STRING "") -elseif(CMAKE_BUILD_TYPE MATCHES Debug) - set(RAJA_HIPCC_FLAGS "-fPIC -g -O0 ${HIP_COMMON_DEBUG_FLAGS}" CACHE STRING "") -endif() - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/icpc_X_gcc7headers.cmake b/host-configs/lc-builds/toss3/icpc_X_gcc7headers.cmake deleted file mode 100755 index 9944d97231..0000000000 --- a/host-configs/lc-builds/toss3/icpc_X_gcc7headers.cmake +++ /dev/null @@ -1,18 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_ICC" CACHE STRING "") - -set(COMMON_FLAGS "-gxx-name=/usr/tce/packages/gcc/gcc-7.1.0/bin/g++") - -set(CMAKE_CXX_FLAGS_RELEASE "${COMMON_FLAGS} -O3 -fp-model source -unroll-aggressive -finline-functions -march=native -diag-disable cpu-dispatch" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${COMMON_FLAGS} -O3 -g -fp-model source -unroll-aggressive -finline-functions -march=native -diag-disable cpu-dispatch" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "${COMMON_FLAGS} -O0 -g" CACHE STRING "") - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/icpc_X_gcc8headers.cmake b/host-configs/lc-builds/toss3/icpc_X_gcc8headers.cmake deleted file mode 100755 index eb4c5b949a..0000000000 --- a/host-configs/lc-builds/toss3/icpc_X_gcc8headers.cmake +++ /dev/null @@ -1,18 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_ICC" CACHE STRING "") - -set(COMMON_FLAGS "-gxx-name=/usr/tce/packages/gcc/gcc-8.3.1/bin/g++") - -set(CMAKE_CXX_FLAGS_RELEASE "${COMMON_FLAGS} -O3 -march=native -ansi-alias -diag-disable cpu-dispatch" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${COMMON_FLAGS} -O3 -g -march=native -ansi-alias -diag-disable cpu-dispatch" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "${COMMON_FLAGS} -O0 -g" CACHE STRING "") - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/icpx_X.cmake b/host-configs/lc-builds/toss3/icpx_X.cmake deleted file mode 100644 index 1c03db9d7c..0000000000 --- a/host-configs/lc-builds/toss3/icpx_X.cmake +++ /dev/null @@ -1,12 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(CMAKE_CXX_FLAGS_RELEASE "${COMMON_FLAGS} -O3 -march=native -finline-functions --gcc-toolchain=/usr/tce/packages/gcc/gcc-8.1.0" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${COMMON_FLAGS} -O3 -g -march=native -finline-functions --gcc-toolchain=/usr/tce/packages/gcc/gcc-8.1.0" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "${COMMON_FLAGS} -O0 -g --gcc-toolchain=/usr/tce/packages/gcc/gcc-8.1.0" CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss3/pgi_X.cmake b/host-configs/lc-builds/toss3/pgi_X.cmake deleted file mode 100755 index 02351d8d22..0000000000 --- a/host-configs/lc-builds/toss3/pgi_X.cmake +++ /dev/null @@ -1,16 +0,0 @@ -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -set(RAJA_COMPILER "RAJA_COMPILER_PGI" CACHE STRING "") - -set(CMAKE_CXX_FLAGS_RELEASE "-O3 -fast -mp" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g -fast -mp" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -mp" CACHE STRING "") - -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - -set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/clang_X.cmake b/host-configs/lc-builds/toss4/clang_X.cmake index 0dd6d692a6..6b6c1867a0 100644 --- a/host-configs/lc-builds/toss4/clang_X.cmake +++ b/host-configs/lc-builds/toss4/clang_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,6 +11,4 @@ set(CMAKE_CXX_FLAGS_RELEASE "--gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1 -O set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "--gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1 -O3 -g -march=native -funroll-loops -finline-functions" CACHE STRING "") set(CMAKE_CXX_FLAGS_DEBUG "--gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1 -O0 -g" CACHE STRING "") -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/corona_sycl.cmake b/host-configs/lc-builds/toss4/corona_sycl.cmake index f1e79437fb..4912049830 100755 --- a/host-configs/lc-builds/toss4/corona_sycl.cmake +++ b/host-configs/lc-builds/toss4/corona_sycl.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -18,8 +18,4 @@ set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g -L${SYCL_LIB_PATH} -fsycl -fsycl-unnamed-lambd #set(CMAKE_CXX_FLAGS_DEBUG " -O0 -g -std=c++17 -fsycl -fsycl-unnamed-lambda --gcc-toolchain=/usr/tce/packages/gcc/gcc-7.1.0" CACHE STRING "") #set(CMAKE_CXX_LINK_FLAGS "-fsycl -Wl,-rpath,/usr/tce/packages/oneapi/oneapi-2021.2/compiler/2021.2.0/linux/compiler/lib/intel64_lin/" CACHE STRING "") -set(RAJA_RANGE_ALIGN 4 CACHE STRING "") -set(RAJA_RANGE_MIN_LENGTH 32 CACHE STRING "") -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/gcc_X.cmake b/host-configs/lc-builds/toss4/gcc_X.cmake index dc5d524061..ed00838b1c 100755 --- a/host-configs/lc-builds/toss4/gcc_X.cmake +++ b/host-configs/lc-builds/toss4/gcc_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -7,10 +7,11 @@ set(RAJA_COMPILER "RAJA_COMPILER_GNU" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELEASE "-Ofast -march=native" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-Ofast -march=native -g" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") +set(COMMON_OPT_FLAGS "-Ofast -march=native") +##set(COMMON_OPT_FLAGS "-Ofast -march=native -finline-functions -finline-limit=20000") -set(RAJA_DATA_ALIGN 64 CACHE STRING "") +set(CMAKE_CXX_FLAGS_RELEASE "${COMMON_OPT_FLAGS}" CACHE STRING "") +set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${COMMON_OPT_FLAGS} -g" CACHE STRING "") +set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/hip_3_X.cmake b/host-configs/lc-builds/toss4/hip_3_X.cmake index f88981b39d..ccd76b8d14 100644 --- a/host-configs/lc-builds/toss4/hip_3_X.cmake +++ b/host-configs/lc-builds/toss4/hip_3_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -23,6 +23,4 @@ elseif(CMAKE_BUILD_TYPE MATCHES Debug) set(RAJA_HIPCC_FLAGS "-fPIC -g -O0 ${HIP_COMMON_DEBUG_FLAGS}" CACHE STRING "") endif() -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/hip_4_link_X.cmake b/host-configs/lc-builds/toss4/hip_4_link_X.cmake index 7c9eadc877..2603bc984f 100644 --- a/host-configs/lc-builds/toss4/hip_4_link_X.cmake +++ b/host-configs/lc-builds/toss4/hip_4_link_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -27,6 +27,4 @@ elseif(CMAKE_BUILD_TYPE MATCHES Debug) set(RAJA_HIPCC_FLAGS "-fPIC -g -O0 ${HIP_COMMON_DEBUG_FLAGS}" CACHE STRING "") endif() -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/icpc-classic_X.cmake b/host-configs/lc-builds/toss4/icpc-classic_X.cmake index 762c36db44..6f2708498d 100755 --- a/host-configs/lc-builds/toss4/icpc-classic_X.cmake +++ b/host-configs/lc-builds/toss4/icpc-classic_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -13,6 +13,4 @@ set(CMAKE_CXX_FLAGS_RELEASE "${COMMON_FLAGS} -O3 -march=native -ansi-alias -diag set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${COMMON_FLAGS} -O3 -g -march=native -ansi-alias -diag-disable cpu-dispatch" CACHE STRING "") set(CMAKE_CXX_FLAGS_DEBUG "${COMMON_FLAGS} -O0 -g" CACHE STRING "") -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/icpc_X.cmake b/host-configs/lc-builds/toss4/icpc_X.cmake index 9ea8ba2859..1dd413fd7f 100755 --- a/host-configs/lc-builds/toss4/icpc_X.cmake +++ b/host-configs/lc-builds/toss4/icpc_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,6 +11,4 @@ set(CMAKE_CXX_FLAGS_RELEASE "-O3 -march=native -ansi-alias -diag-disable cpu-dis set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g -march=native -ansi-alias -diag-disable cpu-dispatch" CACHE STRING "") set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") -set(RAJA_DATA_ALIGN 64 CACHE STRING "") - set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/lc-builds/toss4/icpx_X.cmake b/host-configs/lc-builds/toss4/icpx_X.cmake index d030a0ea7b..2f5301bd22 100755 --- a/host-configs/lc-builds/toss4/icpx_X.cmake +++ b/host-configs/lc-builds/toss4/icpx_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -7,10 +7,16 @@ set(RAJA_COMPILER "RAJA_COMPILER_ICC" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELEASE "-O3 -march=native --gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1" CACHE STRING "") -set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g -march=native --gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1" CACHE STRING "") -set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g --gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1" CACHE STRING "") +##set(COMMON_FLAGS "--gcc-toolchain=/usr/tce/packages/gcc/gcc-10.3.1") +##set(COMMON_OPT_FLAGS "-march=native -finline-functions -fp-model=precise") +set(COMMON_OPT_FLAGS "-march=native -finline-functions") -set(RAJA_DATA_ALIGN 64 CACHE STRING "") +##set(CMAKE_CXX_FLAGS_RELEASE "${COMMON_FLAGS} -O3 ${COMMON_OPT_FLAGS}" CACHE STRING "") +##set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${COMMON_FLAGS} -O3 -g ${COMMON_OPT_FLAGS}" CACHE STRING "") +##set(CMAKE_CXX_FLAGS_DEBUG "${COMMON_FLAGS} -O0 -g" CACHE STRING "") + +set(CMAKE_CXX_FLAGS_RELEASE "-O3 ${COMMON_OPT_FLAGS}" CACHE STRING "") +set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O3 -g ${COMMON_OPT_FLAGS}" "") +set(CMAKE_CXX_FLAGS_DEBUG "-O0 -g" CACHE STRING "") set(RAJA_HOST_CONFIG_LOADED On CACHE BOOL "") diff --git a/host-configs/macos-builds/clang_X.cmake b/host-configs/macos-builds/clang_X.cmake index c50a69ec3f..d9c71a2a62 100755 --- a/host-configs/macos-builds/clang_X.cmake +++ b/host-configs/macos-builds/clang_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/ubuntu-builds/clang_X.cmake b/host-configs/ubuntu-builds/clang_X.cmake index 33284357ad..7d204f14fe 100644 --- a/host-configs/ubuntu-builds/clang_X.cmake +++ b/host-configs/ubuntu-builds/clang_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/ubuntu-builds/gcc_X.cmake b/host-configs/ubuntu-builds/gcc_X.cmake index fbcae4895c..2451d298a3 100644 --- a/host-configs/ubuntu-builds/gcc_X.cmake +++ b/host-configs/ubuntu-builds/gcc_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/ubuntu-builds/hip.cmake b/host-configs/ubuntu-builds/hip.cmake index 0a32991aa3..f4ac087152 100644 --- a/host-configs/ubuntu-builds/hip.cmake +++ b/host-configs/ubuntu-builds/hip.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/host-configs/ubuntu-builds/nvcc_gcc_X.cmake b/host-configs/ubuntu-builds/nvcc_gcc_X.cmake index 0455b17db3..ad459aa9db 100644 --- a/host-configs/ubuntu-builds/nvcc_gcc_X.cmake +++ b/host-configs/ubuntu-builds/nvcc_gcc_X.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/RAJA.hpp b/include/RAJA/RAJA.hpp index 7c5484c922..f41aad477b 100644 --- a/include/RAJA/RAJA.hpp +++ b/include/RAJA/RAJA.hpp @@ -17,7 +17,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -58,7 +58,9 @@ #include "RAJA/policy/sequential.hpp" // -// All platforms must support loop execution. +// NOTE: LOOP POLCIES WERE DEPRECATED IN 2023.03.0 RELEASE. +// THEY ARE RE-ADDED HERE AT REQUEST OF USERS. +// THEY WILL BE REMOVED AGAIN IN THE FUTURE. // #include "RAJA/policy/loop.hpp" @@ -70,10 +72,6 @@ #include "RAJA/policy/tensor.hpp" #endif -#if defined(RAJA_ENABLE_TBB) -#include "RAJA/policy/tbb.hpp" -#endif - #if defined(RAJA_ENABLE_CUDA) #include "RAJA/policy/cuda.hpp" #endif @@ -123,6 +121,7 @@ #include "RAJA/util/OffsetLayout.hpp" #include "RAJA/util/PermutedLayout.hpp" #include "RAJA/util/StaticLayout.hpp" +#include "RAJA/util/IndexLayout.hpp" #include "RAJA/util/View.hpp" diff --git a/include/RAJA/config.hpp.in b/include/RAJA/config.hpp.in index 957cdadec0..380418efa1 100644 --- a/include/RAJA/config.hpp.in +++ b/include/RAJA/config.hpp.in @@ -22,7 +22,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -171,7 +171,6 @@ static_assert(RAJA_HAS_SOME_CXX14, */ #cmakedefine RAJA_ENABLE_OPENMP #cmakedefine RAJA_ENABLE_TARGET_OPENMP -#cmakedefine RAJA_ENABLE_TBB #cmakedefine RAJA_ENABLE_CUDA #cmakedefine RAJA_ENABLE_CLANG_CUDA #cmakedefine RAJA_ENABLE_HIP diff --git a/include/RAJA/index/IndexSet.hpp b/include/RAJA/index/IndexSet.hpp index f32906d917..1a467c8341 100644 --- a/include/RAJA/index/IndexSet.hpp +++ b/include/RAJA/index/IndexSet.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/index/IndexSetBuilders.hpp b/include/RAJA/index/IndexSetBuilders.hpp index fa8beb2266..543524be01 100644 --- a/include/RAJA/index/IndexSetBuilders.hpp +++ b/include/RAJA/index/IndexSetBuilders.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/index/IndexSetUtils.hpp b/include/RAJA/index/IndexSetUtils.hpp index 59b188a4ef..4baea450fc 100644 --- a/include/RAJA/index/IndexSetUtils.hpp +++ b/include/RAJA/index/IndexSetUtils.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/index/IndexValue.hpp b/include/RAJA/index/IndexValue.hpp index 77d497ec7d..44fa143445 100644 --- a/include/RAJA/index/IndexValue.hpp +++ b/include/RAJA/index/IndexValue.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/index/ListSegment.hpp b/include/RAJA/index/ListSegment.hpp index a604b04027..adee46053c 100644 --- a/include/RAJA/index/ListSegment.hpp +++ b/include/RAJA/index/ListSegment.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/index/RangeSegment.hpp b/include/RAJA/index/RangeSegment.hpp index 4a1a7dccbe..a41959c583 100644 --- a/include/RAJA/index/RangeSegment.hpp +++ b/include/RAJA/index/RangeSegment.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/DepGraphNode.hpp b/include/RAJA/internal/DepGraphNode.hpp index b154dc55ca..8feceae22f 100644 --- a/include/RAJA/internal/DepGraphNode.hpp +++ b/include/RAJA/internal/DepGraphNode.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/Iterators.hpp b/include/RAJA/internal/Iterators.hpp index 7c00c69583..6f32a56e6d 100644 --- a/include/RAJA/internal/Iterators.hpp +++ b/include/RAJA/internal/Iterators.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/MemUtils_CPU.hpp b/include/RAJA/internal/MemUtils_CPU.hpp index f9f2beac18..55015f9ab7 100644 --- a/include/RAJA/internal/MemUtils_CPU.hpp +++ b/include/RAJA/internal/MemUtils_CPU.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/RAJAVec.hpp b/include/RAJA/internal/RAJAVec.hpp index 826af90b22..1d0ec0cbeb 100644 --- a/include/RAJA/internal/RAJAVec.hpp +++ b/include/RAJA/internal/RAJAVec.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/ThreadUtils_CPU.hpp b/include/RAJA/internal/ThreadUtils_CPU.hpp index 100ffc42d1..addd22c4f7 100644 --- a/include/RAJA/internal/ThreadUtils_CPU.hpp +++ b/include/RAJA/internal/ThreadUtils_CPU.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/fault_tolerance.hpp b/include/RAJA/internal/fault_tolerance.hpp index b810729ef1..cf3a86cede 100644 --- a/include/RAJA/internal/fault_tolerance.hpp +++ b/include/RAJA/internal/fault_tolerance.hpp @@ -19,7 +19,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/internal/foldl.hpp b/include/RAJA/internal/foldl.hpp index 144c557531..af65c05392 100644 --- a/include/RAJA/internal/foldl.hpp +++ b/include/RAJA/internal/foldl.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/module.modulemap b/include/RAJA/module.modulemap deleted file mode 100644 index 1a59231217..0000000000 --- a/include/RAJA/module.modulemap +++ /dev/null @@ -1,6 +0,0 @@ -module RAJA { - requires cplusplus11 - umbrella header "RAJA.hpp" - - export * -} diff --git a/include/RAJA/module.private.modulemap b/include/RAJA/module.private.modulemap deleted file mode 100644 index 7960bd47e6..0000000000 --- a/include/RAJA/module.private.modulemap +++ /dev/null @@ -1,10 +0,0 @@ -explicit module RAJA.internal { - header "internal/DepGraphNode.hpp" - header "internal/fault_tolerance.hpp" - header "internal/Iterators.hpp" - header "internal/foldl.hpp" - header "internal/MemUtils_CPU.hpp" - header "internal/RAJAVec.hpp" - header "internal/ThreadUtils_CPU.hpp" - header "util/Timer.hpp" -} diff --git a/include/RAJA/pattern/WorkGroup.hpp b/include/RAJA/pattern/WorkGroup.hpp index 2826576763..767821b8d8 100644 --- a/include/RAJA/pattern/WorkGroup.hpp +++ b/include/RAJA/pattern/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/WorkGroup/Dispatcher.hpp b/include/RAJA/pattern/WorkGroup/Dispatcher.hpp index 5af2ace046..1eac283f4b 100644 --- a/include/RAJA/pattern/WorkGroup/Dispatcher.hpp +++ b/include/RAJA/pattern/WorkGroup/Dispatcher.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/WorkGroup/WorkRunner.hpp b/include/RAJA/pattern/WorkGroup/WorkRunner.hpp index 580c0aaca7..9645f73050 100644 --- a/include/RAJA/pattern/WorkGroup/WorkRunner.hpp +++ b/include/RAJA/pattern/WorkGroup/WorkRunner.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/WorkGroup/WorkStorage.hpp b/include/RAJA/pattern/WorkGroup/WorkStorage.hpp index 4a83ff314a..52631d108f 100644 --- a/include/RAJA/pattern/WorkGroup/WorkStorage.hpp +++ b/include/RAJA/pattern/WorkGroup/WorkStorage.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/WorkGroup/WorkStruct.hpp b/include/RAJA/pattern/WorkGroup/WorkStruct.hpp index 12415549cb..72e1540c54 100644 --- a/include/RAJA/pattern/WorkGroup/WorkStruct.hpp +++ b/include/RAJA/pattern/WorkGroup/WorkStruct.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/atomic.hpp b/include/RAJA/pattern/atomic.hpp index 63595b7e50..af9a6af911 100644 --- a/include/RAJA/pattern/atomic.hpp +++ b/include/RAJA/pattern/atomic.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/detail/algorithm.hpp b/include/RAJA/pattern/detail/algorithm.hpp index 69fd9bc07b..21d266bd21 100644 --- a/include/RAJA/pattern/detail/algorithm.hpp +++ b/include/RAJA/pattern/detail/algorithm.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/detail/forall.hpp b/include/RAJA/pattern/detail/forall.hpp index db80e1d86f..3bd5d7ecaf 100644 --- a/include/RAJA/pattern/detail/forall.hpp +++ b/include/RAJA/pattern/detail/forall.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/detail/privatizer.hpp b/include/RAJA/pattern/detail/privatizer.hpp index 32c88c65aa..3579027cd3 100644 --- a/include/RAJA/pattern/detail/privatizer.hpp +++ b/include/RAJA/pattern/detail/privatizer.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/detail/reduce.hpp b/include/RAJA/pattern/detail/reduce.hpp index 800b2310fc..788f3c698d 100644 --- a/include/RAJA/pattern/detail/reduce.hpp +++ b/include/RAJA/pattern/detail/reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -164,7 +164,17 @@ class ValueLoc namespace operators { template -struct limits<::RAJA::reduce::detail::ValueLoc> : limits { +struct limits<::RAJA::reduce::detail::ValueLoc> { + RAJA_INLINE RAJA_HOST_DEVICE static constexpr + ::RAJA::reduce::detail::ValueLoc min() + { + return ::RAJA::reduce::detail::ValueLoc(limits::min()); + } + RAJA_INLINE RAJA_HOST_DEVICE static constexpr + ::RAJA::reduce::detail::ValueLoc max() + { + return ::RAJA::reduce::detail::ValueLoc(limits::max()); + } }; } // namespace operators @@ -313,9 +323,7 @@ class BaseCombinable /*! ****************************************************************************** * - * \brief Min reducer class template for use in OpenMP execution. - * - * For usage example, see reducers.hxx. + * \brief Min reducer class template. * ****************************************************************************** */ @@ -338,7 +346,7 @@ class BaseReduceMin : public BaseReduce /*! ************************************************************************** * - * \brief MinLoc reducer class template for use in tbb execution. + * \brief MinLoc reducer class template. * ************************************************************************** */ @@ -387,7 +395,7 @@ class BaseReduceMinLoc /*! ************************************************************************** * - * \brief Max reducer class template for use in tbb execution. + * \brief Max reducer class template. * ************************************************************************** */ @@ -410,7 +418,7 @@ class BaseReduceMax : public BaseReduce /*! ************************************************************************** * - * \brief Sum reducer class template for use in tbb execution. + * \brief Sum reducer class template. * ************************************************************************** */ @@ -434,7 +442,7 @@ class BaseReduceSum : public BaseReduce /*! ************************************************************************** * - * \brief Bitwise OR reducer class template for use in tbb execution. + * \brief Bitwise OR reducer class template. * ************************************************************************** */ @@ -458,7 +466,7 @@ class BaseReduceBitOr : public BaseReduce /*! ************************************************************************** * - * \brief Bitwise AND reducer class template for use in tbb execution. + * \brief Bitwise AND reducer class template. * ************************************************************************** */ @@ -483,7 +491,7 @@ class BaseReduceBitAnd : public BaseReduce /*! ************************************************************************** * - * \brief MaxLoc reducer class template for use in tbb execution. + * \brief MaxLoc reducer class template. * ************************************************************************** */ diff --git a/include/RAJA/pattern/forall.hpp b/include/RAJA/pattern/forall.hpp index a1a3b7dfaf..686f0e8c6b 100644 --- a/include/RAJA/pattern/forall.hpp +++ b/include/RAJA/pattern/forall.hpp @@ -43,7 +43,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel.hpp b/include/RAJA/pattern/kernel.hpp index f59689f1e6..1875fe27d9 100644 --- a/include/RAJA/pattern/kernel.hpp +++ b/include/RAJA/pattern/kernel.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Collapse.hpp b/include/RAJA/pattern/kernel/Collapse.hpp index 32f1fa6316..8efb126397 100644 --- a/include/RAJA/pattern/kernel/Collapse.hpp +++ b/include/RAJA/pattern/kernel/Collapse.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Conditional.hpp b/include/RAJA/pattern/kernel/Conditional.hpp index 5d39a247d3..6b7875c4c2 100644 --- a/include/RAJA/pattern/kernel/Conditional.hpp +++ b/include/RAJA/pattern/kernel/Conditional.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/For.hpp b/include/RAJA/pattern/kernel/For.hpp index 6c77ffb0d8..1c11ad92bc 100644 --- a/include/RAJA/pattern/kernel/For.hpp +++ b/include/RAJA/pattern/kernel/For.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/ForICount.hpp b/include/RAJA/pattern/kernel/ForICount.hpp index efb65acb26..18515c7f59 100644 --- a/include/RAJA/pattern/kernel/ForICount.hpp +++ b/include/RAJA/pattern/kernel/ForICount.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Hyperplane.hpp b/include/RAJA/pattern/kernel/Hyperplane.hpp index 06d7300126..955afcecc0 100644 --- a/include/RAJA/pattern/kernel/Hyperplane.hpp +++ b/include/RAJA/pattern/kernel/Hyperplane.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/InitLocalMem.hpp b/include/RAJA/pattern/kernel/InitLocalMem.hpp index b2c119f065..21d9e3cd2a 100644 --- a/include/RAJA/pattern/kernel/InitLocalMem.hpp +++ b/include/RAJA/pattern/kernel/InitLocalMem.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Lambda.hpp b/include/RAJA/pattern/kernel/Lambda.hpp index 62cb6c2c96..29d41b431e 100644 --- a/include/RAJA/pattern/kernel/Lambda.hpp +++ b/include/RAJA/pattern/kernel/Lambda.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Param.hpp b/include/RAJA/pattern/kernel/Param.hpp index 19f615b57b..8e870ebe15 100644 --- a/include/RAJA/pattern/kernel/Param.hpp +++ b/include/RAJA/pattern/kernel/Param.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Reduce.hpp b/include/RAJA/pattern/kernel/Reduce.hpp index e9b7492d8d..4de4922ea3 100644 --- a/include/RAJA/pattern/kernel/Reduce.hpp +++ b/include/RAJA/pattern/kernel/Reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Region.hpp b/include/RAJA/pattern/kernel/Region.hpp index 20d65813f7..82b79ae775 100644 --- a/include/RAJA/pattern/kernel/Region.hpp +++ b/include/RAJA/pattern/kernel/Region.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/Tile.hpp b/include/RAJA/pattern/kernel/Tile.hpp index b71cfc9a37..53b595564e 100644 --- a/include/RAJA/pattern/kernel/Tile.hpp +++ b/include/RAJA/pattern/kernel/Tile.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/TileTCount.hpp b/include/RAJA/pattern/kernel/TileTCount.hpp index 393c6c8ff2..2653e992c7 100644 --- a/include/RAJA/pattern/kernel/TileTCount.hpp +++ b/include/RAJA/pattern/kernel/TileTCount.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/internal.hpp b/include/RAJA/pattern/kernel/internal.hpp index 666d5cb355..b0a3a9c274 100644 --- a/include/RAJA/pattern/kernel/internal.hpp +++ b/include/RAJA/pattern/kernel/internal.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/internal/LoopData.hpp b/include/RAJA/pattern/kernel/internal/LoopData.hpp index 2fb20c4352..8cef228874 100644 --- a/include/RAJA/pattern/kernel/internal/LoopData.hpp +++ b/include/RAJA/pattern/kernel/internal/LoopData.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/internal/LoopTypes.hpp b/include/RAJA/pattern/kernel/internal/LoopTypes.hpp index 91995bd82c..e47fe59e37 100644 --- a/include/RAJA/pattern/kernel/internal/LoopTypes.hpp +++ b/include/RAJA/pattern/kernel/internal/LoopTypes.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/internal/Statement.hpp b/include/RAJA/pattern/kernel/internal/Statement.hpp index 95441514c3..48ca828a68 100644 --- a/include/RAJA/pattern/kernel/internal/Statement.hpp +++ b/include/RAJA/pattern/kernel/internal/Statement.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/internal/StatementList.hpp b/include/RAJA/pattern/kernel/internal/StatementList.hpp index aadc6cc5f8..5c0d71afb4 100644 --- a/include/RAJA/pattern/kernel/internal/StatementList.hpp +++ b/include/RAJA/pattern/kernel/internal/StatementList.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/kernel/internal/Template.hpp b/include/RAJA/pattern/kernel/internal/Template.hpp index b1bb1a9c17..7b34949570 100644 --- a/include/RAJA/pattern/kernel/internal/Template.hpp +++ b/include/RAJA/pattern/kernel/internal/Template.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/launch.hpp b/include/RAJA/pattern/launch.hpp index 4f1a48d72d..3d4804a4be 100644 --- a/include/RAJA/pattern/launch.hpp +++ b/include/RAJA/pattern/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/launch/launch_core.hpp b/include/RAJA/pattern/launch/launch_core.hpp index 6e23986ad3..6f56f4ed65 100644 --- a/include/RAJA/pattern/launch/launch_core.hpp +++ b/include/RAJA/pattern/launch/launch_core.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -202,7 +202,7 @@ class LaunchContext void teamSync() { #if defined(RAJA_GPU_DEVICE_COMPILE_PASS_ACTIVE) && defined(RAJA_ENABLE_SYCL) - itm->barrier(sycl::access::fence_space::local_space); + itm->barrier(::sycl::access::fence_space::local_space); #endif #if defined(RAJA_GPU_DEVICE_COMPILE_PASS_ACTIVE) && !defined(RAJA_ENABLE_SYCL) @@ -214,24 +214,57 @@ class LaunchContext template struct LaunchExecute; -//Policy based launch without name argument -template -void launch(LaunchParams const ¶ms, BODY const &body) +//Policy based launch with support to new reducers... +template +void launch(LaunchParams const &launch_params, const char *kernel_name, ReduceParams&&... rest_of_launch_args) { - launch(params, nullptr, body); + + //Get reducers + auto reducers = expt::make_forall_param_pack(std::forward(rest_of_launch_args)...); + + auto&& launch_body = expt::get_lambda(std::forward(rest_of_launch_args)...); + + //Take the first policy as we assume the second policy is not user defined. + //We rely on the user to pair launch and loop policies correctly. + util::PluginContext context{util::make_context()}; + util::callPreCapturePlugins(context); + + using RAJA::util::trigger_updates_before; + auto p_body = trigger_updates_before(launch_body); + + util::callPostCapturePlugins(context); + + util::callPreLaunchPlugins(context); + + using launch_t = LaunchExecute; + + using Res = typename resources::get_resource::type; + + launch_t::exec(Res::get_default(), launch_params, kernel_name, p_body, reducers); + + util::callPostLaunchPlugins(context); } -//Policy based launch -template -void launch(LaunchParams const ¶ms, const char *kernel_name, BODY const &body) + +//Duplicate of code above on account that we need to support the case in which a kernel_name is not given +template +void launch(LaunchParams const &launch_params, ReduceParams&&... rest_of_launch_args) { + + const char *kernel_name = nullptr; + + //Get reducers + auto reducers = expt::make_forall_param_pack(std::forward(rest_of_launch_args)...); + + auto&& launch_body = expt::get_lambda(std::forward(rest_of_launch_args)...); + //Take the first policy as we assume the second policy is not user defined. //We rely on the user to pair launch and loop policies correctly. util::PluginContext context{util::make_context()}; util::callPreCapturePlugins(context); using RAJA::util::trigger_updates_before; - auto p_body = trigger_updates_before(body); + auto p_body = trigger_updates_before(launch_body); util::callPostCapturePlugins(context); @@ -241,13 +274,14 @@ void launch(LaunchParams const ¶ms, const char *kernel_name, BODY const &bod using Res = typename resources::get_resource::type; - launch_t::exec(Res::get_default(), params, kernel_name, p_body); + launch_t::exec(Res::get_default(), launch_params, kernel_name, p_body, reducers); util::callPostLaunchPlugins(context); } - +//================================================= //Run time based policy launch +//================================================= template void launch(ExecPlace place, LaunchParams const ¶ms, BODY const &body) { @@ -278,6 +312,66 @@ void launch(ExecPlace place, const LaunchParams ¶ms, const char *kernel_name } +//Run-time API for new reducer interface +template +void launch(ExecPlace place, const LaunchParams &launch_params, const char *kernel_name, ReduceParams&&... rest_of_launch_args) +{ + + //Forward to single policy launch API - simplifies testing of plugins + switch (place) { + case ExecPlace::HOST: { + using Res = typename resources::get_resource::type; + launch> + (Res::get_default(), launch_params, kernel_name, std::forward(rest_of_launch_args)...); + break; + } +#if defined(RAJA_GPU_ACTIVE) + case ExecPlace::DEVICE: { + using Res = typename resources::get_resource::type; + launch> + (Res::get_default(), launch_params, kernel_name, std::forward(rest_of_launch_args)...); + break; + } +#endif + default: + RAJA_ABORT_OR_THROW("Unknown launch place or device is not enabled"); + } + +} + +//Run-time API for new reducer interface with support of the case without a new kernel name +template +void launch(ExecPlace place, const LaunchParams &launch_params, ReduceParams&&... rest_of_launch_args) + //BODY const &body) +{ + + const char *kernel_name = nullptr; + + //Forward to single policy launch API - simplifies testing of plugins + switch (place) { + case ExecPlace::HOST: { + using Res = typename resources::get_resource::type; + launch> + (Res::get_default(), launch_params, kernel_name, std::forward(rest_of_launch_args)...); + break; + } +#if defined(RAJA_GPU_ACTIVE) + case ExecPlace::DEVICE: { + using Res = typename resources::get_resource::type; + launch> + (Res::get_default(), launch_params, kernel_name, std::forward(rest_of_launch_args)...); + break; + } +#endif + default: + RAJA_ABORT_OR_THROW("Unknown launch place or device is not enabled"); + } + +} + + + + // Helper function to retrieve a resource based on the run-time policy - if a device is active #if defined(RAJA_ENABLE_CUDA) || defined(RAJA_ENABLE_HIP) template @@ -294,20 +388,86 @@ RAJA::resources::Resource Get_Host_Resource(T host_res, RAJA::ExecPlace device){ } #endif - -//Launch API which takes team resource struct -template +//Launch API which takes team resource struct and supports new reducers +template resources::EventProxy -launch(RAJA::resources::Resource res, LaunchParams const ¶ms, BODY const &body) +launch(RAJA::resources::Resource res, LaunchParams const &launch_params, + const char *kernel_name, ReduceParams&&... rest_of_launch_args) { - return launch(res, params, nullptr, body); + + //Get reducers + auto reducers = expt::make_forall_param_pack(std::forward(rest_of_launch_args)...); + + auto&& launch_body = expt::get_lambda(std::forward(rest_of_launch_args)...); + + ExecPlace place; + if(res.get_platform() == RAJA::Platform::host) { + place = RAJA::ExecPlace::HOST; + } else { + place = RAJA::ExecPlace::DEVICE; + } + + // + //Configure plugins + // +#if defined(RAJA_GPU_ACTIVE) + util::PluginContext context{place == ExecPlace::HOST ? + util::make_context() : + util::make_context()}; +#else + util::PluginContext context{util::make_context()}; +#endif + + util::callPreCapturePlugins(context); + + using RAJA::util::trigger_updates_before; + auto p_body = trigger_updates_before(launch_body); + + util::callPostCapturePlugins(context); + + util::callPreLaunchPlugins(context); + + switch (place) { + case ExecPlace::HOST: { + using launch_t = LaunchExecute; + resources::EventProxy e_proxy = launch_t::exec(res, launch_params, kernel_name, p_body, reducers); + util::callPostLaunchPlugins(context); + return e_proxy; + } +#if defined(RAJA_GPU_ACTIVE) + case ExecPlace::DEVICE: { + using launch_t = LaunchExecute; + resources::EventProxy e_proxy = launch_t::exec(res, launch_params, kernel_name, p_body, reducers); + util::callPostLaunchPlugins(context); + return e_proxy; + } +#endif + default: { + RAJA_ABORT_OR_THROW("Unknown launch place or device is not enabled"); + } + } + + RAJA_ABORT_OR_THROW("Unknown launch place"); + + //^^ RAJA will abort before getting here + return resources::EventProxy(res); } -template + +//Duplicate of API above on account that we need to handle the case that a kernel name is not provided +template resources::EventProxy -launch(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *kernel_name, BODY const &body) +launch(RAJA::resources::Resource res, LaunchParams const &launch_params, + ReduceParams&&... rest_of_launch_args) { + const char *kernel_name = nullptr; + + //Get reducers + auto reducers = expt::make_forall_param_pack(std::forward(rest_of_launch_args)...); + + auto&& launch_body = expt::get_lambda(std::forward(rest_of_launch_args)...); + ExecPlace place; if(res.get_platform() == RAJA::Platform::host) { place = RAJA::ExecPlace::HOST; @@ -320,8 +480,8 @@ launch(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *ke // #if defined(RAJA_GPU_ACTIVE) util::PluginContext context{place == ExecPlace::HOST ? - util::make_context() - : util::make_context()}; + util::make_context() : + util::make_context()}; #else util::PluginContext context{util::make_context()}; #endif @@ -329,7 +489,7 @@ launch(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *ke util::callPreCapturePlugins(context); using RAJA::util::trigger_updates_before; - auto p_body = trigger_updates_before(body); + auto p_body = trigger_updates_before(launch_body); util::callPostCapturePlugins(context); @@ -338,14 +498,14 @@ launch(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *ke switch (place) { case ExecPlace::HOST: { using launch_t = LaunchExecute; - resources::EventProxy e_proxy = launch_t::exec(res, params, kernel_name, p_body); + resources::EventProxy e_proxy = launch_t::exec(res, launch_params, kernel_name, p_body, reducers); util::callPostLaunchPlugins(context); return e_proxy; } #if defined(RAJA_GPU_ACTIVE) case ExecPlace::DEVICE: { using launch_t = LaunchExecute; - resources::EventProxy e_proxy = launch_t::exec(res, params, kernel_name, p_body); + resources::EventProxy e_proxy = launch_t::exec(res, launch_params, kernel_name, p_body, reducers); util::callPostLaunchPlugins(context); return e_proxy; } diff --git a/include/RAJA/pattern/params/forall.hpp b/include/RAJA/pattern/params/forall.hpp index 61ecfbe33e..7e685e2ce0 100644 --- a/include/RAJA/pattern/params/forall.hpp +++ b/include/RAJA/pattern/params/forall.hpp @@ -2,12 +2,12 @@ #define FORALL_PARAM_HPP #include "RAJA/policy/sequential/params/reduce.hpp" -#include "RAJA/policy/tbb/params/reduce.hpp" #include "RAJA/policy/openmp/params/reduce.hpp" #include "RAJA/policy/openmp_target/params/reduce.hpp" #include "RAJA/policy/cuda/params/reduce.hpp" #include "RAJA/policy/cuda/params/kernel_name.hpp" #include "RAJA/policy/hip/params/reduce.hpp" +#include "RAJA/policy/sycl/params/reduce.hpp" #include "RAJA/util/CombiningAdapter.hpp" diff --git a/include/RAJA/pattern/params/reducer.hpp b/include/RAJA/pattern/params/reducer.hpp index d094a729c1..05103c7ad4 100644 --- a/include/RAJA/pattern/params/reducer.hpp +++ b/include/RAJA/pattern/params/reducer.hpp @@ -8,6 +8,8 @@ #include "RAJA/policy/cuda/MemUtils_CUDA.hpp" #elif defined(RAJA_HIP_ACTIVE) #include "RAJA/policy/hip/MemUtils_HIP.hpp" +#elif defined(RAJA_SYCL_ACTIVE) +#include "RAJA/policy/sycl/MemUtils_SYCL.hpp" #endif namespace RAJA @@ -25,13 +27,11 @@ struct ValLoc { RAJA_HOST_DEVICE ValLoc(value_type v) : val(v) {} RAJA_HOST_DEVICE ValLoc(value_type v, RAJA::Index_type l) : val(v), loc(l) {} - RAJA_HOST_DEVICE void min(value_type v, index_type l) { if (v < val) { val = v; loc = l; } } - RAJA_HOST_DEVICE void max(value_type v, index_type l) { if (v > val) { val = v; loc = l; } } + RAJA_HOST_DEVICE void min(value_type v, index_type l) { if (v < val) { val = v; loc = l; } } + RAJA_HOST_DEVICE void max(value_type v, index_type l) { if (v > val) { val = v; loc = l; } } - bool constexpr operator < (const ValLoc& rhs) const { return val <= rhs.val; } - bool constexpr operator <=(const ValLoc& rhs) const { return val < rhs.val; } - bool constexpr operator > (const ValLoc& rhs) const { return val >= rhs.val; } - bool constexpr operator >=(const ValLoc& rhs) const { return val > rhs.val; } + bool constexpr operator<(const ValLoc& rhs) const { return val < rhs.val; } + bool constexpr operator>(const ValLoc& rhs) const { return val > rhs.val; } value_type getVal() {return val;} RAJA::Index_type getLoc() {return loc;} @@ -74,6 +74,8 @@ namespace detail using device_mem_pool_t = RAJA::cuda::device_mempool_type; #elif defined(RAJA_HIP_ACTIVE) using device_mem_pool_t = RAJA::hip::device_mempool_type; +#elif defined(RAJA_SYCL_ACTIVE) + using device_mem_pool_t = RAJA::sycl::device_mempool_type; #endif // @@ -92,7 +94,7 @@ namespace detail value_type *target = nullptr; value_type val = op::identity(); -#if defined(RAJA_CUDA_ACTIVE) || defined(RAJA_HIP_ACTIVE) +#if defined(RAJA_CUDA_ACTIVE) || defined(RAJA_HIP_ACTIVE) || defined(RAJA_SYCL_ACTIVE) // Device related attributes. value_type * devicetarget = nullptr; RAJA::detail::SoAPtr device_mem; diff --git a/include/RAJA/pattern/reduce.hpp b/include/RAJA/pattern/reduce.hpp index e65b2a59e2..0c0eaf3efb 100644 --- a/include/RAJA/pattern/reduce.hpp +++ b/include/RAJA/pattern/reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/region.hpp b/include/RAJA/pattern/region.hpp index edd8135e78..a79422fa7b 100644 --- a/include/RAJA/pattern/region.hpp +++ b/include/RAJA/pattern/region.hpp @@ -12,7 +12,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/scan.hpp b/include/RAJA/pattern/scan.hpp index 3bc34d23c4..0f46ee0a22 100644 --- a/include/RAJA/pattern/scan.hpp +++ b/include/RAJA/pattern/scan.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/sort.hpp b/include/RAJA/pattern/sort.hpp index f95fa803f1..acf3fe5ba7 100644 --- a/include/RAJA/pattern/sort.hpp +++ b/include/RAJA/pattern/sort.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/synchronize.hpp b/include/RAJA/pattern/synchronize.hpp index 2165cc6181..d3e42af81c 100644 --- a/include/RAJA/pattern/synchronize.hpp +++ b/include/RAJA/pattern/synchronize.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor.hpp b/include/RAJA/pattern/tensor.hpp index 3e51789ce0..547f5bbad3 100644 --- a/include/RAJA/pattern/tensor.hpp +++ b/include/RAJA/pattern/tensor.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/MatrixRegister.hpp b/include/RAJA/pattern/tensor/MatrixRegister.hpp index ac9400fa82..9fa39f34ee 100644 --- a/include/RAJA/pattern/tensor/MatrixRegister.hpp +++ b/include/RAJA/pattern/tensor/MatrixRegister.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/ScalarRegister.hpp b/include/RAJA/pattern/tensor/ScalarRegister.hpp index ea86fe8346..f6675b4ba9 100644 --- a/include/RAJA/pattern/tensor/ScalarRegister.hpp +++ b/include/RAJA/pattern/tensor/ScalarRegister.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/TensorBlock.hpp b/include/RAJA/pattern/tensor/TensorBlock.hpp index dd8cf79708..0e9869a772 100644 --- a/include/RAJA/pattern/tensor/TensorBlock.hpp +++ b/include/RAJA/pattern/tensor/TensorBlock.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/TensorIndex.hpp b/include/RAJA/pattern/tensor/TensorIndex.hpp index 0df4da1cd5..f992649876 100644 --- a/include/RAJA/pattern/tensor/TensorIndex.hpp +++ b/include/RAJA/pattern/tensor/TensorIndex.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/TensorLayout.hpp b/include/RAJA/pattern/tensor/TensorLayout.hpp index c37631d6ed..376d6b905a 100644 --- a/include/RAJA/pattern/tensor/TensorLayout.hpp +++ b/include/RAJA/pattern/tensor/TensorLayout.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/TensorRegister.hpp b/include/RAJA/pattern/tensor/TensorRegister.hpp index 982cf465a9..d410f46fb7 100644 --- a/include/RAJA/pattern/tensor/TensorRegister.hpp +++ b/include/RAJA/pattern/tensor/TensorRegister.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/VectorRegister.hpp b/include/RAJA/pattern/tensor/VectorRegister.hpp index e3db48bb83..afab05658f 100644 --- a/include/RAJA/pattern/tensor/VectorRegister.hpp +++ b/include/RAJA/pattern/tensor/VectorRegister.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/BinaryOperator.hpp b/include/RAJA/pattern/tensor/internal/ET/BinaryOperator.hpp index 646f2b1c7b..953f4fd4a0 100644 --- a/include/RAJA/pattern/tensor/internal/ET/BinaryOperator.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/BinaryOperator.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/BinaryOperatorTraits.hpp b/include/RAJA/pattern/tensor/internal/ET/BinaryOperatorTraits.hpp index a6dd12ec81..a1450bf19f 100644 --- a/include/RAJA/pattern/tensor/internal/ET/BinaryOperatorTraits.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/BinaryOperatorTraits.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/BlockLiteral.hpp b/include/RAJA/pattern/tensor/internal/ET/BlockLiteral.hpp index 7b2cbc37d6..210414eaec 100644 --- a/include/RAJA/pattern/tensor/internal/ET/BlockLiteral.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/BlockLiteral.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/ExpressionTemplateBase.hpp b/include/RAJA/pattern/tensor/internal/ET/ExpressionTemplateBase.hpp index 1b547a2f54..3e96a63462 100644 --- a/include/RAJA/pattern/tensor/internal/ET/ExpressionTemplateBase.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/ExpressionTemplateBase.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/MultiplyOperator.hpp b/include/RAJA/pattern/tensor/internal/ET/MultiplyOperator.hpp index 2b92fe30f8..e7e7223ce4 100644 --- a/include/RAJA/pattern/tensor/internal/ET/MultiplyOperator.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/MultiplyOperator.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorDivide.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorDivide.hpp index 735f5e12f0..faa92747dd 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorDivide.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorDivide.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorLiteral.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorLiteral.hpp index afec8e609c..6720a304f2 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorLiteral.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorLiteral.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorLoadStore.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorLoadStore.hpp index eb80f56592..3b69552a32 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorLoadStore.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorLoadStore.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorMultiply.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorMultiply.hpp index b448fcfab9..3e3429588f 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorMultiply.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorMultiply.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorMultiplyAdd.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorMultiplyAdd.hpp index 4c87ae061e..44f27e92c7 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorMultiplyAdd.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorMultiplyAdd.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorNegate.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorNegate.hpp index eece4ec909..d5211e4963 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorNegate.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorNegate.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorScalarLiteral.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorScalarLiteral.hpp index 57c92df492..4ab0a3ebc6 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorScalarLiteral.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorScalarLiteral.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/TensorTranspose.hpp b/include/RAJA/pattern/tensor/internal/ET/TensorTranspose.hpp index 5f3e9880ca..46950eec6f 100644 --- a/include/RAJA/pattern/tensor/internal/ET/TensorTranspose.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/TensorTranspose.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ET/normalizeOperand.hpp b/include/RAJA/pattern/tensor/internal/ET/normalizeOperand.hpp index 12eb73a4b6..2a868a3131 100644 --- a/include/RAJA/pattern/tensor/internal/ET/normalizeOperand.hpp +++ b/include/RAJA/pattern/tensor/internal/ET/normalizeOperand.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/ExpressionTemplate.hpp b/include/RAJA/pattern/tensor/internal/ExpressionTemplate.hpp index eb5d1c8c30..2b6bf7304d 100644 --- a/include/RAJA/pattern/tensor/internal/ExpressionTemplate.hpp +++ b/include/RAJA/pattern/tensor/internal/ExpressionTemplate.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/MatrixMatrixMultiply.hpp b/include/RAJA/pattern/tensor/internal/MatrixMatrixMultiply.hpp index 6e7c7e255f..08a9886acc 100644 --- a/include/RAJA/pattern/tensor/internal/MatrixMatrixMultiply.hpp +++ b/include/RAJA/pattern/tensor/internal/MatrixMatrixMultiply.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/MatrixRegisterImpl.hpp b/include/RAJA/pattern/tensor/internal/MatrixRegisterImpl.hpp index bd14bd4eda..3036a096b5 100644 --- a/include/RAJA/pattern/tensor/internal/MatrixRegisterImpl.hpp +++ b/include/RAJA/pattern/tensor/internal/MatrixRegisterImpl.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/RegisterBase.hpp b/include/RAJA/pattern/tensor/internal/RegisterBase.hpp index 403289faa7..3480fda10c 100644 --- a/include/RAJA/pattern/tensor/internal/RegisterBase.hpp +++ b/include/RAJA/pattern/tensor/internal/RegisterBase.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/TensorIndexTraits.hpp b/include/RAJA/pattern/tensor/internal/TensorIndexTraits.hpp index eda29cae6f..bb53993fed 100644 --- a/include/RAJA/pattern/tensor/internal/TensorIndexTraits.hpp +++ b/include/RAJA/pattern/tensor/internal/TensorIndexTraits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/TensorRef.hpp b/include/RAJA/pattern/tensor/internal/TensorRef.hpp index 0e7363f55b..60e31f24b9 100644 --- a/include/RAJA/pattern/tensor/internal/TensorRef.hpp +++ b/include/RAJA/pattern/tensor/internal/TensorRef.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/TensorRegisterBase.hpp b/include/RAJA/pattern/tensor/internal/TensorRegisterBase.hpp index 435144feb9..d2bce598ff 100644 --- a/include/RAJA/pattern/tensor/internal/TensorRegisterBase.hpp +++ b/include/RAJA/pattern/tensor/internal/TensorRegisterBase.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/TensorTileExec.hpp b/include/RAJA/pattern/tensor/internal/TensorTileExec.hpp index d2f21fe2e9..3899a97118 100644 --- a/include/RAJA/pattern/tensor/internal/TensorTileExec.hpp +++ b/include/RAJA/pattern/tensor/internal/TensorTileExec.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/internal/VectorRegisterImpl.hpp b/include/RAJA/pattern/tensor/internal/VectorRegisterImpl.hpp index 64b36066a7..4ef4998fbe 100644 --- a/include/RAJA/pattern/tensor/internal/VectorRegisterImpl.hpp +++ b/include/RAJA/pattern/tensor/internal/VectorRegisterImpl.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/pattern/tensor/stats.hpp b/include/RAJA/pattern/tensor/stats.hpp index 4afab70bbf..77b70faf00 100644 --- a/include/RAJA/pattern/tensor/stats.hpp +++ b/include/RAJA/pattern/tensor/stats.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/MultiPolicy.hpp b/include/RAJA/policy/MultiPolicy.hpp index dd1797702a..defa08585a 100644 --- a/include/RAJA/policy/MultiPolicy.hpp +++ b/include/RAJA/policy/MultiPolicy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/PolicyBase.hpp b/include/RAJA/policy/PolicyBase.hpp index 2143dddea0..f867265b8a 100644 --- a/include/RAJA/policy/PolicyBase.hpp +++ b/include/RAJA/policy/PolicyBase.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -34,8 +34,7 @@ enum class Policy { target_openmp, cuda, hip, - sycl, - tbb + sycl }; enum class Pattern { @@ -181,9 +180,6 @@ template struct is_openmp_policy : RAJA::policy_is { }; template -struct is_tbb_policy : RAJA::policy_is { -}; -template struct is_target_openmp_policy : RAJA::policy_is { }; diff --git a/include/RAJA/policy/WorkGroup.hpp b/include/RAJA/policy/WorkGroup.hpp index d6cfd09124..cae78d2493 100644 --- a/include/RAJA/policy/WorkGroup.hpp +++ b/include/RAJA/policy/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/atomic_auto.hpp b/include/RAJA/policy/atomic_auto.hpp index 33980e0ba6..a64212b665 100644 --- a/include/RAJA/policy/atomic_auto.hpp +++ b/include/RAJA/policy/atomic_auto.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/atomic_builtin.hpp b/include/RAJA/policy/atomic_builtin.hpp index ea5ea8dd4a..fa3f4841a1 100644 --- a/include/RAJA/policy/atomic_builtin.hpp +++ b/include/RAJA/policy/atomic_builtin.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda.hpp b/include/RAJA/policy/cuda.hpp index 96c27dc26f..c561122349 100644 --- a/include/RAJA/policy/cuda.hpp +++ b/include/RAJA/policy/cuda.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/MemUtils_CUDA.hpp b/include/RAJA/policy/cuda/MemUtils_CUDA.hpp index df9922b06d..2a8f848825 100644 --- a/include/RAJA/policy/cuda/MemUtils_CUDA.hpp +++ b/include/RAJA/policy/cuda/MemUtils_CUDA.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/WorkGroup.hpp b/include/RAJA/policy/cuda/WorkGroup.hpp index fc2d2eb5ed..d24dcfb769 100644 --- a/include/RAJA/policy/cuda/WorkGroup.hpp +++ b/include/RAJA/policy/cuda/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/WorkGroup/Dispatcher.hpp b/include/RAJA/policy/cuda/WorkGroup/Dispatcher.hpp index 0c63d2dbc8..f6269b36e4 100644 --- a/include/RAJA/policy/cuda/WorkGroup/Dispatcher.hpp +++ b/include/RAJA/policy/cuda/WorkGroup/Dispatcher.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/WorkGroup/WorkRunner.hpp b/include/RAJA/policy/cuda/WorkGroup/WorkRunner.hpp index 07ae56acd6..c4aabd012f 100644 --- a/include/RAJA/policy/cuda/WorkGroup/WorkRunner.hpp +++ b/include/RAJA/policy/cuda/WorkGroup/WorkRunner.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/atomic.hpp b/include/RAJA/policy/cuda/atomic.hpp index c06d7f2bce..573618fc25 100644 --- a/include/RAJA/policy/cuda/atomic.hpp +++ b/include/RAJA/policy/cuda/atomic.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/forall.hpp b/include/RAJA/policy/cuda/forall.hpp index 91af0cb321..3837a8b062 100644 --- a/include/RAJA/policy/cuda/forall.hpp +++ b/include/RAJA/policy/cuda/forall.hpp @@ -13,7 +13,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel.hpp b/include/RAJA/policy/cuda/kernel.hpp index aea83e0b34..3ed72ecd90 100644 --- a/include/RAJA/policy/cuda/kernel.hpp +++ b/include/RAJA/policy/cuda/kernel.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/Conditional.hpp b/include/RAJA/policy/cuda/kernel/Conditional.hpp index cc9cc8d364..ff15848bcb 100644 --- a/include/RAJA/policy/cuda/kernel/Conditional.hpp +++ b/include/RAJA/policy/cuda/kernel/Conditional.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/CudaKernel.hpp b/include/RAJA/policy/cuda/kernel/CudaKernel.hpp index 95471e05f2..6497a64f42 100644 --- a/include/RAJA/policy/cuda/kernel/CudaKernel.hpp +++ b/include/RAJA/policy/cuda/kernel/CudaKernel.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/For.hpp b/include/RAJA/policy/cuda/kernel/For.hpp index 60d238c432..11870f13b0 100644 --- a/include/RAJA/policy/cuda/kernel/For.hpp +++ b/include/RAJA/policy/cuda/kernel/For.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/ForICount.hpp b/include/RAJA/policy/cuda/kernel/ForICount.hpp index a2d4b099ab..dd7c4c4ffe 100644 --- a/include/RAJA/policy/cuda/kernel/ForICount.hpp +++ b/include/RAJA/policy/cuda/kernel/ForICount.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/Hyperplane.hpp b/include/RAJA/policy/cuda/kernel/Hyperplane.hpp index 2f66a897d3..fd33192a65 100644 --- a/include/RAJA/policy/cuda/kernel/Hyperplane.hpp +++ b/include/RAJA/policy/cuda/kernel/Hyperplane.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/InitLocalMem.hpp b/include/RAJA/policy/cuda/kernel/InitLocalMem.hpp index 8f69edebbc..258cd204d6 100644 --- a/include/RAJA/policy/cuda/kernel/InitLocalMem.hpp +++ b/include/RAJA/policy/cuda/kernel/InitLocalMem.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/Lambda.hpp b/include/RAJA/policy/cuda/kernel/Lambda.hpp index 1cf0c8f0ed..e932a3e270 100644 --- a/include/RAJA/policy/cuda/kernel/Lambda.hpp +++ b/include/RAJA/policy/cuda/kernel/Lambda.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/Reduce.hpp b/include/RAJA/policy/cuda/kernel/Reduce.hpp index 3a22b24f59..7e46748991 100644 --- a/include/RAJA/policy/cuda/kernel/Reduce.hpp +++ b/include/RAJA/policy/cuda/kernel/Reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/Sync.hpp b/include/RAJA/policy/cuda/kernel/Sync.hpp index b3ad4b212b..7dd45d8837 100644 --- a/include/RAJA/policy/cuda/kernel/Sync.hpp +++ b/include/RAJA/policy/cuda/kernel/Sync.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/Tile.hpp b/include/RAJA/policy/cuda/kernel/Tile.hpp index 8cb13e686c..ad54c86a54 100644 --- a/include/RAJA/policy/cuda/kernel/Tile.hpp +++ b/include/RAJA/policy/cuda/kernel/Tile.hpp @@ -10,7 +10,7 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/TileTCount.hpp b/include/RAJA/policy/cuda/kernel/TileTCount.hpp index 6323b398fe..84a0bec412 100644 --- a/include/RAJA/policy/cuda/kernel/TileTCount.hpp +++ b/include/RAJA/policy/cuda/kernel/TileTCount.hpp @@ -10,7 +10,7 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/kernel/internal.hpp b/include/RAJA/policy/cuda/kernel/internal.hpp index 82760d46ea..a33b564309 100644 --- a/include/RAJA/policy/cuda/kernel/internal.hpp +++ b/include/RAJA/policy/cuda/kernel/internal.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/launch.hpp b/include/RAJA/policy/cuda/launch.hpp index a0f9eec09e..26e56e5cda 100644 --- a/include/RAJA/policy/cuda/launch.hpp +++ b/include/RAJA/policy/cuda/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -44,12 +44,34 @@ __global__ void launch_global_fcn(BODY body_in) body(ctx); } +template +__global__ void launch_new_reduce_global_fcn(BODY body_in, ReduceParams reduce_params) +{ + LaunchContext ctx; + + using RAJA::internal::thread_privatize; + auto privatizer = thread_privatize(body_in); + auto& body = privatizer.get_priv(); + + //Set pointer to shared memory + extern __shared__ char raja_shmem_ptr[]; + ctx.shared_mem_ptr = raja_shmem_ptr; + + RAJA::expt::invoke_body( reduce_params, body, ctx ); + + //Using a flatten global policy as we may use all dimensions + RAJA::expt::ParamMultiplexer::combine(reduce_params); +} + template struct LaunchExecute> { - template - static resources::EventProxy - exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, BODY_IN &&body_in) + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, const LaunchParams ¶ms, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { using BODY = camp::decay; @@ -96,6 +118,70 @@ struct LaunchExecute(res); } + //Version with explicit reduction parameters.. + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, const LaunchParams &launch_params, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &launch_reducers) + { + using BODY = camp::decay; + + auto func = reinterpret_cast(launch_new_reduce_global_fcn >); + + resources::Cuda cuda_res = res.get(); + + // + // Compute the number of blocks and threads + // + + cuda_dim_t gridSize{ static_cast(launch_params.teams.value[0]), + static_cast(launch_params.teams.value[1]), + static_cast(launch_params.teams.value[2]) }; + + cuda_dim_t blockSize{ static_cast(launch_params.threads.value[0]), + static_cast(launch_params.threads.value[1]), + static_cast(launch_params.threads.value[2]) }; + + // Only launch kernel if we have something to iterate over + constexpr cuda_dim_member_t zero = 0; + if ( gridSize.x > zero && gridSize.y > zero && gridSize.z > zero && + blockSize.x > zero && blockSize.y > zero && blockSize.z > zero ) { + + RAJA_FT_BEGIN; + + RAJA::cuda::detail::cudaInfo launch_info; + launch_info.gridDim = gridSize; + launch_info.blockDim = blockSize; + launch_info.res = cuda_res; + + { + using EXEC_POL = RAJA::policy::cuda::cuda_launch_explicit_t; + RAJA::expt::ParamMultiplexer::init(launch_reducers, launch_info); + + + // + // Privatize the loop_body, using make_launch_body to setup reductions + // + BODY body = RAJA::cuda::make_launch_body( + gridSize, blockSize, launch_params.shared_mem_size, cuda_res, std::forward(body_in)); + + // + // Launch the kernel + // + void *args[] = {(void*)&body, (void*)&launch_reducers}; + RAJA::cuda::launch((const void*)func, gridSize, blockSize, args, launch_params.shared_mem_size, cuda_res, async, kernel_name); + + RAJA::expt::ParamMultiplexer::resolve(launch_reducers, launch_info); + } + + RAJA_FT_END; + } + + return resources::EventProxy(res); + } + }; @@ -116,13 +202,36 @@ void launch_global_fcn_fixed(BODY body_in) body(ctx); } +template +__global__ void launch_new_reduce_global_fcn_fixed(BODY body_in, ReduceParams reduce_params) +{ + LaunchContext ctx; + + using RAJA::internal::thread_privatize; + auto privatizer = thread_privatize(body_in); + auto& body = privatizer.get_priv(); + + //Set pointer to shared memory + extern __shared__ char raja_shmem_ptr[]; + ctx.shared_mem_ptr = raja_shmem_ptr; + + RAJA::expt::invoke_body( reduce_params, body, ctx ); + + //Using a flatten global policy as we may use all dimensions + RAJA::expt::ParamMultiplexer::combine(reduce_params); +} + template struct LaunchExecute> { - template - static resources::EventProxy - exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, BODY_IN &&body_in) + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, const LaunchParams ¶ms, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { + using BODY = camp::decay; auto func = launch_global_fcn_fixed; @@ -168,6 +277,70 @@ struct LaunchExecute(res); } + //Version with explicit reduction parameters.. + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, const LaunchParams &launch_params, + const char *kernel_name, BODY_IN && body_in, ReduceParams &launch_reducers) + { + + using BODY = camp::decay; + + auto func = reinterpret_cast(launch_new_reduce_global_fcn >); + + resources::Cuda cuda_res = res.get(); + + // + // Compute the number of blocks and threads + // + + cuda_dim_t gridSize{ static_cast(launch_params.teams.value[0]), + static_cast(launch_params.teams.value[1]), + static_cast(launch_params.teams.value[2]) }; + + cuda_dim_t blockSize{ static_cast(launch_params.threads.value[0]), + static_cast(launch_params.threads.value[1]), + static_cast(launch_params.threads.value[2]) }; + + + // Only launch kernel if we have something to iterate over + constexpr cuda_dim_member_t zero = 0; + if ( gridSize.x > zero && gridSize.y > zero && gridSize.z > zero && + blockSize.x > zero && blockSize.y > zero && blockSize.z > zero ) { + + RAJA_FT_BEGIN; + + RAJA::cuda::detail::cudaInfo launch_info; + launch_info.gridDim = gridSize; + launch_info.blockDim = blockSize; + launch_info.res = cuda_res; + { + + using EXEC_POL = RAJA::policy::cuda::cuda_launch_explicit_t; + RAJA::expt::ParamMultiplexer::init(launch_reducers, launch_info); + + // + // Privatize the loop_body, using make_launch_body to setup reductions + // + BODY body = RAJA::cuda::make_launch_body( + gridSize, blockSize, launch_params.shared_mem_size, cuda_res, std::forward(body_in)); + + // + // Launch the kernel + // + void *args[] = {(void*)&body, (void*)&launch_reducers}; + RAJA::cuda::launch((const void*)func, gridSize, blockSize, args, launch_params.shared_mem_size, cuda_res, async, kernel_name); + + RAJA::expt::ParamMultiplexer::resolve(launch_reducers, launch_info); + } + + RAJA_FT_END; + } + return resources::EventProxy(res); + } + }; diff --git a/include/RAJA/policy/cuda/params/reduce.hpp b/include/RAJA/policy/cuda/params/reduce.hpp index f60117dba9..a2e734b1eb 100644 --- a/include/RAJA/policy/cuda/params/reduce.hpp +++ b/include/RAJA/policy/cuda/params/reduce.hpp @@ -38,7 +38,7 @@ namespace detail { { // complete reduction ci.res.wait(); - *red.target = OP{}(*red.devicetarget, *red.target); + *red.target = OP{}(*red.target, *red.devicetarget); // free memory RAJA::cuda::device_zeroed_mempool_type::getInstance().free(red.device_count); diff --git a/include/RAJA/policy/cuda/policy.hpp b/include/RAJA/policy/cuda/policy.hpp index 9bfd1129f0..92c1f1c701 100644 --- a/include/RAJA/policy/cuda/policy.hpp +++ b/include/RAJA/policy/cuda/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -75,6 +75,9 @@ namespace cuda template struct IndexGlobal; +template +struct IndexFlatten; + } // namespace cuda namespace policy @@ -89,7 +92,13 @@ template -struct cuda_flatten_indexer {}; +struct cuda_flatten_indexer : public RAJA::make_policy_pattern_launch_platform_t< + RAJA::Policy::cuda, + RAJA::Pattern::region, + detail::get_launch::value, + RAJA::Platform::cuda> { + using IterationGetter = RAJA::cuda::IndexFlatten<_IterationGetters...>; +}; template struct cuda_exec_explicit : public RAJA::make_policy_pattern_launch_platform_t< @@ -748,6 +757,71 @@ struct IndexGlobal } }; +// useful for flatten global index (includes x) +template +struct IndexFlatten +{ + + template < typename IdxT = cuda_dim_member_t > + RAJA_DEVICE static inline IdxT index() + { + + return x_index::template index(); + } + + template < typename IdxT = cuda_dim_member_t > + RAJA_DEVICE static inline IdxT size() + { + return x_index::template size(); + } + +}; + +// useful for flatten global index (includes x,y) +template +struct IndexFlatten +{ + + template < typename IdxT = cuda_dim_member_t > + RAJA_DEVICE static inline IdxT index() + { + + return x_index::template index() + + x_index::template size() * ( y_index::template index()); + + } + + template < typename IdxT = cuda_dim_member_t > + RAJA_DEVICE static inline IdxT size() + { + return x_index::template size() * y_index::template size (); + } + +}; + +// useful for flatten global index (includes x,y,z) +template +struct IndexFlatten +{ + + template < typename IdxT = cuda_dim_member_t > + RAJA_DEVICE static inline IdxT index() + { + + return x_index::template index() + + x_index::template size() * ( y_index::template index() + + y_index::template size() * z_index::template index()); + } + + template < typename IdxT = cuda_dim_member_t > + RAJA_DEVICE static inline IdxT size() + { + return x_index::template size() * y_index::template size () * z_index::template size (); + } + +}; + + // helper to get just the thread indexing part of IndexGlobal template < typename index_global > struct get_index_thread; @@ -757,6 +831,14 @@ struct get_index_thread> { using type = IndexGlobal; }; +/// +template +struct get_index_thread> +{ + using type = IndexFlatten::type, + typename get_index_thread::type, + typename get_index_thread::type>; +}; // helper to get just the block indexing part of IndexGlobal template < typename index_global > @@ -767,6 +849,14 @@ struct get_index_block> { using type = IndexGlobal; }; +/// +template +struct get_index_block> +{ + using type = IndexFlatten::type, + typename get_index_block::type, + typename get_index_block::type>; +}; template @@ -891,8 +981,10 @@ using policy::cuda::cuda_synchronize; template using cuda_launch_explicit_t = policy::cuda::cuda_launch_explicit_t; +//CUDA will emit warnings if we specify BLOCKS_PER_SM but not num of threads template -using cuda_launch_t = policy::cuda::cuda_launch_explicit_t; +using cuda_launch_t = policy::cuda::cuda_launch_explicit_t; // policies usable with kernel and launch diff --git a/include/RAJA/policy/cuda/raja_cudaerrchk.hpp b/include/RAJA/policy/cuda/raja_cudaerrchk.hpp index 6758ac2e9d..409ec16818 100644 --- a/include/RAJA/policy/cuda/raja_cudaerrchk.hpp +++ b/include/RAJA/policy/cuda/raja_cudaerrchk.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/reduce.hpp b/include/RAJA/policy/cuda/reduce.hpp index 8d011ccdd8..115f652e11 100644 --- a/include/RAJA/policy/cuda/reduce.hpp +++ b/include/RAJA/policy/cuda/reduce.hpp @@ -12,7 +12,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/scan.hpp b/include/RAJA/policy/cuda/scan.hpp index b183402be1..5d89844e3c 100644 --- a/include/RAJA/policy/cuda/scan.hpp +++ b/include/RAJA/policy/cuda/scan.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/sort.hpp b/include/RAJA/policy/cuda/sort.hpp index b097a7a022..6e6e4c5696 100644 --- a/include/RAJA/policy/cuda/sort.hpp +++ b/include/RAJA/policy/cuda/sort.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/cuda/synchronize.hpp b/include/RAJA/policy/cuda/synchronize.hpp index e3f2d06e89..7f2224a28b 100644 --- a/include/RAJA/policy/cuda/synchronize.hpp +++ b/include/RAJA/policy/cuda/synchronize.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/desul.hpp b/include/RAJA/policy/desul.hpp index 6ff5059e29..d657bad8ff 100644 --- a/include/RAJA/policy/desul.hpp +++ b/include/RAJA/policy/desul.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/desul/atomic.hpp b/include/RAJA/policy/desul/atomic.hpp index 20b7aa8683..dbcb5e06eb 100644 --- a/include/RAJA/policy/desul/atomic.hpp +++ b/include/RAJA/policy/desul/atomic.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip.hpp b/include/RAJA/policy/hip.hpp index 80b77f1000..a1578fd9df 100644 --- a/include/RAJA/policy/hip.hpp +++ b/include/RAJA/policy/hip.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/MemUtils_HIP.hpp b/include/RAJA/policy/hip/MemUtils_HIP.hpp index 6c856114ff..e45d3a6aff 100644 --- a/include/RAJA/policy/hip/MemUtils_HIP.hpp +++ b/include/RAJA/policy/hip/MemUtils_HIP.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -58,7 +58,8 @@ struct PinnedAllocator { void* malloc(size_t nbytes) { void* ptr; - hipErrchk(hipHostMalloc(&ptr, nbytes, hipHostMallocMapped)); + hipErrchk(hipHostMalloc(&ptr, nbytes, + hipHostMallocMapped | hipHostMallocNonCoherent)); return ptr; } diff --git a/include/RAJA/policy/hip/WorkGroup.hpp b/include/RAJA/policy/hip/WorkGroup.hpp index 42151bbadd..2c4a29739e 100644 --- a/include/RAJA/policy/hip/WorkGroup.hpp +++ b/include/RAJA/policy/hip/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/WorkGroup/Dispatcher.hpp b/include/RAJA/policy/hip/WorkGroup/Dispatcher.hpp index dffb773740..975d26b7ff 100644 --- a/include/RAJA/policy/hip/WorkGroup/Dispatcher.hpp +++ b/include/RAJA/policy/hip/WorkGroup/Dispatcher.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/WorkGroup/WorkRunner.hpp b/include/RAJA/policy/hip/WorkGroup/WorkRunner.hpp index d91146ca31..389b24e35a 100644 --- a/include/RAJA/policy/hip/WorkGroup/WorkRunner.hpp +++ b/include/RAJA/policy/hip/WorkGroup/WorkRunner.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/atomic.hpp b/include/RAJA/policy/hip/atomic.hpp index 878f5ce090..e16f31bb5b 100644 --- a/include/RAJA/policy/hip/atomic.hpp +++ b/include/RAJA/policy/hip/atomic.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/forall.hpp b/include/RAJA/policy/hip/forall.hpp index 03d530ab2d..b0b86131ef 100644 --- a/include/RAJA/policy/hip/forall.hpp +++ b/include/RAJA/policy/hip/forall.hpp @@ -13,7 +13,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel.hpp b/include/RAJA/policy/hip/kernel.hpp index ef087858e4..678d48e3c1 100644 --- a/include/RAJA/policy/hip/kernel.hpp +++ b/include/RAJA/policy/hip/kernel.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/Conditional.hpp b/include/RAJA/policy/hip/kernel/Conditional.hpp index b15ca9a9b8..3204845544 100644 --- a/include/RAJA/policy/hip/kernel/Conditional.hpp +++ b/include/RAJA/policy/hip/kernel/Conditional.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/For.hpp b/include/RAJA/policy/hip/kernel/For.hpp index a5dfc9303f..ce8e87d869 100644 --- a/include/RAJA/policy/hip/kernel/For.hpp +++ b/include/RAJA/policy/hip/kernel/For.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/ForICount.hpp b/include/RAJA/policy/hip/kernel/ForICount.hpp index 122f9b951a..001cc28b77 100644 --- a/include/RAJA/policy/hip/kernel/ForICount.hpp +++ b/include/RAJA/policy/hip/kernel/ForICount.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/HipKernel.hpp b/include/RAJA/policy/hip/kernel/HipKernel.hpp index e4ea8e89f0..67bea1299a 100644 --- a/include/RAJA/policy/hip/kernel/HipKernel.hpp +++ b/include/RAJA/policy/hip/kernel/HipKernel.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/Hyperplane.hpp b/include/RAJA/policy/hip/kernel/Hyperplane.hpp index c94a5ef264..5c428f03ab 100644 --- a/include/RAJA/policy/hip/kernel/Hyperplane.hpp +++ b/include/RAJA/policy/hip/kernel/Hyperplane.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/InitLocalMem.hpp b/include/RAJA/policy/hip/kernel/InitLocalMem.hpp index 6497cbfa0c..bbb8d6081b 100644 --- a/include/RAJA/policy/hip/kernel/InitLocalMem.hpp +++ b/include/RAJA/policy/hip/kernel/InitLocalMem.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/Lambda.hpp b/include/RAJA/policy/hip/kernel/Lambda.hpp index 7aba14c965..d04fb11bf6 100644 --- a/include/RAJA/policy/hip/kernel/Lambda.hpp +++ b/include/RAJA/policy/hip/kernel/Lambda.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/Reduce.hpp b/include/RAJA/policy/hip/kernel/Reduce.hpp index 2d4bd844cb..a518073e7c 100644 --- a/include/RAJA/policy/hip/kernel/Reduce.hpp +++ b/include/RAJA/policy/hip/kernel/Reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/Sync.hpp b/include/RAJA/policy/hip/kernel/Sync.hpp index afa02d2e54..d54a5ccf83 100644 --- a/include/RAJA/policy/hip/kernel/Sync.hpp +++ b/include/RAJA/policy/hip/kernel/Sync.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/Tile.hpp b/include/RAJA/policy/hip/kernel/Tile.hpp index ce81571ad5..24f38b7647 100644 --- a/include/RAJA/policy/hip/kernel/Tile.hpp +++ b/include/RAJA/policy/hip/kernel/Tile.hpp @@ -10,7 +10,7 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/TileTCount.hpp b/include/RAJA/policy/hip/kernel/TileTCount.hpp index 1f647329cd..c92f92fb71 100644 --- a/include/RAJA/policy/hip/kernel/TileTCount.hpp +++ b/include/RAJA/policy/hip/kernel/TileTCount.hpp @@ -10,7 +10,7 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/kernel/internal.hpp b/include/RAJA/policy/hip/kernel/internal.hpp index f874b40e2d..2c93520b93 100644 --- a/include/RAJA/policy/hip/kernel/internal.hpp +++ b/include/RAJA/policy/hip/kernel/internal.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/launch.hpp b/include/RAJA/policy/hip/launch.hpp index 500b7c5c3c..2e54b16a81 100644 --- a/include/RAJA/policy/hip/launch.hpp +++ b/include/RAJA/policy/hip/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -44,12 +44,34 @@ __global__ void launch_global_fcn(BODY body_in) body(ctx); } +template +__global__ void launch_new_reduce_global_fcn(BODY body_in, ReduceParams reduce_params) +{ + LaunchContext ctx; + + using RAJA::internal::thread_privatize; + auto privatizer = thread_privatize(body_in); + auto& body = privatizer.get_priv(); + + //Set pointer to shared memory + extern __shared__ char raja_shmem_ptr[]; + ctx.shared_mem_ptr = raja_shmem_ptr; + + RAJA::expt::invoke_body( reduce_params, body, ctx ); + + //Using a flatten global policy as we may use all dimensions + RAJA::expt::ParamMultiplexer::combine(reduce_params); +} + template struct LaunchExecute> { - template - static resources::EventProxy - exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, BODY_IN &&body_in) + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, const LaunchParams ¶ms, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { using BODY = camp::decay; @@ -96,6 +118,70 @@ struct LaunchExecute(res); } + + //Version with explicit reduction parameters.. + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, const LaunchParams &launch_params, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &launch_reducers) + { + using BODY = camp::decay; + + auto func = reinterpret_cast(launch_new_reduce_global_fcn >); + + resources::Hip hip_res = res.get(); + + // + // Compute the number of blocks and threads + // + + hip_dim_t gridSize{ static_cast(launch_params.teams.value[0]), + static_cast(launch_params.teams.value[1]), + static_cast(launch_params.teams.value[2]) }; + + hip_dim_t blockSize{ static_cast(launch_params.threads.value[0]), + static_cast(launch_params.threads.value[1]), + static_cast(launch_params.threads.value[2]) }; + + // Only launch kernel if we have something to iterate over + constexpr hip_dim_member_t zero = 0; + if ( gridSize.x > zero && gridSize.y > zero && gridSize.z > zero && + blockSize.x > zero && blockSize.y > zero && blockSize.z > zero ) { + + RAJA_FT_BEGIN; + + RAJA::hip::detail::hipInfo launch_info; + launch_info.gridDim = gridSize; + launch_info.blockDim = blockSize; + launch_info.res = hip_res; + + { + using EXEC_POL = RAJA::policy::hip::hip_launch_t; + RAJA::expt::ParamMultiplexer::init(launch_reducers, launch_info); + + // + // Privatize the loop_body, using make_launch_body to setup reductions + // + BODY body = RAJA::hip::make_launch_body( + gridSize, blockSize, launch_params.shared_mem_size, hip_res, std::forward(body_in)); + + // + // Launch the kernel + // + void *args[] = {(void*)&body, (void*)&launch_reducers}; + RAJA::hip::launch((const void*)func, gridSize, blockSize, args, launch_params.shared_mem_size, hip_res, async, kernel_name); + + RAJA::expt::ParamMultiplexer::resolve(launch_reducers, launch_info); + } + + RAJA_FT_END; + } + + return resources::EventProxy(res); + } + }; @@ -116,12 +202,36 @@ void launch_global_fcn_fixed(BODY body_in) body(ctx); } +template +__launch_bounds__(num_threads, 1) __global__ +void launch_new_reduce_global_fcn_fixed(BODY body_in, ReduceParams reduce_params) +{ + LaunchContext ctx; + + using RAJA::internal::thread_privatize; + auto privatizer = thread_privatize(body_in); + auto& body = privatizer.get_priv(); + + //Set pointer to shared memory + extern __shared__ char raja_shmem_ptr[]; + ctx.shared_mem_ptr = raja_shmem_ptr; + + RAJA::expt::invoke_body( reduce_params, body, ctx ); + + //Using a flatten global policy as we may use all dimensions + RAJA::expt::ParamMultiplexer::combine(reduce_params); +} + + template struct LaunchExecute> { - template - static resources::EventProxy - exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, BODY_IN &&body_in) + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, const LaunchParams ¶ms, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { using BODY = camp::decay; @@ -168,6 +278,69 @@ struct LaunchExecute> { return resources::EventProxy(res); } + //Version with explicit reduction parameters.. + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, const LaunchParams &launch_params, + const char *kernel_name, BODY_IN &&body_in, ReduceParams &launch_reducers) + { + using BODY = camp::decay; + + auto func = reinterpret_cast(launch_new_reduce_global_fcn_fixed >); + + resources::Hip hip_res = res.get(); + + // + // Compute the number of blocks and threads + // + + hip_dim_t gridSize{ static_cast(launch_params.teams.value[0]), + static_cast(launch_params.teams.value[1]), + static_cast(launch_params.teams.value[2]) }; + + hip_dim_t blockSize{ static_cast(launch_params.threads.value[0]), + static_cast(launch_params.threads.value[1]), + static_cast(launch_params.threads.value[2]) }; + + // Only launch kernel if we have something to iterate over + constexpr hip_dim_member_t zero = 0; + if ( gridSize.x > zero && gridSize.y > zero && gridSize.z > zero && + blockSize.x > zero && blockSize.y > zero && blockSize.z > zero ) { + + RAJA_FT_BEGIN; + + RAJA::hip::detail::hipInfo launch_info; + launch_info.gridDim = gridSize; + launch_info.blockDim = blockSize; + launch_info.res = hip_res; + + { + using EXEC_POL = RAJA::policy::hip::hip_launch_t; + RAJA::expt::ParamMultiplexer::init(launch_reducers, launch_info); + + // + // Privatize the loop_body, using make_launch_body to setup reductions + // + BODY body = RAJA::hip::make_launch_body( + gridSize, blockSize, launch_params.shared_mem_size, hip_res, std::forward(body_in)); + + // + // Launch the kernel + // + void *args[] = {(void*)&body, (void*)&launch_reducers}; + RAJA::hip::launch((const void*)func, gridSize, blockSize, args, launch_params.shared_mem_size, hip_res, async, kernel_name); + + RAJA::expt::ParamMultiplexer::resolve(launch_reducers, launch_info); + } + + RAJA_FT_END; + } + + return resources::EventProxy(res); + } + }; diff --git a/include/RAJA/policy/hip/params/reduce.hpp b/include/RAJA/policy/hip/params/reduce.hpp index 4d090e9e92..584d049c5b 100644 --- a/include/RAJA/policy/hip/params/reduce.hpp +++ b/include/RAJA/policy/hip/params/reduce.hpp @@ -38,7 +38,7 @@ namespace detail { { // complete reduction hi.res.wait(); - *red.target = OP{}(*red.devicetarget, *red.target); + *red.target = OP{}(*red.target, *red.devicetarget); // free memory RAJA::hip::device_zeroed_mempool_type::getInstance().free(red.device_count); diff --git a/include/RAJA/policy/hip/policy.hpp b/include/RAJA/policy/hip/policy.hpp index 569fe1ddfb..75f9abd878 100644 --- a/include/RAJA/policy/hip/policy.hpp +++ b/include/RAJA/policy/hip/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -71,6 +71,9 @@ namespace hip template struct IndexGlobal; +template +struct IndexFlatten; + } // namespace hip namespace policy @@ -82,7 +85,13 @@ template -struct hip_flatten_indexer {}; +struct hip_flatten_indexer : public RAJA::make_policy_pattern_launch_platform_t< + RAJA::Policy::hip, + RAJA::Pattern::region, + detail::get_launch::value, + RAJA::Platform::hip> { + using IterationGetter = RAJA::hip::IndexFlatten<_IterationGetters...>; +}; template struct hip_exec : public RAJA::make_policy_pattern_launch_platform_t< @@ -217,9 +226,9 @@ struct hip_thread_masked_loop {}; // Operations in the included files are parametrized using the following // values for HIP warp size and max block size. // -#if defined(__HIP_PLATFORM_HCC__) +#if defined(__HIP_PLATFORM_AMD__) constexpr const RAJA::Index_type WARP_SIZE = 64; -#elif defined(__HIP_PLATFORM_NVCC__) +#elif defined(__HIP_PLATFORM_NVIDIA__) constexpr const RAJA::Index_type WARP_SIZE = 32; #endif constexpr const RAJA::Index_type MAX_BLOCK_SIZE = 1024; @@ -743,6 +752,70 @@ struct IndexGlobal } }; +// useful for flatten global index (includes x) +template +struct IndexFlatten +{ + + template < typename IdxT = hip_dim_member_t > + RAJA_DEVICE static inline IdxT index() + { + + return x_index::template index(); + } + + template < typename IdxT = hip_dim_member_t > + RAJA_DEVICE static inline IdxT size() + { + return x_index::template size(); + } + +}; + +// useful for flatten global index (includes x,y) +template +struct IndexFlatten +{ + + template < typename IdxT = hip_dim_member_t > + RAJA_DEVICE static inline IdxT index() + { + + return x_index::template index() + + x_index::template size() * ( y_index::template index()); + + } + + template < typename IdxT = hip_dim_member_t > + RAJA_DEVICE static inline IdxT size() + { + return x_index::template size() * y_index::template size (); + } + +}; + +// useful for flatten global index (includes x,y,z) +template +struct IndexFlatten +{ + + template < typename IdxT = hip_dim_member_t > + RAJA_DEVICE static inline IdxT index() + { + + return x_index::template index() + + x_index::template size() * ( y_index::template index() + + y_index::template size() * z_index::template index()); + } + + template < typename IdxT = hip_dim_member_t > + RAJA_DEVICE static inline IdxT size() + { + return x_index::template size() * y_index::template size () * z_index::template size (); + } + +}; + // helper to get just the thread indexing part of IndexGlobal template < typename index_global > struct get_index_thread; @@ -752,6 +825,14 @@ struct get_index_thread> { using type = IndexGlobal; }; +/// +template +struct get_index_thread> +{ + using type = IndexFlatten::type, + typename get_index_thread::type, + typename get_index_thread::type>; +}; // helper to get just the block indexing part of IndexGlobal template < typename index_global > @@ -762,6 +843,14 @@ struct get_index_block> { using type = IndexGlobal; }; +/// +template +struct get_index_block> +{ + using type = IndexFlatten::type, + typename get_index_block::type, + typename get_index_block::type>; +}; template diff --git a/include/RAJA/policy/hip/raja_hiperrchk.hpp b/include/RAJA/policy/hip/raja_hiperrchk.hpp index cf20a51df1..5e3a02fb2c 100644 --- a/include/RAJA/policy/hip/raja_hiperrchk.hpp +++ b/include/RAJA/policy/hip/raja_hiperrchk.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/reduce.hpp b/include/RAJA/policy/hip/reduce.hpp index 584534db14..df47616cb6 100644 --- a/include/RAJA/policy/hip/reduce.hpp +++ b/include/RAJA/policy/hip/reduce.hpp @@ -12,7 +12,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/scan.hpp b/include/RAJA/policy/hip/scan.hpp index 5c9d779633..40e44c2e19 100644 --- a/include/RAJA/policy/hip/scan.hpp +++ b/include/RAJA/policy/hip/scan.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/sort.hpp b/include/RAJA/policy/hip/sort.hpp index 67b06a2fca..a6918968c8 100644 --- a/include/RAJA/policy/hip/sort.hpp +++ b/include/RAJA/policy/hip/sort.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/hip/synchronize.hpp b/include/RAJA/policy/hip/synchronize.hpp index 7e4a92a28d..deddd1c867 100644 --- a/include/RAJA/policy/hip/synchronize.hpp +++ b/include/RAJA/policy/hip/synchronize.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/loop.hpp b/include/RAJA/policy/loop.hpp index c60689797a..2cd9525dcd 100644 --- a/include/RAJA/policy/loop.hpp +++ b/include/RAJA/policy/loop.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/loop/policy.hpp b/include/RAJA/policy/loop/policy.hpp index 7c73c19860..1bf34250bb 100644 --- a/include/RAJA/policy/loop/policy.hpp +++ b/include/RAJA/policy/loop/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp.hpp b/include/RAJA/policy/openmp.hpp index 9c8a7ce869..ae0f70a37f 100644 --- a/include/RAJA/policy/openmp.hpp +++ b/include/RAJA/policy/openmp.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/WorkGroup.hpp b/include/RAJA/policy/openmp/WorkGroup.hpp index b34a0e36c3..f86c4d66a0 100644 --- a/include/RAJA/policy/openmp/WorkGroup.hpp +++ b/include/RAJA/policy/openmp/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/WorkGroup/Dispatcher.hpp b/include/RAJA/policy/openmp/WorkGroup/Dispatcher.hpp index 2e57ae4702..09861941ab 100644 --- a/include/RAJA/policy/openmp/WorkGroup/Dispatcher.hpp +++ b/include/RAJA/policy/openmp/WorkGroup/Dispatcher.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/WorkGroup/WorkRunner.hpp b/include/RAJA/policy/openmp/WorkGroup/WorkRunner.hpp index 9d99f80e79..c889273a0f 100644 --- a/include/RAJA/policy/openmp/WorkGroup/WorkRunner.hpp +++ b/include/RAJA/policy/openmp/WorkGroup/WorkRunner.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/atomic.hpp b/include/RAJA/policy/openmp/atomic.hpp index 8656ec125a..4eea77722e 100644 --- a/include/RAJA/policy/openmp/atomic.hpp +++ b/include/RAJA/policy/openmp/atomic.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/forall.hpp b/include/RAJA/policy/openmp/forall.hpp index 94b9e67cb1..815168ae98 100644 --- a/include/RAJA/policy/openmp/forall.hpp +++ b/include/RAJA/policy/openmp/forall.hpp @@ -12,7 +12,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/kernel.hpp b/include/RAJA/policy/openmp/kernel.hpp index e057ba220a..7b9e2e4034 100644 --- a/include/RAJA/policy/openmp/kernel.hpp +++ b/include/RAJA/policy/openmp/kernel.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/kernel/Collapse.hpp b/include/RAJA/policy/openmp/kernel/Collapse.hpp index 036358febf..ba71ac2fbf 100644 --- a/include/RAJA/policy/openmp/kernel/Collapse.hpp +++ b/include/RAJA/policy/openmp/kernel/Collapse.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/kernel/OmpSyncThreads.hpp b/include/RAJA/policy/openmp/kernel/OmpSyncThreads.hpp index 246bd29553..65f56010bc 100644 --- a/include/RAJA/policy/openmp/kernel/OmpSyncThreads.hpp +++ b/include/RAJA/policy/openmp/kernel/OmpSyncThreads.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/launch.hpp b/include/RAJA/policy/openmp/launch.hpp index 64dfc0d85e..f3aabcf579 100644 --- a/include/RAJA/policy/openmp/launch.hpp +++ b/include/RAJA/policy/openmp/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -21,16 +21,17 @@ #include "RAJA/pattern/launch/launch_core.hpp" #include "RAJA/policy/openmp/policy.hpp" - namespace RAJA { template <> struct LaunchExecute { - template - static resources::EventProxy - exec(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *, BODY const &body) + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *, BODY const &body, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { RAJA::region([&]() { @@ -50,6 +51,39 @@ struct LaunchExecute { return resources::EventProxy(res); } + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, LaunchParams const &launch_params, + const char *RAJA_UNUSED_ARG(kernel_name), BODY const &body, ReduceParams &f_params) + { + + using EXEC_POL = RAJA::omp_launch_t; + + expt::ParamMultiplexer::init(f_params); + + //reducer object must be named f_params as expected by macro below + RAJA_OMP_DECLARE_REDUCTION_COMBINE; + + #pragma omp parallel reduction(combine : f_params) + { + + LaunchContext ctx; + + using RAJA::internal::thread_privatize; + auto loop_body = thread_privatize(body); + + ctx.shared_mem_ptr = (char*) malloc(launch_params.shared_mem_size); + + expt::invoke_body(f_params, loop_body.get_priv(), ctx); + } + + expt::ParamMultiplexer::resolve(f_params); + + return resources::EventProxy(res); + } + }; diff --git a/include/RAJA/policy/openmp/params/forall.hpp b/include/RAJA/policy/openmp/params/forall.hpp index 41eea172bc..d9bea5d0d8 100644 --- a/include/RAJA/policy/openmp/params/forall.hpp +++ b/include/RAJA/policy/openmp/params/forall.hpp @@ -8,12 +8,6 @@ #ifndef RAJA_forall_param_openmp_HPP #define RAJA_forall_param_openmp_HPP -#define RAJA_OMP_DECLARE_REDUCTION_COMBINE \ - _Pragma(" omp declare reduction( combine \ - : typename std::remove_reference::type \ - : RAJA::expt::ParamMultiplexer::combine(omp_out, omp_in) ) ")\ - //initializer(omp_priv = omp_in) ") - namespace RAJA { diff --git a/include/RAJA/policy/openmp/params/reduce.hpp b/include/RAJA/policy/openmp/params/reduce.hpp index 99d95da049..ffa270b0f3 100644 --- a/include/RAJA/policy/openmp/params/reduce.hpp +++ b/include/RAJA/policy/openmp/params/reduce.hpp @@ -27,7 +27,7 @@ namespace detail { template camp::concepts::enable_if< type_traits::is_openmp_policy > resolve(Reducer& red) { - *red.target = OP{}(red.val, *red.target); + *red.target = OP{}(*red.target, red.val); } #endif diff --git a/include/RAJA/policy/openmp/policy.hpp b/include/RAJA/policy/openmp/policy.hpp index 35222033f8..af5bdf2df7 100644 --- a/include/RAJA/policy/openmp/policy.hpp +++ b/include/RAJA/policy/openmp/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/reduce.hpp b/include/RAJA/policy/openmp/reduce.hpp index 1eff37614b..7ccc68c3a1 100644 --- a/include/RAJA/policy/openmp/reduce.hpp +++ b/include/RAJA/policy/openmp/reduce.hpp @@ -12,7 +12,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/region.hpp b/include/RAJA/policy/openmp/region.hpp index 954066dad3..88f0519abf 100644 --- a/include/RAJA/policy/openmp/region.hpp +++ b/include/RAJA/policy/openmp/region.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/scan.hpp b/include/RAJA/policy/openmp/scan.hpp index 79088c3d88..97cd7a8ab8 100644 --- a/include/RAJA/policy/openmp/scan.hpp +++ b/include/RAJA/policy/openmp/scan.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/sort.hpp b/include/RAJA/policy/openmp/sort.hpp index 8502843ed0..9e4474d692 100644 --- a/include/RAJA/policy/openmp/sort.hpp +++ b/include/RAJA/policy/openmp/sort.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp/synchronize.hpp b/include/RAJA/policy/openmp/synchronize.hpp index b1616d6860..0ecc10a46b 100644 --- a/include/RAJA/policy/openmp/synchronize.hpp +++ b/include/RAJA/policy/openmp/synchronize.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target.hpp b/include/RAJA/policy/openmp_target.hpp index 22b9ce6657..6b90282e6d 100644 --- a/include/RAJA/policy/openmp_target.hpp +++ b/include/RAJA/policy/openmp_target.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/WorkGroup.hpp b/include/RAJA/policy/openmp_target/WorkGroup.hpp index edc244e060..47ade8ac57 100644 --- a/include/RAJA/policy/openmp_target/WorkGroup.hpp +++ b/include/RAJA/policy/openmp_target/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/WorkGroup/Dispatcher.hpp b/include/RAJA/policy/openmp_target/WorkGroup/Dispatcher.hpp index 1ab2d5408f..a4a4a62903 100644 --- a/include/RAJA/policy/openmp_target/WorkGroup/Dispatcher.hpp +++ b/include/RAJA/policy/openmp_target/WorkGroup/Dispatcher.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/WorkGroup/WorkRunner.hpp b/include/RAJA/policy/openmp_target/WorkGroup/WorkRunner.hpp index 6c8cb31d5b..b373d09c61 100644 --- a/include/RAJA/policy/openmp_target/WorkGroup/WorkRunner.hpp +++ b/include/RAJA/policy/openmp_target/WorkGroup/WorkRunner.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/forall.hpp b/include/RAJA/policy/openmp_target/forall.hpp index 9502baa150..061481cbc1 100644 --- a/include/RAJA/policy/openmp_target/forall.hpp +++ b/include/RAJA/policy/openmp_target/forall.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/kernel.hpp b/include/RAJA/policy/openmp_target/kernel.hpp index 9cb6614d0d..83038ce80a 100644 --- a/include/RAJA/policy/openmp_target/kernel.hpp +++ b/include/RAJA/policy/openmp_target/kernel.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/kernel/Collapse.hpp b/include/RAJA/policy/openmp_target/kernel/Collapse.hpp index c6f2ec0c70..b72147151c 100644 --- a/include/RAJA/policy/openmp_target/kernel/Collapse.hpp +++ b/include/RAJA/policy/openmp_target/kernel/Collapse.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/kernel/For.hpp b/include/RAJA/policy/openmp_target/kernel/For.hpp index 0a7cd98292..173230b9e2 100644 --- a/include/RAJA/policy/openmp_target/kernel/For.hpp +++ b/include/RAJA/policy/openmp_target/kernel/For.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/params/reduce.hpp b/include/RAJA/policy/openmp_target/params/reduce.hpp index f4a3952056..df5c6af235 100644 --- a/include/RAJA/policy/openmp_target/params/reduce.hpp +++ b/include/RAJA/policy/openmp_target/params/reduce.hpp @@ -27,7 +27,7 @@ namespace detail { template camp::concepts::enable_if< type_traits::is_target_openmp_policy > resolve(Reducer& red) { - *red.target = OP{}(red.val, *red.target); + *red.target = OP{}(*red.target, red.val); } #endif diff --git a/include/RAJA/policy/openmp_target/policy.hpp b/include/RAJA/policy/openmp_target/policy.hpp index bdba875e81..520f5afc55 100644 --- a/include/RAJA/policy/openmp_target/policy.hpp +++ b/include/RAJA/policy/openmp_target/policy.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/openmp_target/reduce.hpp b/include/RAJA/policy/openmp_target/reduce.hpp index 814528d432..6691729bbe 100644 --- a/include/RAJA/policy/openmp_target/reduce.hpp +++ b/include/RAJA/policy/openmp_target/reduce.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential.hpp b/include/RAJA/policy/sequential.hpp index b99717e814..e9c1f8e570 100644 --- a/include/RAJA/policy/sequential.hpp +++ b/include/RAJA/policy/sequential.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/WorkGroup.hpp b/include/RAJA/policy/sequential/WorkGroup.hpp index 8f8a80d194..291518037c 100644 --- a/include/RAJA/policy/sequential/WorkGroup.hpp +++ b/include/RAJA/policy/sequential/WorkGroup.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/WorkGroup/Dispatcher.hpp b/include/RAJA/policy/sequential/WorkGroup/Dispatcher.hpp index 5aac0f127b..13796fd8a3 100644 --- a/include/RAJA/policy/sequential/WorkGroup/Dispatcher.hpp +++ b/include/RAJA/policy/sequential/WorkGroup/Dispatcher.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/WorkGroup/WorkRunner.hpp b/include/RAJA/policy/sequential/WorkGroup/WorkRunner.hpp index b519f70b78..31e401bf88 100644 --- a/include/RAJA/policy/sequential/WorkGroup/WorkRunner.hpp +++ b/include/RAJA/policy/sequential/WorkGroup/WorkRunner.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/atomic.hpp b/include/RAJA/policy/sequential/atomic.hpp index 7ed886789e..58777cd9ef 100644 --- a/include/RAJA/policy/sequential/atomic.hpp +++ b/include/RAJA/policy/sequential/atomic.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/forall.hpp b/include/RAJA/policy/sequential/forall.hpp index 35c2c7dc6c..5d1d6d84b0 100644 --- a/include/RAJA/policy/sequential/forall.hpp +++ b/include/RAJA/policy/sequential/forall.hpp @@ -14,7 +14,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/kernel.hpp b/include/RAJA/policy/sequential/kernel.hpp index 95565e76f5..9bb107b4e7 100644 --- a/include/RAJA/policy/sequential/kernel.hpp +++ b/include/RAJA/policy/sequential/kernel.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/kernel/Collapse.hpp b/include/RAJA/policy/sequential/kernel/Collapse.hpp index 79343a917e..8e600ec2e8 100644 --- a/include/RAJA/policy/sequential/kernel/Collapse.hpp +++ b/include/RAJA/policy/sequential/kernel/Collapse.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/kernel/Reduce.hpp b/include/RAJA/policy/sequential/kernel/Reduce.hpp index 49918f32a8..7280844320 100644 --- a/include/RAJA/policy/sequential/kernel/Reduce.hpp +++ b/include/RAJA/policy/sequential/kernel/Reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/launch.hpp b/include/RAJA/policy/sequential/launch.hpp index a8a2a649ab..a2025a71d5 100644 --- a/include/RAJA/policy/sequential/launch.hpp +++ b/include/RAJA/policy/sequential/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -20,7 +20,7 @@ #include "RAJA/pattern/launch/launch_core.hpp" #include "RAJA/policy/sequential/policy.hpp" - +#include "RAJA/pattern/params/forall.hpp" namespace RAJA { @@ -39,9 +39,12 @@ struct LaunchExecute { template <> struct LaunchExecute { - template - static resources::EventProxy - exec(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *RAJA_UNUSED_ARG(kernel_name), BODY const &body) + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, LaunchParams const ¶ms, const char *RAJA_UNUSED_ARG(kernel_name), + BODY const &body, ReduceParams &RAJA_UNUSED_ARG(ReduceParams)) { LaunchContext ctx; @@ -57,6 +60,29 @@ struct LaunchExecute { return resources::EventProxy(res); } + template + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, LaunchParams const &launch_params, + const char *RAJA_UNUSED_ARG(kernel_name), BODY const &body, ReduceParams &launch_reducers) + { + expt::ParamMultiplexer::init(launch_reducers); + + LaunchContext ctx; + char *kernel_local_mem = new char[launch_params.shared_mem_size]; + ctx.shared_mem_ptr = kernel_local_mem; + + expt::invoke_body(launch_reducers, body, ctx); + + delete[] kernel_local_mem; + ctx.shared_mem_ptr = nullptr; + + expt::ParamMultiplexer::resolve(launch_reducers); + + return resources::EventProxy(res); + } + }; @@ -197,7 +223,7 @@ struct LoopICountExecute { } } } - + }; //Tile Execute + variants diff --git a/include/RAJA/policy/sequential/params/reduce.hpp b/include/RAJA/policy/sequential/params/reduce.hpp index f923f6f821..60f83c4079 100644 --- a/include/RAJA/policy/sequential/params/reduce.hpp +++ b/include/RAJA/policy/sequential/params/reduce.hpp @@ -23,7 +23,7 @@ namespace detail { template camp::concepts::enable_if< std::is_same< EXEC_POL, RAJA::seq_exec> > resolve(Reducer& red) { - *red.target = OP{}(red.val, *red.target); + *red.target = OP{}(*red.target, red.val); } } // namespace detail diff --git a/include/RAJA/policy/sequential/policy.hpp b/include/RAJA/policy/sequential/policy.hpp index c2c744e364..f59bee50e4 100644 --- a/include/RAJA/policy/sequential/policy.hpp +++ b/include/RAJA/policy/sequential/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/reduce.hpp b/include/RAJA/policy/sequential/reduce.hpp index 20cc63bb90..0870726183 100644 --- a/include/RAJA/policy/sequential/reduce.hpp +++ b/include/RAJA/policy/sequential/reduce.hpp @@ -12,7 +12,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/region.hpp b/include/RAJA/policy/sequential/region.hpp index c62daf0608..84d03ae202 100644 --- a/include/RAJA/policy/sequential/region.hpp +++ b/include/RAJA/policy/sequential/region.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/scan.hpp b/include/RAJA/policy/sequential/scan.hpp index 65744a0096..4bcc73366d 100644 --- a/include/RAJA/policy/sequential/scan.hpp +++ b/include/RAJA/policy/sequential/scan.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sequential/sort.hpp b/include/RAJA/policy/sequential/sort.hpp index d548390453..98dcf6fc27 100644 --- a/include/RAJA/policy/sequential/sort.hpp +++ b/include/RAJA/policy/sequential/sort.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/simd.hpp b/include/RAJA/policy/simd.hpp index 01a44d4482..6cb6cd4c57 100644 --- a/include/RAJA/policy/simd.hpp +++ b/include/RAJA/policy/simd.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/simd/forall.hpp b/include/RAJA/policy/simd/forall.hpp index 642ef40943..8c5b38af9c 100644 --- a/include/RAJA/policy/simd/forall.hpp +++ b/include/RAJA/policy/simd/forall.hpp @@ -17,7 +17,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/simd/kernel/For.hpp b/include/RAJA/policy/simd/kernel/For.hpp index 9b2c5f7b67..53ed45ad1f 100644 --- a/include/RAJA/policy/simd/kernel/For.hpp +++ b/include/RAJA/policy/simd/kernel/For.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/simd/kernel/ForICount.hpp b/include/RAJA/policy/simd/kernel/ForICount.hpp index 07b82ba90d..36a169f2bf 100644 --- a/include/RAJA/policy/simd/kernel/ForICount.hpp +++ b/include/RAJA/policy/simd/kernel/ForICount.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/simd/launch.hpp b/include/RAJA/policy/simd/launch.hpp index 565b09d761..1f8ba01ab3 100644 --- a/include/RAJA/policy/simd/launch.hpp +++ b/include/RAJA/policy/simd/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/simd/policy.hpp b/include/RAJA/policy/simd/policy.hpp index 913ca05945..a85811163f 100644 --- a/include/RAJA/policy/simd/policy.hpp +++ b/include/RAJA/policy/simd/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl.hpp b/include/RAJA/policy/sycl.hpp index 270bb8b0c9..dc4112d8a7 100644 --- a/include/RAJA/policy/sycl.hpp +++ b/include/RAJA/policy/sycl.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/MemUtils_SYCL.hpp b/include/RAJA/policy/sycl/MemUtils_SYCL.hpp index 484a3c85ec..c158bd2801 100644 --- a/include/RAJA/policy/sycl/MemUtils_SYCL.hpp +++ b/include/RAJA/policy/sycl/MemUtils_SYCL.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -70,6 +70,79 @@ cl::sycl::queue* getQueue(); } // namespace detail +//! Allocator for pinned memory for use in basic_mempool +struct PinnedAllocator { + + // returns a valid pointer on success, nullptr on failure + void* malloc(size_t nbytes) + { + void* ptr; + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ptr = ::sycl::malloc_host(nbytes, *q); + return ptr; + } + + // returns true on success + // Will throw if ptr is not in q's context + bool free(void* ptr) + { + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::free(ptr, *q); + return true; + } +}; + +//! Allocator for device memory for use in basic_mempool +struct DeviceAllocator { + + // returns a valid pointer on success, nullptr on failure + void* malloc(size_t nbytes) + { + void* ptr; + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ptr = ::sycl::malloc_device(nbytes, *q); + return ptr; + } + + // returns true on success + // Will throw if ptr is not in q's context + bool free(void* ptr) + { + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::free(ptr, *q); + return true; + } +}; + +//! Allocator for pre-zeroed device memory for use in basic_mempool +// Note: Memory must be zero when returned to mempool +struct DeviceZeroedAllocator { + + // returns a valid pointer on success, nullptr on failure + void* malloc(size_t nbytes) + { + void* ptr; + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ptr = ::sycl::malloc_device(nbytes, *q); + q->memset(ptr, 0, nbytes); + return ptr; + } + + // Returns true on success + // Will throw if ptr is not in q's context + bool free(void* ptr) + { + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::free(ptr, *q); + return true; + } +}; + +using device_mempool_type = basic_mempool::MemPool; +using device_zeroed_mempool_type = + basic_mempool::MemPool; +using pinned_mempool_type = basic_mempool::MemPool; + } // namespace sycl } // namespace RAJA diff --git a/include/RAJA/policy/sycl/forall.hpp b/include/RAJA/policy/sycl/forall.hpp index 2d708b7b83..4a33ab3bd4 100644 --- a/include/RAJA/policy/sycl/forall.hpp +++ b/include/RAJA/policy/sycl/forall.hpp @@ -13,7 +13,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -32,6 +32,8 @@ #include "RAJA/pattern/forall.hpp" +#include "RAJA/pattern/params/forall.hpp" + #include "RAJA/util/macros.hpp" #include "RAJA/util/types.hpp" @@ -64,10 +66,10 @@ namespace impl ****************************************************************************** */ RAJA_INLINE -cl::sycl::range<1> getGridDim(size_t len, size_t block_size) +::sycl::range<1> getGridDim(size_t len, size_t block_size) { size_t size = {block_size * ((len + block_size - 1) / block_size)}; - cl::sycl::range<1> gridSize(size); + ::sycl::range<1> gridSize(size); return gridSize; } @@ -84,11 +86,16 @@ cl::sycl::range<1> getGridDim(size_t len, size_t block_size) template {},bool>::type = true> -RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl &sycl_res, - sycl_exec, - Iterable&& iter, - LoopBody&& loop_body, - ForallParam) +RAJA_INLINE +concepts::enable_if_t< + resources::EventProxy, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> +forall_impl(resources::Sycl &sycl_res, + sycl_exec, + Iterable&& iter, + LoopBody&& loop_body, + ForallParam) { using Iterator = camp::decay; @@ -114,17 +121,17 @@ RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl sycl_dim_t blockSize{BlockSize}; sycl_dim_t gridSize = impl::getGridDim(static_cast(len), BlockSize); - cl::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); // Global resource was not set, use the resource that was passed to forall // Determine if the default SYCL res is being used if (!q) { q = sycl_res.get_queue(); } - q->submit([&](cl::sycl::handler& h) { + q->submit([&](::sycl::handler& h) { - h.parallel_for( cl::sycl::nd_range<1>{gridSize, blockSize}, - [=] (cl::sycl::nd_item<1> it) { + h.parallel_for( ::sycl::nd_range<1>{gridSize, blockSize}, + [=] (::sycl::nd_item<1> it) { IndexType ii = it.get_global_id(0); if (ii < len) { @@ -141,11 +148,12 @@ RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl template {},bool>::type = true> -RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl &sycl_res, - sycl_exec, - Iterable&& iter, - LoopBody&& loop_body, - ForallParam) +RAJA_INLINE +resources::EventProxy forall_impl(resources::Sycl &sycl_res, + sycl_exec, + Iterable&& iter, + LoopBody&& loop_body, + ForallParam) { using Iterator = camp::decay; using LOOP_BODY = camp::decay; @@ -170,7 +178,7 @@ RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl & sycl_dim_t blockSize{BlockSize}; sycl_dim_t gridSize = impl::getGridDim(static_cast(len), BlockSize); - cl::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); // Global resource was not set, use the resource that was passed to forall // Determine if the default SYCL res is being used if (!q) { @@ -184,16 +192,16 @@ RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl & // Kernel body is nontrivially copyable, create space on device and copy to // Workaround until "is_device_copyable" is supported // - lbody = (LOOP_BODY*) cl::sycl::malloc_device(sizeof(LOOP_BODY), *q); + lbody = (LOOP_BODY*) ::sycl::malloc_device(sizeof(LOOP_BODY), *q); q->memcpy(lbody, &loop_body, sizeof(LOOP_BODY)).wait(); - beg = (Iterator*) cl::sycl::malloc_device(sizeof(Iterator), *q); + beg = (Iterator*) ::sycl::malloc_device(sizeof(Iterator), *q); q->memcpy(beg, &begin, sizeof(Iterator)).wait(); - q->submit([&](cl::sycl::handler& h) { + q->submit([&](::sycl::handler& h) { - h.parallel_for( cl::sycl::nd_range<1>{gridSize, blockSize}, - [=] (cl::sycl::nd_item<1> it) { + h.parallel_for( ::sycl::nd_range<1>{gridSize, blockSize}, + [=] (::sycl::nd_item<1> it) { Index_type ii = it.get_global_id(0); @@ -210,9 +218,181 @@ RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl & RAJA_FT_END; } - + return resources::EventProxy(sycl_res); +} + +template {},bool>::type = true> +RAJA_INLINE +concepts::enable_if_t< + resources::EventProxy, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate> > +forall_impl(resources::Sycl &sycl_res, + sycl_exec, + Iterable&& iter, + LoopBody&& loop_body, + ForallParam f_params) + +{ + using Iterator = camp::decay; + using LOOP_BODY = camp::decay; + using IndexType = camp::decay; + using EXEC_POL = RAJA::sycl_exec; + // + // Compute the requested iteration space size + // + Iterator begin = std::begin(iter); + Iterator end = std::end(iter); + IndexType len = std::distance(begin, end); + + RAJA::expt::ParamMultiplexer::init(f_params); + + // Only launch kernel if we have something to iterate over + if (len > 0 && BlockSize > 0) { + // + // Compute the number of blocks + // + sycl_dim_t blockSize{BlockSize}; + sycl_dim_t gridSize = impl::getGridDim(static_cast(len), BlockSize); + + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + // Global resource was not set, use the resource that was passed to forall + // Determine if the default SYCL res is being used + if (!q) { + q = sycl_res.get_queue(); + } + + auto combiner = []( ForallParam x, ForallParam y ) { + RAJA::expt::ParamMultiplexer::combine( x, y ); + return x; + }; + + ForallParam* res = ::sycl::malloc_shared(1,*q); + RAJA::expt::ParamMultiplexer::init(*res); + auto reduction = ::sycl::reduction(res, f_params, combiner); + + q->submit([&](::sycl::handler& h) { + h.parallel_for( ::sycl::range<1>(len), + reduction, + [=] (::sycl::item<1> it, auto & red) { + + ForallParam fp; + RAJA::expt::ParamMultiplexer::init(fp); + IndexType ii = it.get_id(0); + if (ii < len) { + RAJA::expt::invoke_body(fp, loop_body, begin[ii]); + } + red.combine(fp); + }); + }); + + q->wait(); + RAJA::expt::ParamMultiplexer::combine( f_params, *res ); + ::sycl::free(res, *q); + } + RAJA::expt::ParamMultiplexer::resolve(f_params); + + return resources::EventProxy(sycl_res); + +} + +template {},bool>::type = true> +RAJA_INLINE +concepts::enable_if_t< + resources::EventProxy, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate> > +forall_impl(resources::Sycl &sycl_res, + sycl_exec, + Iterable&& iter, + LoopBody&& loop_body, + ForallParam f_params) + +{ + using Iterator = camp::decay; + using LOOP_BODY = camp::decay; + using IndexType = camp::decay; + using EXEC_POL = RAJA::sycl_exec; + // + // Compute the requested iteration space size + // + Iterator begin = std::begin(iter); + Iterator end = std::end(iter); + IndexType len = std::distance(begin, end); + + RAJA::expt::ParamMultiplexer::init(f_params); + + // Only launch kernel if we have something to iterate over + if (len > 0 && BlockSize > 0) { + // + // Compute the number of blocks + // + sycl_dim_t blockSize{BlockSize}; + sycl_dim_t gridSize = impl::getGridDim(static_cast(len), BlockSize); + + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + // Global resource was not set, use the resource that was passed to forall + // Determine if the default SYCL res is being used + if (!q) { + q = sycl_res.get_queue(); + } + + auto combiner = []( ForallParam x, ForallParam y ) { + RAJA::expt::ParamMultiplexer::combine( x, y ); + return x; + }; + + // START + // + LOOP_BODY* lbody; + Iterator* beg; + RAJA_FT_BEGIN; + // + // Setup shared memory buffers + // Kernel body is nontrivially copyable, create space on device and copy to + // Workaround until "is_device_copyable" is supported + // + lbody = (LOOP_BODY*) ::sycl::malloc_device(sizeof(LOOP_BODY), *q); + q->memcpy(lbody, &loop_body, sizeof(LOOP_BODY)).wait(); + + beg = (Iterator*) ::sycl::malloc_device(sizeof(Iterator), *q); + q->memcpy(beg, &begin, sizeof(Iterator)).wait(); + + ForallParam* res = ::sycl::malloc_shared(1,*q); + RAJA::expt::ParamMultiplexer::init(*res); + auto reduction = ::sycl::reduction(res, f_params, combiner); + + q->submit([&](::sycl::handler& h) { + h.parallel_for( ::sycl::range<1>(len), + reduction, + [=] (::sycl::item<1> it, auto & red) { + + + Index_type ii = it.get_id(0); + ForallParam fp; + RAJA::expt::ParamMultiplexer::init(fp); + if (ii < len) { + RAJA::expt::invoke_body(fp, *lbody, (*beg)[ii]); + } + red.combine(fp); + + }); + }).wait(); // Need to wait for completion to free memory + RAJA::expt::ParamMultiplexer::combine( f_params, *res ); + // Free our device memory + ::sycl::free(res, *q); + ::sycl::free(lbody, *q); + ::sycl::free(beg, *q); + + RAJA_FT_END; + + } + RAJA::expt::ParamMultiplexer::resolve(f_params); return resources::EventProxy(sycl_res); + } @@ -251,7 +431,7 @@ RAJA_INLINE void forall_impl(ExecPolicy>, } // iterate over segments of index set if (!Async) { - cl::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); q->wait(); }; } @@ -276,7 +456,7 @@ RAJA_INLINE resources::EventProxy forall_impl(resources::Sycl & } // iterate over segments of index set if (!Async) { - cl::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); + ::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); q->wait(); } diff --git a/include/RAJA/policy/sycl/kernel.hpp b/include/RAJA/policy/sycl/kernel.hpp index a6f66e4fae..641c3a9ef3 100644 --- a/include/RAJA/policy/sycl/kernel.hpp +++ b/include/RAJA/policy/sycl/kernel.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/Conditional.hpp b/include/RAJA/policy/sycl/kernel/Conditional.hpp index 1425462d3d..9149418518 100644 --- a/include/RAJA/policy/sycl/kernel/Conditional.hpp +++ b/include/RAJA/policy/sycl/kernel/Conditional.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/For.hpp b/include/RAJA/policy/sycl/kernel/For.hpp index 756a2225cf..d0976b931f 100644 --- a/include/RAJA/policy/sycl/kernel/For.hpp +++ b/include/RAJA/policy/sycl/kernel/For.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/ForICount.hpp b/include/RAJA/policy/sycl/kernel/ForICount.hpp index f397429f4a..9c25bb0ab9 100644 --- a/include/RAJA/policy/sycl/kernel/ForICount.hpp +++ b/include/RAJA/policy/sycl/kernel/ForICount.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/Lambda.hpp b/include/RAJA/policy/sycl/kernel/Lambda.hpp index bda573199d..0542f4b81e 100644 --- a/include/RAJA/policy/sycl/kernel/Lambda.hpp +++ b/include/RAJA/policy/sycl/kernel/Lambda.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/SyclKernel.hpp b/include/RAJA/policy/sycl/kernel/SyclKernel.hpp index 8bbe312885..0b7fa5f253 100644 --- a/include/RAJA/policy/sycl/kernel/SyclKernel.hpp +++ b/include/RAJA/policy/sycl/kernel/SyclKernel.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/Tile.hpp b/include/RAJA/policy/sycl/kernel/Tile.hpp index de2d1257ad..81a57cdecb 100644 --- a/include/RAJA/policy/sycl/kernel/Tile.hpp +++ b/include/RAJA/policy/sycl/kernel/Tile.hpp @@ -10,7 +10,7 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/TileTCount.hpp b/include/RAJA/policy/sycl/kernel/TileTCount.hpp index 168de2b65e..b1d263a263 100644 --- a/include/RAJA/policy/sycl/kernel/TileTCount.hpp +++ b/include/RAJA/policy/sycl/kernel/TileTCount.hpp @@ -10,7 +10,7 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/kernel/internal.hpp b/include/RAJA/policy/sycl/kernel/internal.hpp index e2a1f8e60f..3fe37efe0b 100644 --- a/include/RAJA/policy/sycl/kernel/internal.hpp +++ b/include/RAJA/policy/sycl/kernel/internal.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/sycl/launch.hpp b/include/RAJA/policy/sycl/launch.hpp index 4a97264120..e9e9d8390d 100644 --- a/include/RAJA/policy/sycl/launch.hpp +++ b/include/RAJA/policy/sycl/launch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -32,10 +32,13 @@ template struct LaunchExecute> { //If the launch lambda is trivially copyable - template {},bool>::type = true> - static resources::EventProxy - exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, BODY_IN &&body_in) + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, + BODY_IN &&body_in, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { cl::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); @@ -96,11 +99,29 @@ struct LaunchExecute> { return resources::EventProxy(res); } + //If the launch lambda is trivially copyable and we have explcit reduction parameters + template {},bool>::type = true> + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, const LaunchParams &launch_params, const char *kernel_name, + BODY_IN &&body_in, ReduceParams &&launch_reducers) + { + + RAJA_ABORT_OR_THROW("SYCL trivially copyable lambda backend currently not supported in RAJA launch"); + + return resources::EventProxy(res); + } + //If the launch lambda is not trivially copyable - template {},bool>::type = true> - static resources::EventProxy - exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, BODY_IN &&body_in) + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + RAJA::expt::type_traits::is_ForallParamPack_empty> + exec(RAJA::resources::Resource res, const LaunchParams ¶ms, const char *kernel_name, + BODY_IN &&body_in, ReduceParams &RAJA_UNUSED_ARG(launch_reducers)) { cl::sycl::queue* q = ::RAJA::sycl::detail::getQueue(); @@ -171,6 +192,22 @@ struct LaunchExecute> { } + //If the launch lambda is not trivially copyable + template {},bool>::type = true> + static concepts::enable_if_t, + RAJA::expt::type_traits::is_ForallParamPack, + concepts::negate>> + exec(RAJA::resources::Resource res, const LaunchParams &launch_params, const char *kernel_name, + BODY_IN &&body_in, ReduceParams &&launch_reducers) + { + + RAJA_ABORT_OR_THROW("SYCL non-trivially copyable lambda backend currently not supported in RAJA launch"); + + return resources::EventProxy(res); + } + + }; /* diff --git a/include/RAJA/policy/tbb/params/reduce.hpp b/include/RAJA/policy/sycl/params/reduce.hpp similarity index 55% rename from include/RAJA/policy/tbb/params/reduce.hpp rename to include/RAJA/policy/sycl/params/reduce.hpp index 91ce754770..a1afbe5835 100644 --- a/include/RAJA/policy/tbb/params/reduce.hpp +++ b/include/RAJA/policy/sycl/params/reduce.hpp @@ -1,36 +1,40 @@ -#ifndef NEW_REDUCE_TBB_REDUCE_HPP -#define NEW_REDUCE_TBB_REDUCE_HPP +#ifndef NEW_REDUCE_SYCL_REDUCE_HPP +#define NEW_REDUCE_SYCL_REDUCE_HPP #include "RAJA/pattern/params/reducer.hpp" -#if defined(RAJA_ENABLE_TBB) -#include "RAJA/policy/tbb/policy.hpp" namespace RAJA { namespace expt { namespace detail { +#if defined(RAJA_ENABLE_SYCL) + // Init template - camp::concepts::enable_if< std::is_same< EXEC_POL, RAJA::tbb_for_dynamic> > + camp::concepts::enable_if< type_traits::is_sycl_policy > init(Reducer& red) { red.val = OP::identity(); } + // Combine template - camp::concepts::enable_if< std::is_same< EXEC_POL, RAJA::tbb_for_dynamic> > + camp::concepts::enable_if< type_traits::is_sycl_policy > + SYCL_EXTERNAL combine(Reducer& out, const Reducer& in) { out.val = OP{}(out.val, in.val); } + // Resolve template - camp::concepts::enable_if< std::is_same< EXEC_POL, RAJA::tbb_for_dynamic> > + camp::concepts::enable_if< type_traits::is_sycl_policy > resolve(Reducer& red) { - *red.target = OP{}(red.val, *red.target); + *red.target = OP{}(*red.target, red.val); } +#endif + } // namespace detail } // namespace expt } // namespace RAJA -#endif -#endif // NEW_REDUCE_SEQ_REDUCE_HPP +#endif // NEW_REDUCE_SYCL_REDUCE_HPP diff --git a/include/RAJA/policy/sycl/policy.hpp b/include/RAJA/policy/sycl/policy.hpp index d805848580..a2ab44e3f7 100644 --- a/include/RAJA/policy/sycl/policy.hpp +++ b/include/RAJA/policy/sycl/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -68,7 +68,7 @@ namespace sycl // ////////////////////////////////////////////////////////////////////// -template +template struct sycl_exec : public RAJA::make_policy_pattern_launch_platform_t< RAJA::Policy::sycl, RAJA::Pattern::forall, diff --git a/include/RAJA/policy/sycl/reduce.hpp b/include/RAJA/policy/sycl/reduce.hpp index c88c05f2c1..590872cdca 100644 --- a/include/RAJA/policy/sycl/reduce.hpp +++ b/include/RAJA/policy/sycl/reduce.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -595,146 +595,6 @@ class ReduceMax } }; -//! specialization of ReduceMinLoc for omp_target_reduce -template -class ReduceMinLoc - : public TargetReduceLoc, T, IndexType> -{ -public: - - using self = ReduceMinLoc; - using parent = - TargetReduceLoc, T, IndexType>; - using parent::parent; - - //! enable minloc() for ReduceMinLoc -- alias for reduce() - self &minloc(T rhsVal, IndexType rhsLoc) - { -#ifdef __SYCL_DEVICE_ONLY__ - // TODO: Race condition currently - auto i = 0;//__spirv::initLocalInvocationId<1, cl::sycl::id<1>>()[0]; - auto atm = cl::sycl::ext::oneapi::atomic_ref(parent::val.device[i]); - auto oldMin = atm.fetch_min(rhsVal); - if(oldMin >= rhsVal) { // New min or Same min - if(oldMin == rhsVal) { // Same as old min - if(rhsLoc < parent::loc.device[i]) { // if same, only overwrite if earlier - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } else { - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } - return *this; -#else - parent::reduce(rhsVal, rhsLoc); - return *this; -#endif - } - - //! enable minloc() for ReduceMinLoc -- alias for reduce() - const self &minloc(T rhsVal, IndexType rhsLoc) const - { -#ifdef __SYCL_DEVICE_ONLY__ - // TODO: Race condition currently - auto i = 0;//__spirv::initLocalInvocationId<1, cl::sycl::id<1>>()[0]; - auto atm = cl::sycl::ext::oneapi::atomic_ref(parent::val.device[i]); - auto oldMin = atm.fetch_min(rhsVal); - if(oldMin >= rhsVal) { // New min or Same min - if(oldMin == rhsVal) { // Same as old min - if(rhsLoc < parent::loc.device[i]) { // if same, only overwrite if earlier - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } else { - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } - return *this; -#else - parent::reduce(rhsVal, rhsLoc); - return *this; -#endif - } -}; - - -//! specialization of ReduceMaxLoc for omp_target_reduce -template -class ReduceMaxLoc - : public TargetReduceLoc, T, IndexType> -{ -public: - - using self = ReduceMaxLoc; - using parent = - TargetReduceLoc, T, IndexType>; - using parent::parent; - - //! enable maxloc() for ReduceMaxLoc -- alias for reduce() - self &maxloc(T rhsVal, IndexType rhsLoc) - { -#ifdef __SYCL_DEVICE_ONLY__ - // TODO: Race condition currently - auto i = 0;//__spirv::initLocalInvocationId<1, cl::sycl::id<1>>()[0]; - auto atm = cl::sycl::ext::oneapi::atomic_ref(parent::val.device[i]); - auto oldMin = atm.fetch_max(rhsVal); - if(oldMin <= rhsVal) { // New min or Same min - if(oldMin == rhsVal) { // Same as old min - if(rhsLoc < parent::loc.device[i]) { // if same, only overwrite if earlier - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } else { - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } - return *this; -#else - parent::reduce(rhsVal, rhsLoc); - return *this; -#endif - } - - //! enable maxloc() for ReduceMaxLoc -- alias for reduce() - const self &maxloc(T rhsVal, IndexType rhsLoc) const - { -#ifdef __SYCL_DEVICE_ONLY__ - // TODO: Race condition currently - auto i = 0;//__spirv::initLocalInvocationId<1, cl::sycl::id<1>>()[0]; - auto atm = cl::sycl::ext::oneapi::atomic_ref(parent::val.device[i]); - auto oldMin = atm.fetch_max(rhsVal); - if(oldMin <= rhsVal) { // New min or Same min - if(oldMin == rhsVal) { // Same as old min - if(rhsLoc < parent::loc.device[i]) { // if same, only overwrite if earlier - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } else { - if(rhsVal == atm.load()) { - parent::loc.device[i] = rhsLoc; - } - } - } - return *this; -#else - parent::reduce(rhsVal, rhsLoc); - return *this; -#endif - } -}; - - } // namespace RAJA #endif // closing endif for RAJA_ENABLE_SYCL guard diff --git a/include/RAJA/policy/tbb.hpp b/include/RAJA/policy/tbb.hpp deleted file mode 100644 index 20dcfda477..0000000000 --- a/include/RAJA/policy/tbb.hpp +++ /dev/null @@ -1,34 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA headers for tbb execution. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_tbb_HPP -#define RAJA_tbb_HPP - -#include "RAJA/config.hpp" - -#if defined(RAJA_ENABLE_TBB) - -#include "RAJA/policy/tbb/forall.hpp" -#include "RAJA/policy/tbb/policy.hpp" -#include "RAJA/policy/tbb/reduce.hpp" -#include "RAJA/policy/tbb/scan.hpp" -#include "RAJA/policy/tbb/sort.hpp" -#include "RAJA/policy/tbb/WorkGroup.hpp" - -#endif - -#endif // closing endif for header file include guard diff --git a/include/RAJA/policy/tbb/WorkGroup.hpp b/include/RAJA/policy/tbb/WorkGroup.hpp deleted file mode 100644 index d7e90bf160..0000000000 --- a/include/RAJA/policy/tbb/WorkGroup.hpp +++ /dev/null @@ -1,25 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA Dispatcher and WorkRunner constructs. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_tbb_WorkGroup_HPP -#define RAJA_tbb_WorkGroup_HPP - -#include "RAJA/policy/tbb/WorkGroup/Dispatcher.hpp" -#include "RAJA/policy/tbb/WorkGroup/WorkRunner.hpp" - - -#endif // closing endif for header file include guard diff --git a/include/RAJA/policy/tbb/WorkGroup/Dispatcher.hpp b/include/RAJA/policy/tbb/WorkGroup/Dispatcher.hpp deleted file mode 100644 index af33422f27..0000000000 --- a/include/RAJA/policy/tbb/WorkGroup/Dispatcher.hpp +++ /dev/null @@ -1,47 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA workgroup Dispatcher. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_tbb_WorkGroup_Dispatcher_HPP -#define RAJA_tbb_WorkGroup_Dispatcher_HPP - -#include "RAJA/config.hpp" - -#include "RAJA/policy/tbb/policy.hpp" - -#include "RAJA/policy/sequential/WorkGroup/Dispatcher.hpp" - - -namespace RAJA -{ - -namespace detail -{ - -/*! -* Populate and return a Dispatcher object -*/ -template < typename T, typename Dispatcher_T > -inline const Dispatcher_T* get_Dispatcher(tbb_work const&) -{ - return get_Dispatcher(seq_work{}); -} - -} // namespace detail - -} // namespace RAJA - -#endif // closing endif for header file include guard diff --git a/include/RAJA/policy/tbb/WorkGroup/WorkRunner.hpp b/include/RAJA/policy/tbb/WorkGroup/WorkRunner.hpp deleted file mode 100644 index b357172318..0000000000 --- a/include/RAJA/policy/tbb/WorkGroup/WorkRunner.hpp +++ /dev/null @@ -1,88 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA WorkRunner class specializations. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_tbb_WorkGroup_WorkRunner_HPP -#define RAJA_tbb_WorkGroup_WorkRunner_HPP - -#include "RAJA/config.hpp" - -#include "RAJA/policy/tbb/policy.hpp" - -#include "RAJA/pattern/WorkGroup/WorkRunner.hpp" - - -namespace RAJA -{ - -namespace detail -{ - -/*! - * Runs work in a storage container in order - * and returns any per run resources - */ -template -struct WorkRunner< - RAJA::tbb_work, - RAJA::ordered, - DISPATCH_POLICY_T, - ALLOCATOR_T, - INDEX_T, - Args...> - : WorkRunnerForallOrdered< - RAJA::tbb_for_exec, - RAJA::tbb_work, - RAJA::ordered, - DISPATCH_POLICY_T, - ALLOCATOR_T, - INDEX_T, - Args...> -{ }; - -/*! - * Runs work in a storage container in reverse order - * and returns any per run resources - */ -template -struct WorkRunner< - RAJA::tbb_work, - RAJA::reverse_ordered, - DISPATCH_POLICY_T, - ALLOCATOR_T, - INDEX_T, - Args...> - : WorkRunnerForallReverse< - RAJA::tbb_for_exec, - RAJA::tbb_work, - RAJA::reverse_ordered, - DISPATCH_POLICY_T, - ALLOCATOR_T, - INDEX_T, - Args...> -{ }; - -} // namespace detail - -} // namespace RAJA - -#endif // closing endif for header file include guard diff --git a/include/RAJA/policy/tbb/forall.hpp b/include/RAJA/policy/tbb/forall.hpp deleted file mode 100644 index 5df9f0c3d5..0000000000 --- a/include/RAJA/policy/tbb/forall.hpp +++ /dev/null @@ -1,259 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA index set and segment iteration - * template methods for TBB. - * - * These methods should work on any platform that supports TBB. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_forall_tbb_HPP -#define RAJA_forall_tbb_HPP - -#include "RAJA/config.hpp" - -#if defined(RAJA_ENABLE_TBB) - -#include - -#include "RAJA/index/IndexSet.hpp" -#include "RAJA/index/ListSegment.hpp" -#include "RAJA/index/RangeSegment.hpp" -#include "RAJA/internal/fault_tolerance.hpp" -#include "RAJA/pattern/forall.hpp" -#include "RAJA/pattern/params/forall.hpp" -#include "RAJA/policy/tbb/policy.hpp" -#include "RAJA/util/types.hpp" - - -namespace RAJA -{ -#if TBB_VERSION_MAJOR >= 2017 -using tbb_static_partitioner = tbb::static_partitioner; -#else -// @trws: This is not static, but it seems to be the least damaging option -// available pre-2017 -using tbb_static_partitioner = tbb::auto_partitioner; -#endif - -namespace policy -{ -namespace tbb -{ - - -/** - * @brief TBB dynamic for implementation - * - * @param p tbb tag - * @param iter any iterable - * @param loop_body loop body - * - * @return None - * - * - * This forall implements a TBB parallel_for loop over the specified iterable - * using the dynamic loop scheduler and the grain size specified in the policy - * argument. This should be used for composable parallelism and increased work - * stealing at the cost of initial start-up overhead for a top-level loop. - */ - -template -RAJA_INLINE -concepts::enable_if_t< - resources::EventProxy, - expt::type_traits::is_ForallParamPack, - concepts::negate> - > -forall_impl(resources::Host host_res, - const tbb_for_dynamic& p, - Iterable&& iter, - Func&& loop_body, - ForallParam f_params) -{ - using std::begin; - using std::distance; - using std::end; - using brange = ::tbb::blocked_range; - auto b = begin(iter); - size_t dist = std::abs(distance(begin(iter), end(iter))); - - expt::ParamMultiplexer::init(f_params); - - f_params = ::tbb::parallel_reduce( - brange(0, dist, p.grain_size), - - f_params, - - [=](const brange& r, ForallParam fp) { - using RAJA::internal::thread_privatize; - auto privatizer = thread_privatize(loop_body); - auto& body = privatizer.get_priv(); - for (auto i = r.begin(); i != r.end(); ++i) - expt::invoke_body(fp, body, b[i]); - return fp; - }, - - [](ForallParam lhs, ForallParam rhs) -> ForallParam { - expt::ParamMultiplexer::combine(lhs, rhs); - return lhs; - } - ); - - expt::ParamMultiplexer::resolve(f_params); - - return resources::EventProxy(host_res); -} - -template -RAJA_INLINE -concepts::enable_if_t< - resources::EventProxy, - expt::type_traits::is_ForallParamPack, - expt::type_traits::is_ForallParamPack_empty - > -forall_impl(resources::Host host_res, - const tbb_for_dynamic& p, - Iterable&& iter, - Func&& loop_body, - ForallParam) -{ - using std::begin; - using std::distance; - using std::end; - using brange = ::tbb::blocked_range; - auto b = begin(iter); - size_t dist = std::abs(distance(begin(iter), end(iter))); - ::tbb::parallel_for(brange(0, dist, p.grain_size), [=](const brange& r) { - using RAJA::internal::thread_privatize; - auto privatizer = thread_privatize(loop_body); - auto& body = privatizer.get_priv(); - for (auto i = r.begin(); i != r.end(); ++i) - body(b[i]); - }); - - return resources::EventProxy(host_res); -} -/// -/// TBB parallel for static policy implementation -/// - -/** - * @brief TBB static for implementation - * - * @param tbb_for_static tbb tag - * @param iter any iterable - * @param loop_body loop body - * - * @return None - * - * This forall implements a TBB parallel_for loop over the specified iterable - * using the static loop scheduler and the grain size specified as a - * compile-time constant in the policy argument. This should be used for - * OpenMP-like fast-launch well-balanced loops, or loops where the split between - * threads must be maintained across multiple loops for correctness. NOTE: if - * correctnes requires the per-thread mapping, you *must* use TBB 2017 or newer - */ - -template -RAJA_INLINE -concepts::enable_if_t< - resources::EventProxy, - expt::type_traits::is_ForallParamPack, - concepts::negate> - > -forall_impl(resources::Host host_res, - const tbb_for_static&, - Iterable&& iter, - Func&& loop_body, - ForallParam f_params) -{ - using std::begin; - using std::distance; - using std::end; - using brange = ::tbb::blocked_range; - auto b = begin(iter); - size_t dist = std::abs(distance(begin(iter), end(iter))); - - expt::ParamMultiplexer::init(f_params); - - auto fp = ::tbb::parallel_reduce( - brange(0, dist, ChunkSize), - - f_params, - - [=](const brange& r, ForallParam fp) { - using RAJA::internal::thread_privatize; - auto privatizer = thread_privatize(loop_body); - auto& body = privatizer.get_priv(); - for (auto i = r.begin(); i != r.end(); ++i) - expt::invoke_body(fp, body, b[i]); - return fp; - }, - - [](ForallParam lhs, ForallParam rhs) -> ForallParam { - expt::ParamMultiplexer::combine(lhs, rhs); - return lhs; - }, - tbb_static_partitioner{} - - ); - expt::ParamMultiplexer::combine(f_params, fp); - - expt::ParamMultiplexer::resolve(f_params); - - return resources::EventProxy(host_res); -} - -template -RAJA_INLINE -concepts::enable_if_t< - resources::EventProxy, - expt::type_traits::is_ForallParamPack, - expt::type_traits::is_ForallParamPack_empty - > -forall_impl(resources::Host host_res, - const tbb_for_static&, - Iterable&& iter, - Func&& loop_body, - ForallParam) -{ - using std::begin; - using std::distance; - using std::end; - using brange = ::tbb::blocked_range; - auto b = begin(iter); - size_t dist = std::abs(distance(begin(iter), end(iter))); - ::tbb::parallel_for( - brange(0, dist, ChunkSize), - [=](const brange& r) { - using RAJA::internal::thread_privatize; - auto privatizer = thread_privatize(loop_body); - auto& body = privatizer.get_priv(); - for (auto i = r.begin(); i != r.end(); ++i) - body(b[i]); - }, - tbb_static_partitioner{}); - - return resources::EventProxy(host_res); -} - -} // namespace tbb -} // namespace policy - -} // namespace RAJA - -#endif // closing endif for if defined(RAJA_ENABLE_TBB) - -#endif // closing endif for header file include guard diff --git a/include/RAJA/policy/tbb/policy.hpp b/include/RAJA/policy/tbb/policy.hpp deleted file mode 100644 index e4cf5c115f..0000000000 --- a/include/RAJA/policy/tbb/policy.hpp +++ /dev/null @@ -1,103 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA sequential policy definitions. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef policy_tbb_HPP -#define policy_tbb_HPP - -#include "RAJA/policy/PolicyBase.hpp" - -#include - -namespace RAJA -{ -namespace policy -{ -namespace tbb -{ - -// -////////////////////////////////////////////////////////////////////// -// -// Execution policies -// -////////////////////////////////////////////////////////////////////// -// - -/// -/// Segment execution policies -/// - -struct tbb_for_dynamic - : make_policy_pattern_launch_platform_t { - std::size_t grain_size; - tbb_for_dynamic(std::size_t grain_size_ = 1) : grain_size(grain_size_) {} -}; - - -template -struct tbb_for_static : make_policy_pattern_launch_platform_t { -}; - -using tbb_for_exec = tbb_for_static<>; - -/// -/// Index set segment iteration policies -/// -using tbb_segit = tbb_for_exec; - -/// -/// WorkGroup execution policies -/// -struct tbb_work : make_policy_pattern_launch_platform_t { -}; - - -/// -/////////////////////////////////////////////////////////////////////// -/// -/// Reduction execution policies -/// -/////////////////////////////////////////////////////////////////////// -/// -struct tbb_reduce : make_policy_pattern_launch_platform_t { -}; - -} // namespace tbb -} // namespace policy - -using policy::tbb::tbb_for_dynamic; -using policy::tbb::tbb_for_exec; -using policy::tbb::tbb_for_static; -using policy::tbb::tbb_reduce; -using policy::tbb::tbb_segit; -using policy::tbb::tbb_work; - -} // namespace RAJA - -#endif diff --git a/include/RAJA/policy/tbb/reduce.hpp b/include/RAJA/policy/tbb/reduce.hpp deleted file mode 100644 index b6c54595e8..0000000000 --- a/include/RAJA/policy/tbb/reduce.hpp +++ /dev/null @@ -1,93 +0,0 @@ -/*! - ****************************************************************************** - * - * \file - * - * \brief Header file containing RAJA reduction templates for - * TBB execution. - * - * These methods should work on any platform that supports TBB. - * - ****************************************************************************** - */ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_tbb_reduce_HPP -#define RAJA_tbb_reduce_HPP - -#include "RAJA/config.hpp" - -#if defined(RAJA_ENABLE_TBB) - -#include -#include - -#include - -#include "RAJA/internal/MemUtils_CPU.hpp" - -#include "RAJA/pattern/detail/reduce.hpp" -#include "RAJA/pattern/reduce.hpp" - -#include "RAJA/policy/tbb/policy.hpp" - -#include "RAJA/util/types.hpp" - -namespace RAJA -{ - -namespace detail -{ -template -class ReduceTBB -{ - //! TBB native per-thread container - std::shared_ptr> data; - -public: - //! default constructor calls the reset method - ReduceTBB() { reset(T(), T()); } - - //! constructor requires a default value for the reducer - explicit ReduceTBB(T init_val, T initializer) - { - reset(init_val, initializer); - } - - void reset(T init_val, T initializer) - { - data = std::shared_ptr>( - std::make_shared>([=]() { return initializer; })); - data->local() = init_val; - } - - /*! - * \return the calculated reduced value - */ - T get() const { return data->combine(typename Reduce::operator_type{}); } - - /*! - * \return update the local value - */ - void combine(const T& other) { Reduce{}(this->local(), other); } - - /*! - * \return reference to the local value - */ - T& local() { return data->local(); } -}; -} // namespace detail - -RAJA_DECLARE_ALL_REDUCERS(tbb_reduce, detail::ReduceTBB) - -} // namespace RAJA - -#endif // closing endif for RAJA_ENABLE_TBB guard - -#endif // closing endif for header file include guard diff --git a/include/RAJA/policy/tbb/scan.hpp b/include/RAJA/policy/tbb/scan.hpp deleted file mode 100644 index b7112e04c8..0000000000 --- a/include/RAJA/policy/tbb/scan.hpp +++ /dev/null @@ -1,225 +0,0 @@ -/*! -****************************************************************************** -* -* \file -* -* \brief Header file providing RAJA scan declarations. -* -****************************************************************************** -*/ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_scan_tbb_HPP -#define RAJA_scan_tbb_HPP - -#include "RAJA/config.hpp" - -#include -#include -#include - -#include - -#include "RAJA/util/concepts.hpp" -#include "RAJA/util/macros.hpp" - -#include "RAJA/policy/sequential/policy.hpp" - -namespace RAJA -{ -namespace impl -{ -namespace scan -{ - -namespace detail -{ -template -struct scan_adapter { - T agg; - InIter const& in; - OutIter out; - Fn fn; - T const init; - - constexpr scan_adapter(InIter const& in_, - OutIter out_, - Fn fn_, - T const& init_) - : agg(init_), in(in_), out(out_), fn(fn_), init(init_) - { - } - T get_agg() const { return agg; } - - scan_adapter(scan_adapter& b, tbb::split) - : agg(Fn::identity()), in(b.in), out(b.out), fn(b.fn), init(b.init) - { - } - void reverse_join(const scan_adapter& a) { agg = fn(agg, a.agg); } - void assign(const scan_adapter& b) { agg = b.agg; } -}; - -template -struct scan_adapter_inclusive : scan_adapter { - - using Base = scan_adapter; - using Base::Base; - template - void operator()(const tbb::blocked_range& r, Tag) - { - T temp = this->agg; - for (Index_type i = r.begin(); i < r.end(); ++i) { - temp = this->fn(temp, this->in[i]); - if (Tag::is_final_scan()) this->out[i] = temp; - } - this->agg = temp; - } -}; - -template -struct scan_adapter_exclusive : scan_adapter { - - using Base = scan_adapter; - using Base::Base; - template - void operator()(const tbb::blocked_range& r, Tag) - { - if (r.begin() == 0) this->agg = this->init; - for (Index_type i = r.begin(); i < r.end(); ++i) { - auto t = this->in[i]; - if (Tag::is_final_scan()) this->out[i] = this->agg; - this->agg = this->fn(this->agg, t); - } - } -}; -} // namespace detail - -/*! - \brief explicit inclusive inplace scan given range, function, and - initial value -*/ -template -RAJA_INLINE -concepts::enable_if_t, - type_traits::is_tbb_policy> -inclusive_inplace( - resources::Host host_res, - const ExecPolicy&, - Iter begin, - Iter end, - BinFn f) -{ - auto adapter = detail::scan_adapter_inclusive< - typename std::remove_reference::type, - Iter, - Iter, - BinFn>{begin, begin, f, BinFn::identity()}; - tbb::parallel_scan(tbb::blocked_range{0, - std::distance(begin, end)}, - adapter); - - return resources::EventProxy(host_res); -} - -/*! - \brief explicit exclusive inplace scan given range, function, and - initial value -*/ -template -RAJA_INLINE -concepts::enable_if_t, - type_traits::is_tbb_policy> -exclusive_inplace( - resources::Host host_res, - const ExecPolicy&, - Iter begin, - Iter end, - BinFn f, - T v) -{ - auto adapter = detail::scan_adapter_exclusive< - typename std::remove_reference::type, - Iter, - Iter, - BinFn>{begin, begin, f, v}; - tbb::parallel_scan(tbb::blocked_range{0, - std::distance(begin, end)}, - adapter); - - return resources::EventProxy(host_res); -} - -/*! - \brief explicit inclusive scan given input range, output, function, and - initial value -*/ -template -RAJA_INLINE -concepts::enable_if_t, - type_traits::is_tbb_policy> -inclusive( - resources::Host host_res, - const ExecPolicy&, - const Iter begin, - const Iter end, - OutIter out, - BinFn f) -{ - auto adapter = detail::scan_adapter_inclusive< - typename std::remove_reference::type, - Iter, - OutIter, - BinFn>{begin, out, f, BinFn::identity()}; - tbb::parallel_scan(tbb::blocked_range{0, - std::distance(begin, end)}, - adapter); - - return resources::EventProxy(host_res); -} - -/*! - \brief explicit exclusive scan given input range, output, function, and - initial value -*/ -template -RAJA_INLINE -concepts::enable_if_t, - type_traits::is_tbb_policy> -exclusive( - resources::Host host_res, - const ExecPolicy&, - const Iter begin, - const Iter end, - OutIter out, - BinFn f, - T v) -{ - auto adapter = detail::scan_adapter_exclusive< - typename std::remove_reference::type, - Iter, - OutIter, - BinFn>{begin, out, f, v}; - tbb::parallel_scan(tbb::blocked_range{0, - std::distance(begin, end)}, - adapter); - - return resources::EventProxy(host_res); -} - -} // namespace scan - -} // namespace impl - -} // namespace RAJA - -#endif diff --git a/include/RAJA/policy/tbb/sort.hpp b/include/RAJA/policy/tbb/sort.hpp deleted file mode 100644 index 18634a204e..0000000000 --- a/include/RAJA/policy/tbb/sort.hpp +++ /dev/null @@ -1,220 +0,0 @@ -/*! -****************************************************************************** -* -* \file -* -* \brief Header file providing RAJA sort declarations. -* -****************************************************************************** -*/ - -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -#ifndef RAJA_sort_tbb_HPP -#define RAJA_sort_tbb_HPP - -#include "RAJA/config.hpp" - -#include -#include -#include - -#include - -#include "RAJA/util/macros.hpp" - -#include "RAJA/util/concepts.hpp" - -#include "RAJA/policy/tbb/policy.hpp" -#include "RAJA/policy/sequential/sort.hpp" -#include "RAJA/pattern/detail/algorithm.hpp" - -namespace RAJA -{ -namespace impl -{ -namespace sort -{ - -namespace detail -{ - -/*! - \brief sort given range using sorter and comparison function - by spawning tasks -*/ -template < typename Sorter, typename Iter, typename Compare > -struct TbbSortTask : tbb::task -{ - using diff_type = - camp::decay() - camp::val())>; - - // TODO: make this less arbitrary - static const diff_type cutoff = 256; - - Sorter sorter; - const Iter begin; - const Iter end; - Compare comp; - - TbbSortTask(Sorter sorter_, Iter begin_, Iter end_, Compare comp_) - : sorter(sorter_) - , begin(begin_) - , end(end_) - , comp(comp_) - { } - - tbb::task* execute() - { - diff_type len = end - begin; - - if (len <= cutoff) { - - // leaves sort their range - sorter(begin, end, comp); - - } else { - - Iter middle = begin + (len/2); - - // branching nodes break the sorting up recursively - TbbSortTask& sort_tank_front = - *new( allocate_child() ) TbbSortTask(sorter, begin, middle, comp); - TbbSortTask& sort_tank_back = - *new( allocate_child() ) TbbSortTask(sorter, middle, end, comp); - - set_ref_count(3); - spawn(sort_tank_back); - spawn_and_wait_for_all(sort_tank_front); - - // and merge the results - RAJA::detail::inplace_merge(begin, middle, end, comp); - //std::inplace_merge(begin, middle, end, comp); - } - - return nullptr; - } -}; - -/*! - \brief sort given range using sorter and comparison function -*/ -template -inline -void tbb_sort(Sorter sorter, - Iter begin, - Iter end, - Compare comp) -{ - using diff_type = RAJA::detail::IterDiff; - using SortTask = TbbSortTask; - - diff_type n = end - begin; - - if (n <= SortTask::cutoff) { - - sorter(begin, end, comp); - - } else { - - SortTask& sort_task = - *new(tbb::task::allocate_root()) SortTask(sorter, begin, end, comp); - tbb::task::spawn_root_and_wait(sort_task); - - } -} - -} // namespace detail - -/*! - \brief sort given range using comparison function -*/ -template -concepts::enable_if_t, - type_traits::is_tbb_policy> -unstable( - resources::Host host_res, - const ExecPolicy&, - Iter begin, - Iter end, - Compare comp) -{ - tbb::parallel_sort(begin, end, comp); - - return resources::EventProxy(host_res); -} - -/*! - \brief stable sort given range using comparison function -*/ -template -concepts::enable_if_t, - type_traits::is_tbb_policy> -stable( - resources::Host host_res, - const ExecPolicy&, - Iter begin, - Iter end, - Compare comp) -{ - detail::tbb_sort(detail::StableSorter{}, begin, end, comp); - - return resources::EventProxy(host_res); -} - -/*! - \brief sort given range of pairs using comparison function on keys -*/ -template -concepts::enable_if_t, - type_traits::is_tbb_policy> -unstable_pairs( - resources::Host host_res, - const ExecPolicy&, - KeyIter keys_begin, - KeyIter keys_end, - ValIter vals_begin, - Compare comp) -{ - auto begin = RAJA::zip(keys_begin, vals_begin); - auto end = RAJA::zip(keys_end, vals_begin+(keys_end-keys_begin)); - using zip_ref = RAJA::detail::IterRef>; - detail::tbb_sort(detail::UnstableSorter{}, begin, end, RAJA::compare_first(comp)); - - return resources::EventProxy(host_res); -} - -/*! - \brief stable sort given range of pairs using comparison function on keys -*/ -template -concepts::enable_if_t, - type_traits::is_tbb_policy> -stable_pairs( - resources::Host host_res, - const ExecPolicy&, - KeyIter keys_begin, - KeyIter keys_end, - ValIter vals_begin, - Compare comp) -{ - auto begin = RAJA::zip(keys_begin, vals_begin); - auto end = RAJA::zip(keys_end, vals_begin+(keys_end-keys_begin)); - using zip_ref = RAJA::detail::IterRef>; - detail::tbb_sort(detail::StableSorter{}, begin, end, RAJA::compare_first(comp)); - - return resources::EventProxy(host_res); -} - -} // namespace sort - -} // namespace impl - -} // namespace RAJA - -#endif diff --git a/include/RAJA/policy/tensor.hpp b/include/RAJA/policy/tensor.hpp index c22d5d172e..bc38787f63 100644 --- a/include/RAJA/policy/tensor.hpp +++ b/include/RAJA/policy/tensor.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch.hpp b/include/RAJA/policy/tensor/arch.hpp index c48f2f77ae..771adea64f 100644 --- a/include/RAJA/policy/tensor/arch.hpp +++ b/include/RAJA/policy/tensor/arch.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx.hpp b/include/RAJA/policy/tensor/arch/avx.hpp index 0907cca339..ed25f1f3e3 100644 --- a/include/RAJA/policy/tensor/arch/avx.hpp +++ b/include/RAJA/policy/tensor/arch/avx.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx/avx_double.hpp b/include/RAJA/policy/tensor/arch/avx/avx_double.hpp index 3107bd2313..8a23d66e57 100644 --- a/include/RAJA/policy/tensor/arch/avx/avx_double.hpp +++ b/include/RAJA/policy/tensor/arch/avx/avx_double.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx/avx_float.hpp b/include/RAJA/policy/tensor/arch/avx/avx_float.hpp index 55a3e7f4b8..1e6563742a 100644 --- a/include/RAJA/policy/tensor/arch/avx/avx_float.hpp +++ b/include/RAJA/policy/tensor/arch/avx/avx_float.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx/avx_int32.hpp b/include/RAJA/policy/tensor/arch/avx/avx_int32.hpp index a751b8f03f..11ab97be16 100644 --- a/include/RAJA/policy/tensor/arch/avx/avx_int32.hpp +++ b/include/RAJA/policy/tensor/arch/avx/avx_int32.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx/avx_int64.hpp b/include/RAJA/policy/tensor/arch/avx/avx_int64.hpp index ed075de91b..1c7fae3dc7 100644 --- a/include/RAJA/policy/tensor/arch/avx/avx_int64.hpp +++ b/include/RAJA/policy/tensor/arch/avx/avx_int64.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx/traits.hpp b/include/RAJA/policy/tensor/arch/avx/traits.hpp index 65c88cd30a..33c18e2c5f 100644 --- a/include/RAJA/policy/tensor/arch/avx/traits.hpp +++ b/include/RAJA/policy/tensor/arch/avx/traits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx2.hpp b/include/RAJA/policy/tensor/arch/avx2.hpp index a8f2a6a7cc..b462257924 100644 --- a/include/RAJA/policy/tensor/arch/avx2.hpp +++ b/include/RAJA/policy/tensor/arch/avx2.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx2/avx2_double.hpp b/include/RAJA/policy/tensor/arch/avx2/avx2_double.hpp index e7039e697e..852003a4f9 100644 --- a/include/RAJA/policy/tensor/arch/avx2/avx2_double.hpp +++ b/include/RAJA/policy/tensor/arch/avx2/avx2_double.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx2/avx2_float.hpp b/include/RAJA/policy/tensor/arch/avx2/avx2_float.hpp index b7da05b227..4b1e11419d 100644 --- a/include/RAJA/policy/tensor/arch/avx2/avx2_float.hpp +++ b/include/RAJA/policy/tensor/arch/avx2/avx2_float.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx2/avx2_int32.hpp b/include/RAJA/policy/tensor/arch/avx2/avx2_int32.hpp index 969b1fec66..ab5948a3f2 100644 --- a/include/RAJA/policy/tensor/arch/avx2/avx2_int32.hpp +++ b/include/RAJA/policy/tensor/arch/avx2/avx2_int32.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx2/avx2_int64.hpp b/include/RAJA/policy/tensor/arch/avx2/avx2_int64.hpp index 04160d27b4..00eea542cd 100644 --- a/include/RAJA/policy/tensor/arch/avx2/avx2_int64.hpp +++ b/include/RAJA/policy/tensor/arch/avx2/avx2_int64.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx2/traits.hpp b/include/RAJA/policy/tensor/arch/avx2/traits.hpp index 6476485aa7..e95c661335 100644 --- a/include/RAJA/policy/tensor/arch/avx2/traits.hpp +++ b/include/RAJA/policy/tensor/arch/avx2/traits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx512.hpp b/include/RAJA/policy/tensor/arch/avx512.hpp index 8401c4f7e2..597563da35 100644 --- a/include/RAJA/policy/tensor/arch/avx512.hpp +++ b/include/RAJA/policy/tensor/arch/avx512.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx512/avx512_double.hpp b/include/RAJA/policy/tensor/arch/avx512/avx512_double.hpp index 645805c5f9..a7b7ebaafa 100644 --- a/include/RAJA/policy/tensor/arch/avx512/avx512_double.hpp +++ b/include/RAJA/policy/tensor/arch/avx512/avx512_double.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx512/avx512_float.hpp b/include/RAJA/policy/tensor/arch/avx512/avx512_float.hpp index f178ff2f24..84cb034a56 100644 --- a/include/RAJA/policy/tensor/arch/avx512/avx512_float.hpp +++ b/include/RAJA/policy/tensor/arch/avx512/avx512_float.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx512/avx512_int32.hpp b/include/RAJA/policy/tensor/arch/avx512/avx512_int32.hpp index 80d6725394..021ca90fbe 100644 --- a/include/RAJA/policy/tensor/arch/avx512/avx512_int32.hpp +++ b/include/RAJA/policy/tensor/arch/avx512/avx512_int32.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx512/avx512_int64.hpp b/include/RAJA/policy/tensor/arch/avx512/avx512_int64.hpp index 54c9c9d3d2..17f929c607 100644 --- a/include/RAJA/policy/tensor/arch/avx512/avx512_int64.hpp +++ b/include/RAJA/policy/tensor/arch/avx512/avx512_int64.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/avx512/traits.hpp b/include/RAJA/policy/tensor/arch/avx512/traits.hpp index 548cf9e35f..b2b5cf6731 100644 --- a/include/RAJA/policy/tensor/arch/avx512/traits.hpp +++ b/include/RAJA/policy/tensor/arch/avx512/traits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/cuda.hpp b/include/RAJA/policy/tensor/arch/cuda.hpp index 4d9f423b10..a840c63d85 100644 --- a/include/RAJA/policy/tensor/arch/cuda.hpp +++ b/include/RAJA/policy/tensor/arch/cuda.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/cuda/cuda_warp.hpp b/include/RAJA/policy/tensor/arch/cuda/cuda_warp.hpp index b4d308b8ad..e23eb92bed 100644 --- a/include/RAJA/policy/tensor/arch/cuda/cuda_warp.hpp +++ b/include/RAJA/policy/tensor/arch/cuda/cuda_warp.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/cuda/traits.hpp b/include/RAJA/policy/tensor/arch/cuda/traits.hpp index 4360d03c40..032517677c 100644 --- a/include/RAJA/policy/tensor/arch/cuda/traits.hpp +++ b/include/RAJA/policy/tensor/arch/cuda/traits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/hip.hpp b/include/RAJA/policy/tensor/arch/hip.hpp index 1cb04a57eb..6e76772a29 100644 --- a/include/RAJA/policy/tensor/arch/hip.hpp +++ b/include/RAJA/policy/tensor/arch/hip.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/hip/hip_wave.hpp b/include/RAJA/policy/tensor/arch/hip/hip_wave.hpp index f3d0f45131..74bbc2f077 100644 --- a/include/RAJA/policy/tensor/arch/hip/hip_wave.hpp +++ b/include/RAJA/policy/tensor/arch/hip/hip_wave.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/hip/traits.hpp b/include/RAJA/policy/tensor/arch/hip/traits.hpp index 01786440b1..4c4d959599 100644 --- a/include/RAJA/policy/tensor/arch/hip/traits.hpp +++ b/include/RAJA/policy/tensor/arch/hip/traits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/scalar.hpp b/include/RAJA/policy/tensor/arch/scalar.hpp index 27133a3a86..5e139f41f0 100644 --- a/include/RAJA/policy/tensor/arch/scalar.hpp +++ b/include/RAJA/policy/tensor/arch/scalar.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/scalar/scalar.hpp b/include/RAJA/policy/tensor/arch/scalar/scalar.hpp index ccd3e785ed..139c5d27a5 100644 --- a/include/RAJA/policy/tensor/arch/scalar/scalar.hpp +++ b/include/RAJA/policy/tensor/arch/scalar/scalar.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch/scalar/traits.hpp b/include/RAJA/policy/tensor/arch/scalar/traits.hpp index 576f4e6d08..dfeccbb86f 100644 --- a/include/RAJA/policy/tensor/arch/scalar/traits.hpp +++ b/include/RAJA/policy/tensor/arch/scalar/traits.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/arch_impl.hpp b/include/RAJA/policy/tensor/arch_impl.hpp index bf16636e71..e14451505a 100644 --- a/include/RAJA/policy/tensor/arch_impl.hpp +++ b/include/RAJA/policy/tensor/arch_impl.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/policy/tensor/policy.hpp b/include/RAJA/policy/tensor/policy.hpp index 7e5828a091..8618d543b2 100644 --- a/include/RAJA/policy/tensor/policy.hpp +++ b/include/RAJA/policy/tensor/policy.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/BitMask.hpp b/include/RAJA/util/BitMask.hpp index a667f26ec2..63f011b689 100644 --- a/include/RAJA/util/BitMask.hpp +++ b/include/RAJA/util/BitMask.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/CombiningAdapter.hpp b/include/RAJA/util/CombiningAdapter.hpp index 492e6fe28d..abe8197b93 100644 --- a/include/RAJA/util/CombiningAdapter.hpp +++ b/include/RAJA/util/CombiningAdapter.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/IndexLayout.hpp b/include/RAJA/util/IndexLayout.hpp new file mode 100644 index 0000000000..6bb308d375 --- /dev/null +++ b/include/RAJA/util/IndexLayout.hpp @@ -0,0 +1,169 @@ +/*! + ****************************************************************************** + * + * \file + * + * \brief RAJA header file defining the IndexLayout class and IndexList classes. + * + ****************************************************************************** + */ + +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +#ifndef RAJA_INDEXLAYOUT_HPP +#define RAJA_INDEXLAYOUT_HPP + +#include "RAJA/util/Layout.hpp" + +namespace RAJA +{ + +/*! +* DirectIndex struct contains call operator that returns the same index that was input +* +*/ +template +struct DirectIndex { + + IdxLin RAJA_INLINE RAJA_HOST_DEVICE constexpr operator()(const IdxLin idx) const + { + return idx; + } + +}; + +/*! +* IndexList struct stores a pointer to an array containing the index list. +* Its call operator returns the entry at the input location (idx) of its index list. +* +*/ +template +struct IndexList { + + IdxLin* index_list{nullptr}; + + IdxLin RAJA_INLINE RAJA_HOST_DEVICE constexpr operator()(const IdxLin idx) const + { + return index_list[idx]; + } + +}; + +/*! +* ConditionalIndexList struct stores a pointer to an array containing the index list. +* Its call operator returns the same index that was input if the index list is a nullptr, +* or otherwise returns the entry at the input location (idx) of its index list. +* +*/ +template +struct ConditionalIndexList { + + IdxLin* index_list{nullptr}; + + IdxLin RAJA_INLINE RAJA_HOST_DEVICE constexpr operator()(const IdxLin idx) const + { + if (index_list) { + return index_list[idx]; + } else { + return idx; + } + } + +}; + +namespace internal +{ + +template +struct IndexLayout_impl; + +template +struct IndexLayout_impl, IdxLin, IndexTypes...> { + using IndexRange = camp::idx_seq; + using IndexLinear = IdxLin; + using Base = RAJA::detail::LayoutBase_impl; + Base base_; + + static constexpr size_t n_dims = sizeof...(RangeInts); + + camp::tuple tuple; + + template + constexpr RAJA_INLINE IndexLayout_impl( + camp::tuple index_tuple_in, + Types... ns) + : base_{(ns)...}, + tuple(index_tuple_in) + { + } + + /*! + * Computes a linear space index from entries of index lists stored in tuple. + * This is accomplished through the inner product of the strides and the + * entry in the index list along each dimension. + * @param indices Indices in the n-dimensional space of this layout + * @return Linear space index. + */ + template + RAJA_INLINE RAJA_HOST_DEVICE constexpr IdxLin operator()( + Indices... indices) const + { + return sum( + (base_.strides[RangeInts] * camp::get(tuple)(indices))...); + } + +}; + +} // namespace internal + + +template +struct IndexLayout + : public internal::IndexLayout_impl, IdxLin, IndexTypes...> { + using Base = + internal::IndexLayout_impl, IdxLin, IndexTypes...>; + + using internal::IndexLayout_impl, + IdxLin, IndexTypes...>::IndexLayout_impl; + + constexpr RAJA_INLINE RAJA_HOST_DEVICE IndexLayout( + const internal::IndexLayout_impl, IdxLin, IndexTypes...>& + rhs) + : Base{rhs} + { + } + +}; + +/*! + * creates of a camp::tuple of index types + * (such as DirectIndex, IndexList, or ConditionalIndexList) + * + */ +template +auto make_index_tuple(IndexTypes... it) -> camp::tuple +{ + return camp::tuple(it...); +} + +/*! + * creates an index layout based on the input camp::tuple of index types + * + */ +template +auto make_index_layout( + camp::tuple index_tuple_in, + Types... ns) -> IndexLayout +{ + static_assert(sizeof...(Types) == sizeof...(IndexTypes), ""); + return IndexLayout(index_tuple_in, ns...); +} + +} + +#endif diff --git a/include/RAJA/util/KokkosPluginLoader.hpp b/include/RAJA/util/KokkosPluginLoader.hpp index 87974df537..c5060a0a96 100644 --- a/include/RAJA/util/KokkosPluginLoader.hpp +++ b/include/RAJA/util/KokkosPluginLoader.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/Layout.hpp b/include/RAJA/util/Layout.hpp index 06aaba6a43..948e37f498 100644 --- a/include/RAJA/util/Layout.hpp +++ b/include/RAJA/util/Layout.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/LocalArray.hpp b/include/RAJA/util/LocalArray.hpp index f1dbf2c2d9..50680101d4 100644 --- a/include/RAJA/util/LocalArray.hpp +++ b/include/RAJA/util/LocalArray.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/OffsetLayout.hpp b/include/RAJA/util/OffsetLayout.hpp index 9248dd1579..827515062e 100644 --- a/include/RAJA/util/OffsetLayout.hpp +++ b/include/RAJA/util/OffsetLayout.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/Operators.hpp b/include/RAJA/util/Operators.hpp index a3b7176cea..d76b862c22 100644 --- a/include/RAJA/util/Operators.hpp +++ b/include/RAJA/util/Operators.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -468,7 +468,7 @@ struct maximum : public detail::binary_function, RAJA_HOST_DEVICE constexpr Ret operator()(const Arg1& lhs, const Arg2& rhs) const { - return (lhs >= rhs) ? lhs : rhs; + return (lhs < rhs) ? rhs : lhs; } RAJA_HOST_DEVICE static constexpr Ret identity() { diff --git a/include/RAJA/util/Permutations.hpp b/include/RAJA/util/Permutations.hpp index c6ac31db39..e79e9f2830 100644 --- a/include/RAJA/util/Permutations.hpp +++ b/include/RAJA/util/Permutations.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/PermutedLayout.hpp b/include/RAJA/util/PermutedLayout.hpp index 77194ebc76..5bb176215b 100644 --- a/include/RAJA/util/PermutedLayout.hpp +++ b/include/RAJA/util/PermutedLayout.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/PluginContext.hpp b/include/RAJA/util/PluginContext.hpp index 1b71f41512..996836e397 100644 --- a/include/RAJA/util/PluginContext.hpp +++ b/include/RAJA/util/PluginContext.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/PluginLinker.hpp b/include/RAJA/util/PluginLinker.hpp index cd29080bbd..e5b77bd027 100644 --- a/include/RAJA/util/PluginLinker.hpp +++ b/include/RAJA/util/PluginLinker.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/PluginOptions.hpp b/include/RAJA/util/PluginOptions.hpp index de9775ca12..f0b6a35507 100644 --- a/include/RAJA/util/PluginOptions.hpp +++ b/include/RAJA/util/PluginOptions.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/PluginStrategy.hpp b/include/RAJA/util/PluginStrategy.hpp index ca1d9d1652..3935559bba 100644 --- a/include/RAJA/util/PluginStrategy.hpp +++ b/include/RAJA/util/PluginStrategy.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/Registry.hpp b/include/RAJA/util/Registry.hpp index a21e03fd54..579481a6ed 100644 --- a/include/RAJA/util/Registry.hpp +++ b/include/RAJA/util/Registry.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/RuntimePluginLoader.hpp b/include/RAJA/util/RuntimePluginLoader.hpp index 0ad0aed5b6..3e7fbb165f 100644 --- a/include/RAJA/util/RuntimePluginLoader.hpp +++ b/include/RAJA/util/RuntimePluginLoader.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/SoAArray.hpp b/include/RAJA/util/SoAArray.hpp index b4bafd683d..6828bc3b1a 100644 --- a/include/RAJA/util/SoAArray.hpp +++ b/include/RAJA/util/SoAArray.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/SoAPtr.hpp b/include/RAJA/util/SoAPtr.hpp index 193b935410..616b8d21d4 100644 --- a/include/RAJA/util/SoAPtr.hpp +++ b/include/RAJA/util/SoAPtr.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/Span.hpp b/include/RAJA/util/Span.hpp index 8720fd47bc..2da2e0164c 100644 --- a/include/RAJA/util/Span.hpp +++ b/include/RAJA/util/Span.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/StaticLayout.hpp b/include/RAJA/util/StaticLayout.hpp index 7b47f95681..8d27980f83 100644 --- a/include/RAJA/util/StaticLayout.hpp +++ b/include/RAJA/util/StaticLayout.hpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/Timer.hpp b/include/RAJA/util/Timer.hpp index a215f1e8b7..8c23a2c74d 100644 --- a/include/RAJA/util/Timer.hpp +++ b/include/RAJA/util/Timer.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/TypeConvert.hpp b/include/RAJA/util/TypeConvert.hpp index db00cbc4de..1486207712 100644 --- a/include/RAJA/util/TypeConvert.hpp +++ b/include/RAJA/util/TypeConvert.hpp @@ -13,7 +13,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/TypedViewBase.hpp b/include/RAJA/util/TypedViewBase.hpp index 93bdca06cc..0d5bed35d6 100644 --- a/include/RAJA/util/TypedViewBase.hpp +++ b/include/RAJA/util/TypedViewBase.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/View.hpp b/include/RAJA/util/View.hpp index e0a505e689..fcaee67f98 100644 --- a/include/RAJA/util/View.hpp +++ b/include/RAJA/util/View.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -24,6 +24,7 @@ #include "RAJA/pattern/atomic.hpp" +#include "RAJA/util/IndexLayout.hpp" #include "RAJA/util/Layout.hpp" #include "RAJA/util/OffsetLayout.hpp" #include "RAJA/util/TypedViewBase.hpp" @@ -69,6 +70,13 @@ RAJA_INLINE View > make_view( return View >(ptr, 1); } +template +RAJA_INLINE View > make_index_view( + ValueType *ptr, IndexLayout index_layout) +{ + return View >(ptr, index_layout); +} + // select certain indices from a tuple, given a curated index sequence // returns linear index of layout(ar...) diff --git a/include/RAJA/util/align.hpp b/include/RAJA/util/align.hpp index 1bd62be533..7103ecb152 100644 --- a/include/RAJA/util/align.hpp +++ b/include/RAJA/util/align.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/basic_mempool.hpp b/include/RAJA/util/basic_mempool.hpp index 8d92295dda..61624e0725 100644 --- a/include/RAJA/util/basic_mempool.hpp +++ b/include/RAJA/util/basic_mempool.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/camp_aliases.hpp b/include/RAJA/util/camp_aliases.hpp index 4419c357e8..c747ac64a0 100644 --- a/include/RAJA/util/camp_aliases.hpp +++ b/include/RAJA/util/camp_aliases.hpp @@ -14,7 +14,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/concepts.hpp b/include/RAJA/util/concepts.hpp index e5ac89ecca..4372993949 100644 --- a/include/RAJA/util/concepts.hpp +++ b/include/RAJA/util/concepts.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/macros.hpp b/include/RAJA/util/macros.hpp index 84f06cd7d9..fc83f8999b 100644 --- a/include/RAJA/util/macros.hpp +++ b/include/RAJA/util/macros.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -127,6 +127,18 @@ RAJA_HOST_DEVICE RAJA_INLINE void RAJA_UNUSED_VAR(T &&...) noexcept #define RAJA_DIVIDE_CEILING_INT(dividend, divisor) \ (((dividend) + (divisor)-1) / (divisor)) +/*! + * OpenMP helper for the new RAJA reducer interface. + * Used in forall and launch + */ +#if defined(RAJA_ENABLE_OPENMP) +#define RAJA_OMP_DECLARE_REDUCTION_COMBINE \ + _Pragma(" omp declare reduction( combine \ + : typename std::remove_reference::type \ + : RAJA::expt::ParamMultiplexer::combine(omp_out, omp_in) ) ")\ + //initializer(omp_priv = omp_in) ") +#endif + RAJA_HOST_DEVICE inline void RAJA_ABORT_OR_THROW(const char *str) diff --git a/include/RAJA/util/mutex.hpp b/include/RAJA/util/mutex.hpp index 19bf64d1a4..a955b27915 100644 --- a/include/RAJA/util/mutex.hpp +++ b/include/RAJA/util/mutex.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/plugins.hpp b/include/RAJA/util/plugins.hpp index 25c8c35f63..d5f42efde0 100644 --- a/include/RAJA/util/plugins.hpp +++ b/include/RAJA/util/plugins.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/resource.hpp b/include/RAJA/util/resource.hpp index eb8effc292..a54ce434a2 100644 --- a/include/RAJA/util/resource.hpp +++ b/include/RAJA/util/resource.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -132,22 +132,22 @@ namespace RAJA }; template<> - struct get_resource<::RAJA::policy::sycl::omp_target_parallel_for_exec_nt>{ + struct get_resource<::RAJA::policy::omp::omp_target_parallel_for_exec_nt>{ using type = camp::resources::Omp; }; template - struct get_resource<::RAJA::policy::sycl::omp_target_parallel_for_exec>{ + struct get_resource<::RAJA::policy::omp::omp_target_parallel_for_exec>{ using type = camp::resources::Omp; }; template - struct get_resource>{ + struct get_resource>{ using type = camp::resources::Omp; }; template - struct get_resource>>{ + struct get_resource>>{ using type = camp::resources::Omp; }; #endif diff --git a/include/RAJA/util/sort.hpp b/include/RAJA/util/sort.hpp index 47ac4bceac..f1eebfc282 100644 --- a/include/RAJA/util/sort.hpp +++ b/include/RAJA/util/sort.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/types.hpp b/include/RAJA/util/types.hpp index 2e653a2411..811f681b9b 100644 --- a/include/RAJA/util/types.hpp +++ b/include/RAJA/util/types.hpp @@ -11,7 +11,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/zip.hpp b/include/RAJA/util/zip.hpp index 6ee38ee864..1beefeb9cc 100644 --- a/include/RAJA/util/zip.hpp +++ b/include/RAJA/util/zip.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/include/RAJA/util/zip_tuple.hpp b/include/RAJA/util/zip_tuple.hpp index 5da5633e33..d631d4714b 100644 --- a/include/RAJA/util/zip_tuple.hpp +++ b/include/RAJA/util/zip_tuple.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/CMakeLists.txt b/reproducers/CMakeLists.txt index 176102ea84..9d353cbb77 100644 --- a/reproducers/CMakeLists.txt +++ b/reproducers/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/clangcuda/CMakeLists.txt b/reproducers/clangcuda/CMakeLists.txt index e6cca9a09e..8609f005e9 100644 --- a/reproducers/clangcuda/CMakeLists.txt +++ b/reproducers/clangcuda/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/clangcuda/reproducer-shuffle.cpp b/reproducers/clangcuda/reproducer-shuffle.cpp index d090fe1080..de50a65e3d 100644 --- a/reproducers/clangcuda/reproducer-shuffle.cpp +++ b/reproducers/clangcuda/reproducer-shuffle.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/openmp-target/CMakeLists.txt b/reproducers/openmp-target/CMakeLists.txt index 95fc10cc96..7a3434c890 100644 --- a/reproducers/openmp-target/CMakeLists.txt +++ b/reproducers/openmp-target/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/openmp-target/reproducer-openmptarget-issue1.cpp b/reproducers/openmp-target/reproducer-openmptarget-issue1.cpp index 0d8fe98a53..f3f3575c67 100644 --- a/reproducers/openmp-target/reproducer-openmptarget-issue1.cpp +++ b/reproducers/openmp-target/reproducer-openmptarget-issue1.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/openmp-target/reproducer-openmptarget-issue2.cpp b/reproducers/openmp-target/reproducer-openmptarget-issue2.cpp index e2045414e8..8f4c2bff89 100644 --- a/reproducers/openmp-target/reproducer-openmptarget-issue2.cpp +++ b/reproducers/openmp-target/reproducer-openmptarget-issue2.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/openmp-target/reproducer-openmptarget-issue3.cpp b/reproducers/openmp-target/reproducer-openmptarget-issue3.cpp index 5aa1e8c3f4..05154adc01 100644 --- a/reproducers/openmp-target/reproducer-openmptarget-issue3.cpp +++ b/reproducers/openmp-target/reproducer-openmptarget-issue3.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/reproducers/openmp-target/reproducer-openmptarget.cpp b/reproducers/openmp-target/reproducer-openmptarget.cpp index b201f12b5c..963478c7d6 100644 --- a/reproducers/openmp-target/reproducer-openmptarget.cpp +++ b/reproducers/openmp-target/reproducer-openmptarget.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/alcf-builds/cooley_clang5.0.sh b/scripts/alcf-builds/cooley_clang5.0.sh index d535cfe2a9..a7d57b46ed 100755 --- a/scripts/alcf-builds/cooley_clang5.0.sh +++ b/scripts/alcf-builds/cooley_clang5.0.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/alcf-builds/cooley_gcc7.1.0.sh b/scripts/alcf-builds/cooley_gcc7.1.0.sh index 759de1d452..1b629684cc 100755 --- a/scripts/alcf-builds/cooley_gcc7.1.0.sh +++ b/scripts/alcf-builds/cooley_gcc7.1.0.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/alcf-builds/cooley_nvcc9.1_clang4.0.sh b/scripts/alcf-builds/cooley_nvcc9.1_clang4.0.sh index 7d36bf5b9f..ff3e9e6437 100755 --- a/scripts/alcf-builds/cooley_nvcc9.1_clang4.0.sh +++ b/scripts/alcf-builds/cooley_nvcc9.1_clang4.0.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/alcf-builds/sycl.sh b/scripts/alcf-builds/sycl.sh index ed5c6fa4bd..e6020f44b1 100755 --- a/scripts/alcf-builds/sycl.sh +++ b/scripts/alcf-builds/sycl.sh @@ -36,7 +36,7 @@ cmake \ -DCMAKE_LINKER=clang++ \ -DCMAKE_CXX_STANDARD=17 \ -DBLT_CXX_STD=c++17 \ - -DENABLE_TESTS=Off \ + -DENABLE_TESTS=On \ -DENABLE_EXAMPLES=On \ "$@" \ .. diff --git a/scripts/alcf-builds/theta_intel18.sh b/scripts/alcf-builds/theta_intel18.sh index 1d4b8b8467..1739aadaa6 100755 --- a/scripts/alcf-builds/theta_intel18.sh +++ b/scripts/alcf-builds/theta_intel18.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/gitlab/build_and_test.sh b/scripts/gitlab/build_and_test.sh index 065490a916..ec7c8a6408 100755 --- a/scripts/gitlab/build_and_test.sh +++ b/scripts/gitlab/build_and_test.sh @@ -7,7 +7,7 @@ then fi ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC and RAJA +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC and RAJA # project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -21,11 +21,11 @@ hostname="$(hostname)" truehostname=${hostname//[0-9]/} project_dir="$(pwd)" -build_root=${BUILD_ROOT:-""} hostconfig=${HOST_CONFIG:-""} spec=${SPEC:-""} module_list=${MODULE_LIST:-""} job_unique_id=${CI_JOB_ID:-""} +use_dev_shm=${USE_DEV_SHM:-true} if [[ -n ${module_list} ]] then @@ -37,7 +37,7 @@ fi prefix="" -if [[ -d /dev/shm ]] +if [[ -d /dev/shm && ${use_dev_shm} == true ]] then prefix="/dev/shm/${hostname}" if [[ -z ${job_unique_id} ]]; then @@ -50,6 +50,10 @@ then prefix="${prefix}-${job_unique_id}" mkdir -p ${prefix} +else + # We set the prefix in the parent directory so that spack dependencies are not installed inside the source tree. + prefix="$(pwd)/../spack-and-build-root" + mkdir -p ${prefix} fi # Dependencies @@ -69,20 +73,15 @@ then exit 1 fi - prefix_opt="" + prefix_opt="--prefix=${prefix}" - if [[ -d /dev/shm ]] - then - prefix_opt="--prefix=${prefix}" - - # We force Spack to put all generated files (cache and configuration of - # all sorts) in a unique location so that there can be no collision - # with existing or concurrent Spack. - spack_user_cache="${prefix}/spack-user-cache" - export SPACK_DISABLE_LOCAL_CONFIG="" - export SPACK_USER_CACHE_PATH="${spack_user_cache}" - mkdir -p ${spack_user_cache} - fi + # We force Spack to put all generated files (cache and configuration of + # all sorts) in a unique location so that there can be no collision + # with existing or concurrent Spack. + spack_user_cache="${prefix}/spack-user-cache" + export SPACK_DISABLE_LOCAL_CONFIG="" + export SPACK_USER_CACHE_PATH="${spack_user_cache}" + mkdir -p ${spack_user_cache} ./scripts/uberenv/uberenv.py --spec="${spec}" ${prefix_opt} @@ -121,17 +120,8 @@ fi hostconfig=$(basename ${hostconfig_path}) # Build Directory -if [[ -z ${build_root} ]] -then - if [[ -d /dev/shm ]] - then - build_root="${prefix}" - else - build_root="$(pwd)" - fi -else - build_root="${build_root}" -fi +# When using /dev/shm, we use prefix for both spack builds and source build, unless BUILD_ROOT was defined +build_root=${BUILD_ROOT:-"${prefix}"} build_dir="${build_root}/build_${hostconfig//.cmake/}" install_dir="${build_root}/install_${hostconfig//.cmake/}" @@ -154,7 +144,7 @@ then echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" # Map CPU core allocations - declare -A core_counts=(["lassen"]=40 ["ruby"]=28 ["corona"]=32 ["rzansel"]=48 ["tioga"]=32) + declare -A core_counts=(["lassen"]=40 ["ruby"]=28 ["poodle"]=28 ["corona"]=32 ["rzansel"]=48 ["tioga"]=32) # If building, then delete everything first # NOTE: 'cmake --build . -j core_counts' attempts to reduce individual build resources. @@ -164,7 +154,6 @@ then mkdir -p ${build_dir} && cd ${build_dir} date - if [[ "${truehostname}" == "corona" || "${truehostname}" == "tioga" ]] then module unload rocm @@ -175,16 +164,19 @@ then ${project_dir} if ! $cmake_exe --build . -j ${core_counts[$truehostname]} then - echo "ERROR: compilation failed, building with verbose output..." + echo "[Error]: compilation failed, building with verbose output..." + echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" + echo "~~~~~ Running make VERBOSE=1" + echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" $cmake_exe --build . --verbose -j 1 else - make install + $cmake_exe --install . fi + date echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" echo "~~~~~ RAJA built" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - date fi # Test @@ -197,7 +189,7 @@ then if [[ ! -d ${build_dir} ]] then - echo "ERROR: Build directory not found : ${build_dir}" && exit 1 + echo "[Error]: Build directory not found : ${build_dir}" && exit 1 fi cd ${build_dir} @@ -209,7 +201,7 @@ then no_test_str="No tests were found!!!" if [[ "$(tail -n 1 tests_output.txt)" == "${no_test_str}" ]] then - echo "ERROR: No tests were found" && exit 1 + echo "[Error]: No tests were found" && exit 1 fi echo "Copying Testing xml reports for export" @@ -219,26 +211,26 @@ then if grep -q "Errors while running CTest" ./tests_output.txt then - echo "ERROR: failure(s) while running CTest" && exit 1 + echo "[Error]: failure(s) while running CTest" && exit 1 fi if grep -q -i "ENABLE_HIP.*ON" ${hostconfig_path} then - echo "WARNING: not testing install with HIP" + echo "[Warning]: not testing install with HIP" else if [[ ! -d ${install_dir} ]] then - echo "ERROR: install directory not found : ${install_dir}" && exit 1 + echo "[Error]: install directory not found : ${install_dir}" && exit 1 fi cd ${install_dir}/examples/RAJA/using-with-cmake mkdir build && cd build if ! $cmake_exe -C ../host-config.cmake ..; then - echo "ERROR: running $cmake_exe for using-with-cmake test" && exit 1 + echo "[Error]: running $cmake_exe for using-with-cmake test" && exit 1 fi if ! make; then - echo "ERROR: running make for using-with-cmake test" && exit 1 + echo "[Error]: running make for using-with-cmake test" && exit 1 fi fi @@ -246,13 +238,13 @@ then echo "~~~~~ RAJA tests complete" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" date - - # echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - # echo "~~~~~ CLEAN UP" - # echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" - # make clean fi +echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" +echo "~~~~~ CLEAN UP" +echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" +make clean + echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" echo "~~~~~ Build and test completed" echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~" diff --git a/scripts/lc-builds/blueos_clang.sh b/scripts/lc-builds/blueos_clang.sh index cd09cdf6ee..a8a4ce725d 100755 --- a/scripts/lc-builds/blueos_clang.sh +++ b/scripts/lc-builds/blueos_clang.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_clang_omptarget.sh b/scripts/lc-builds/blueos_clang_omptarget.sh index e1e8b8cbb7..169b43e92c 100755 --- a/scripts/lc-builds/blueos_clang_omptarget.sh +++ b/scripts/lc-builds/blueos_clang_omptarget.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_gcc.sh b/scripts/lc-builds/blueos_gcc.sh index fda3d5723f..008b3bb3fa 100755 --- a/scripts/lc-builds/blueos_gcc.sh +++ b/scripts/lc-builds/blueos_gcc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_nvcc_clang.sh b/scripts/lc-builds/blueos_nvcc_clang.sh index 47c7519274..4d55ef1b3a 100755 --- a/scripts/lc-builds/blueos_nvcc_clang.sh +++ b/scripts/lc-builds/blueos_nvcc_clang.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_nvcc_gcc.sh b/scripts/lc-builds/blueos_nvcc_gcc.sh index b5dc1daf1f..5c3630e4b3 100755 --- a/scripts/lc-builds/blueos_nvcc_gcc.sh +++ b/scripts/lc-builds/blueos_nvcc_gcc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_nvcc_xl.sh b/scripts/lc-builds/blueos_nvcc_xl.sh index 82d2bd1ee6..a57764116b 100755 --- a/scripts/lc-builds/blueos_nvcc_xl.sh +++ b/scripts/lc-builds/blueos_nvcc_xl.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_pgi.sh b/scripts/lc-builds/blueos_pgi.sh index d0e64526b3..0284432a3f 100755 --- a/scripts/lc-builds/blueos_pgi.sh +++ b/scripts/lc-builds/blueos_pgi.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_xl.sh b/scripts/lc-builds/blueos_xl.sh index c6dbc25077..d097df281a 100755 --- a/scripts/lc-builds/blueos_xl.sh +++ b/scripts/lc-builds/blueos_xl.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/blueos_xl_omptarget.sh b/scripts/lc-builds/blueos_xl_omptarget.sh index b8cbbc5f09..36883b9b81 100755 --- a/scripts/lc-builds/blueos_xl_omptarget.sh +++ b/scripts/lc-builds/blueos_xl_omptarget.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/corona_sycl.sh b/scripts/lc-builds/corona_sycl.sh index 6f344979fb..f28961b6b4 100755 --- a/scripts/lc-builds/corona_sycl.sh +++ b/scripts/lc-builds/corona_sycl.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/toss3_clang.sh b/scripts/lc-builds/toss3_clang.sh deleted file mode 100755 index 1161392cf9..0000000000 --- a/scripts/lc-builds/toss3_clang.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -if [ "$1" == "" ]; then - echo - echo "You must pass a compiler version number to script. For example," - echo " toss3_clang.sh 10.0.1" - exit -fi - -COMP_VER=$1 -shift 1 - -BUILD_SUFFIX=lc_toss3-clang-${COMP_VER} - -echo -echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" -echo "Configuration extra arguments:" -echo " $@" -echo - -rm -rf build_${BUILD_SUFFIX} 2>/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - -module load cmake/3.20.2 - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_CXX_COMPILER=/usr/tce/packages/clang/clang-${COMP_VER}/bin/clang++ \ - -DBLT_CXX_STD=c++14 \ - -C ../host-configs/lc-builds/toss3/clang_X.cmake \ - -DENABLE_OPENMP=On \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. diff --git a/scripts/lc-builds/toss3_clangcuda6.0.0_nvcc8.0.sh b/scripts/lc-builds/toss3_clangcuda6.0.0_nvcc8.0.sh deleted file mode 100755 index 47e890ea62..0000000000 --- a/scripts/lc-builds/toss3_clangcuda6.0.0_nvcc8.0.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -BUILD_SUFFIX=lc_toss3-clangcuda-6.0.0_nvcc-8.0 - -rm -rf build_${BUILD_SUFFIX} 2>/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - -module load cmake/3.20.2 - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DBLT_CXX_STD=c++14 \ - -C ../host-configs/lc-builds/toss3/clangcuda_6_0_0_nvcc_8_0.cmake \ - -DENABLE_OPENMP=Off \ - -DENABLE_CLANG_CUDA=On \ - -DBLT_CLANG_CUDA_ARCH=sm_35 \ - -DENABLE_CUDA=On \ - -DCMAKE_CUDA_ARCHITECTURES=35 \ - -DCUDA_TOOLKIT_ROOT_DIR=/usr/tce/packages/cuda/cuda-8.0 \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. diff --git a/scripts/lc-builds/toss3_gcc.sh b/scripts/lc-builds/toss3_gcc.sh deleted file mode 100755 index 76d15a12f2..0000000000 --- a/scripts/lc-builds/toss3_gcc.sh +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -if [ "$1" == "" ]; then - echo - echo "You must pass a compiler version number to script. For example," - echo " toss3_gcc.sh 8.3.1" - exit -fi - -COMP_VER=$1 -shift 1 - -BUILD_SUFFIX=lc_toss3-gcc-${COMP_VER} - -echo -echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" -echo "Configuration extra arguments:" -echo " $@" -echo - -rm -rf build_${BUILD_SUFFIX} 2>/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - -module load cmake/3.20.2 - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_CXX_COMPILER=/usr/tce/packages/gcc/gcc-${COMP_VER}/bin/g++ \ - -DBLT_CXX_STD=c++14 \ - -C ../host-configs/lc-builds/toss3/gcc_X.cmake \ - -DENABLE_OPENMP=On \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. diff --git a/scripts/lc-builds/toss3_hipcc.sh b/scripts/lc-builds/toss3_hipcc.sh deleted file mode 100755 index 0623fb50cd..0000000000 --- a/scripts/lc-builds/toss3_hipcc.sh +++ /dev/null @@ -1,91 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -if [[ $# -lt 2 ]]; then - echo - echo "You must pass 2 or more arguments to the script (in this order): " - echo " 1) compiler version number" - echo " 2) HIP compute architecture" - echo " 3...) optional arguments to cmake" - echo - echo "For example: " - echo " toss3_hipcc.sh 4.1.0 gfx906" - exit -fi - -COMP_VER=$1 -COMP_ARCH=$2 -shift 2 - -HIP_CLANG_FLAGS="--offload-arch=${COMP_ARCH}" -HOSTCONFIG="hip_3_X" - -if [[ ${COMP_VER} == 4.5.* ]] -then - HIP_CLANG_FLAGS="${HIP_CLANG_FLAGS} -mllvm -amdgpu-fixed-function-abi=1" - HOSTCONFIG="hip_4_5_link_X" -elif [[ ${COMP_VER} == 4.* ]] -then - HOSTCONFIG="hip_4_link_X" -elif [[ ${COMP_VER} == 3.* ]] -then - HOSTCONFIG="hip_3_X" -else - echo "Unknown hip version, using ${HOSTCONFIG} host-config" -fi - -BUILD_SUFFIX=lc_toss3-hipcc-${COMP_VER}-${COMP_ARCH} - -echo -echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" -echo "Configuration extra arguments:" -echo " $@" -echo - -rm -rf build_${BUILD_SUFFIX} >/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - - -module load cmake/3.23.1 - -# unload rocm to avoid configuration problems where the loaded rocm and COMP_VER -# are inconsistent causing the rocprim from the module to be used unexpectedly -module unload rocm - - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DROCM_ROOT_DIR="/opt/rocm-${COMP_VER}" \ - -DHIP_ROOT_DIR="/opt/rocm-${COMP_VER}/hip" \ - -DHIP_CLANG_PATH=/opt/rocm-${COMP_VER}/llvm/bin \ - -DCMAKE_C_COMPILER=/opt/rocm-${COMP_VER}/llvm/bin/clang \ - -DCMAKE_CXX_COMPILER=/opt/rocm-${COMP_VER}/llvm/bin/clang++ \ - -DHIP_CLANG_FLAGS="${HIP_CLANG_FLAGS}" \ - -DBLT_CXX_STD=c++14 \ - -C "../host-configs/lc-builds/toss3/${HOSTCONFIG}.cmake" \ - -DENABLE_HIP=ON \ - -DENABLE_OPENMP=ON \ - -DENABLE_CUDA=OFF \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. - -echo -echo "***********************************************************************" -echo -echo "cd into directory build_${BUILD_SUFFIX} and run make to build RAJA" -echo -echo " Please note that you have to have a consistent build environment" -echo " when you make RAJA as cmake may reconfigure; unload the rocm module" -echo " or load the appropriate rocm module (${COMP_VER}) when building." -echo -echo " module unload rocm" -echo " srun -n1 make" -echo -echo "***********************************************************************" diff --git a/scripts/lc-builds/toss3_icpc.sh b/scripts/lc-builds/toss3_icpc.sh deleted file mode 100755 index 42f2177f9d..0000000000 --- a/scripts/lc-builds/toss3_icpc.sh +++ /dev/null @@ -1,63 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -if [ "$1" == "" ]; then - echo - echo "You must pass a compiler version number to script. For example," - echo " toss3_icpc.sh 19.1.0" - exit -fi - -COMP_VER=$1 -shift 1 - -COMP_MAJOR_VER=${COMP_VER:0:2} -GCC_HEADER_VER=7 -USE_TBB=Off - -if [ ${COMP_MAJOR_VER} -gt 18 ] -then - GCC_HEADER_VER=8 -fi - -if [ ${COMP_MAJOR_VER} -lt 18 ] -then - USE_TBB=Off -fi - -BUILD_SUFFIX=lc_toss3-icpc-${COMP_VER} - -echo -echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" -echo "Configuration extra arguments:" -echo " $@" -echo - -rm -rf build_${BUILD_SUFFIX} 2>/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - -module load cmake/3.20.2 - -## -# CMake option -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off used to speed up compile -# times at a potential cost of slower 'forall' execution. -## - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_CXX_COMPILER=/usr/tce/packages/intel/intel-${COMP_VER}/bin/icpc \ - -DCMAKE_C_COMPILER=/usr/tce/packages/intel/intel-${COMP_VER}/bin/icc \ - -DBLT_CXX_STD=c++14 \ - -C ../host-configs/lc-builds/toss3/icpc_X_gcc${GCC_HEADER_VER}headers.cmake \ - -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off \ - -DENABLE_OPENMP=On \ - -DRAJA_ENABLE_TBB=${USE_TBB} \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. diff --git a/scripts/lc-builds/toss3_icpx.sh b/scripts/lc-builds/toss3_icpx.sh deleted file mode 100755 index efb9bc5fbc..0000000000 --- a/scripts/lc-builds/toss3_icpx.sh +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -if [ "$1" == "" ]; then - echo - echo "You must pass a compiler version number to script. For example," - echo " toss3_oneapi.sh 2022.2" -fi - -COMP_VER=$1 -shift 1 - -USE_TBB=Off - -BUILD_SUFFIX=lc_toss3-oneapi-${COMP_VER} - -echo -echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" -echo "Configuration extra arguments:" -echo " $@" -echo - -rm -rf build_${BUILD_SUFFIX} 2>/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - -module load cmake/3.20.2 - -## -# CMake option -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off used to speed up compile -# times at a potential cost of slower 'forall' execution. -## - -source /usr/tce/packages/oneapi/oneapi-${COMP_VER}/setvars.sh - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_CXX_COMPILER=/usr/tce/packages/intel/intel-oneapi.${COMP_VER}/bin/icpx \ - -DCMAKE_C_COMPILER=/usr/tce/packages/intel/intel-oneapi.${COMP_VER}/bin/icx \ - -DBLT_CXX_STD=c++14 \ - -C ../host-configs/lc-builds/toss3/oneapi_X.cmake \ - -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off \ - -DENABLE_OPENMP=On \ - -DRAJA_ENABLE_TBB=${USE_TBB} \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. diff --git a/scripts/lc-builds/toss3_pgi.sh b/scripts/lc-builds/toss3_pgi.sh deleted file mode 100755 index 2ea2d17dbf..0000000000 --- a/scripts/lc-builds/toss3_pgi.sh +++ /dev/null @@ -1,42 +0,0 @@ -#!/usr/bin/env bash - -############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -# and RAJA project contributors. See the RAJA/LICENSE file for details. -# -# SPDX-License-Identifier: (BSD-3-Clause) -############################################################################### - -if [ "$1" == "" ]; then - echo - echo "You must pass a compiler version number to script. For example," - echo " toss3_pgi.sh 20.1" - exit -fi - -COMP_VER=$1 -shift 1 - -BUILD_SUFFIX=lc_toss3-pgi-${COMP_VER} - -echo -echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" -echo "Configuration extra arguments:" -echo " $@" -echo - -rm -rf build_${BUILD_SUFFIX} 2>/dev/null -mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} - -module load cmake/3.20.2 - -cmake \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_CXX_COMPILER=/usr/tce/packages/pgi/pgi-${COMP_VER}/bin/pgc++ \ - -DCMAKE_C_COMPILER=/usr/tce/packages/pgi/pgi-${COMP_VER}/bin/pgcc \ - -DBLT_CXX_STD=c++14 \ - -C ../host-configs/lc-builds/toss3/pgi_X.cmake \ - -DENABLE_OPENMP=On \ - -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ - "$@" \ - .. diff --git a/scripts/lc-builds/toss4_amdclang.sh b/scripts/lc-builds/toss4_amdclang.sh index 8487307acf..06ba0b4dd8 100755 --- a/scripts/lc-builds/toss4_amdclang.sh +++ b/scripts/lc-builds/toss4_amdclang.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -9,7 +9,7 @@ if [[ $# -lt 2 ]]; then echo - echo "You must pass 2 or more arguments to the script (in this order): " + echo "You must pass 2 or more arguments to the script (in the following order): " echo " 1) compiler version number" echo " 2) HIP compute architecture" echo " 3...) optional arguments to cmake" diff --git a/scripts/lc-builds/toss4_amdclang_asan.sh b/scripts/lc-builds/toss4_amdclang_asan.sh index c7011db1a0..071b88f9ac 100755 --- a/scripts/lc-builds/toss4_amdclang_asan.sh +++ b/scripts/lc-builds/toss4_amdclang_asan.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -15,7 +15,7 @@ if [[ $# -lt 2 ]]; then echo " 3...) optional arguments to cmake" echo echo "For example: " - echo " toss4_amdclang.sh 4.1.0 gfx906" + echo " toss4_amdclang_asan.sh 5.7.0 gfx90a" exit fi @@ -36,13 +36,16 @@ else echo "Unknown hip version, using ${HOSTCONFIG} host-config" fi -BUILD_SUFFIX=lc_toss4-amdclang-${COMP_VER}-${COMP_ARCH} +BUILD_SUFFIX=lc_toss4-amdclang-${COMP_VER}-${COMP_ARCH}-asan echo -echo "Creating build directory ${BUILD_SUFFIX} and generating configuration in it" +echo "Creating build directory build_${BUILD_SUFFIX} and generating configuration in it" echo "Configuration extra arguments:" echo " $@" echo +echo "To get cmake to work you may have to configure with" +echo " -DHIP_PLATFORM=amd" +echo echo "To use fp64 HW atomics you must configure with these options when using gfx90a and hip >= 5.2" echo " -DCMAKE_CXX_FLAGS=\"-munsafe-fp-atomics\"" echo @@ -55,19 +58,25 @@ module load cmake/3.23.1 # unload rocm to avoid configuration problems where the loaded rocm and COMP_VER # are inconsistent causing the rocprim from the module to be used unexpectedly -module unload rocm +# module unload rocm +if [[ ${COMP_VER} =~ .*magic.* ]]; then + ROCM_PATH="/usr/tce/packages/rocmcc/rocmcc-${COMP_VER}" +else + ROCM_PATH="/usr/tce/packages/rocmcc-tce/rocmcc-${COMP_VER}" +fi cmake \ -DCMAKE_BUILD_TYPE=Release \ - -DROCM_ROOT_DIR="/opt/rocm-${COMP_VER}" \ - -DHIP_ROOT_DIR="/opt/rocm-${COMP_VER}/hip" \ - -DHIP_PATH=/opt/rocm-${COMP_VER}/llvm/bin \ - -DCMAKE_C_COMPILER=/opt/rocm-${COMP_VER}/llvm/bin/amdclang \ - -DCMAKE_CXX_COMPILER=/opt/rocm-${COMP_VER}/llvm/bin/amdclang++ \ + -DROCM_ROOT_DIR="${ROCM_PATH}" \ + -DHIP_ROOT_DIR="${ROCM_PATH}/hip" \ + -DHIP_PATH=${ROCM_PATH}/llvm/bin \ + -DCMAKE_C_COMPILER=${ROCM_PATH}/llvm/bin/amdclang \ + -DCMAKE_CXX_COMPILER=${ROCM_PATH}/llvm/bin/amdclang++ \ -DCMAKE_HIP_ARCHITECTURES="${COMP_ARCH}:xnack+" \ -DGPU_TARGETS="${COMP_ARCH}:xnack+" \ -DAMDGPU_TARGETS="${COMP_ARCH}:xnack+" \ + -DCMAKE_C_FLAGS="-fsanitize=address -shared-libsan" \ -DCMAKE_CXX_FLAGS="-fsanitize=address -shared-libsan" \ -DBLT_CXX_STD=c++14 \ -C "../host-configs/lc-builds/toss4/${HOSTCONFIG}.cmake" \ @@ -84,15 +93,14 @@ echo echo "cd into directory build_${BUILD_SUFFIX} and run make to build RAJA" echo echo " Please note that you have to have a consistent build environment" -echo " when you make RAJA as cmake may reconfigure; unload the rocm module" -echo " or load the appropriate rocm module (${COMP_VER}) when building." +echo " when you make RAJA as cmake may reconfigure; load the appropriate" +echo " rocm and rocmcc modules (${COMP_VER}) when building." echo -echo " module unload rocm" +echo " module load rocm/COMP_VER rocmcc/COMP_VER" echo " srun -n1 make" echo -echo " Run with these environment options" -echo " ASAN_OPTIONS=detect_leaks=0" +echo " Run with these environment options when using asan" +echo " ASAN_OPTIONS=print_suppressions=0:detect_leaks=0" echo " HSA_XNACK=1" -echo " LD_LIBRARY_PATH=\$LD_LIBRARY_PATH:/opt/rocm-${COMP_VER}/llvm/lib/clang/15.0.0/lib/linux" echo echo "***********************************************************************" diff --git a/scripts/lc-builds/toss4_cce_hip.sh b/scripts/lc-builds/toss4_cce_hip.sh index e68d01ad2c..80db5f37be 100755 --- a/scripts/lc-builds/toss4_cce_hip.sh +++ b/scripts/lc-builds/toss4_cce_hip.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/toss4_clang.sh b/scripts/lc-builds/toss4_clang.sh index 657526f822..ab1cb69e81 100755 --- a/scripts/lc-builds/toss4_clang.sh +++ b/scripts/lc-builds/toss4_clang.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/toss4_gcc.sh b/scripts/lc-builds/toss4_gcc.sh index 7968e4a7fe..07fa26cc3f 100755 --- a/scripts/lc-builds/toss4_gcc.sh +++ b/scripts/lc-builds/toss4_gcc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -28,7 +28,7 @@ echo rm -rf build_${BUILD_SUFFIX} 2>/dev/null mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} -module load cmake/3.21.1 +module load cmake/3.23.1 cmake \ -DCMAKE_BUILD_TYPE=Release \ diff --git a/scripts/lc-builds/toss4_hipcc.sh b/scripts/lc-builds/toss4_hipcc.sh index 1503673502..6e1bb2af75 100755 --- a/scripts/lc-builds/toss4_hipcc.sh +++ b/scripts/lc-builds/toss4_hipcc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/lc-builds/toss4_icpc-classic.sh b/scripts/lc-builds/toss4_icpc-classic.sh index 0c08f93914..248d8050ef 100755 --- a/scripts/lc-builds/toss4_icpc-classic.sh +++ b/scripts/lc-builds/toss4_icpc-classic.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -17,8 +17,6 @@ fi COMP_VER=$1 shift 1 -USE_TBB=Off - BUILD_SUFFIX=lc_toss4-icpc-classic-${COMP_VER} echo @@ -30,7 +28,7 @@ echo rm -rf build_${BUILD_SUFFIX} 2>/dev/null mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} -module load cmake/3.21.1 +module load cmake/3.23.1 ## # CMake option -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off used to speed up compile @@ -45,7 +43,6 @@ cmake \ -C ../host-configs/lc-builds/toss4/icpc-classic_X.cmake \ -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off \ -DENABLE_OPENMP=On \ - -DRAJA_ENABLE_TBB=${USE_TBB} \ -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ "$@" \ .. diff --git a/scripts/lc-builds/toss4_icpc.sh b/scripts/lc-builds/toss4_icpc.sh index bc309ed1a8..93d4d62cad 100755 --- a/scripts/lc-builds/toss4_icpc.sh +++ b/scripts/lc-builds/toss4_icpc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -17,8 +17,6 @@ fi COMP_VER=$1 shift 1 -USE_TBB=On - BUILD_SUFFIX=lc_toss4-icpc-${COMP_VER} echo @@ -30,7 +28,7 @@ echo rm -rf build_${BUILD_SUFFIX} 2>/dev/null mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} -module load cmake/3.21.1 +module load cmake/3.23.1 ## # CMake option -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off used to speed up compile @@ -45,7 +43,6 @@ cmake \ -C ../host-configs/lc-builds/toss4/icpc_X.cmake \ -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off \ -DENABLE_OPENMP=On \ - -DRAJA_ENABLE_TBB=${USE_TBB} \ -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ "$@" \ .. diff --git a/scripts/lc-builds/toss4_icpx.sh b/scripts/lc-builds/toss4_icpx.sh index d0749896a4..c97479da9a 100755 --- a/scripts/lc-builds/toss4_icpx.sh +++ b/scripts/lc-builds/toss4_icpx.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -17,8 +17,6 @@ fi COMP_VER=$1 shift 1 -USE_TBB=Off - BUILD_SUFFIX=lc_toss4-icpx-${COMP_VER} echo @@ -30,21 +28,23 @@ echo rm -rf build_${BUILD_SUFFIX} 2>/dev/null mkdir build_${BUILD_SUFFIX} && cd build_${BUILD_SUFFIX} -module load cmake/3.21.1 +module load cmake/3.23.1 -# -# Note: we are using the intel-tce install path as the vanilla intel install -# path is not in /usr/tce/packages -# +## +# CMake option -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off used to speed up compile +# times at a potential cost of slower 'forall' execution. +## + +source /usr/tce/packages/intel/intel-${COMP_VER}/setvars.sh cmake \ -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_CXX_COMPILER=/usr/tce/packages/intel-tce/intel-${COMP_VER}/bin/icpx \ - -DCMAKE_C_COMPILER=/usr/tce/packages/intel-tce/intel-${COMP_VER}/bin/icx \ + -DCMAKE_CXX_COMPILER=/usr/tce/packages/intel/intel-${COMP_VER}/compiler/${COMP_VER}/linux/bin/icpx \ + -DCMAKE_C_COMPILER=/usr/tce/packages/intel/intel-${COMP_VER}/compiler/${COMP_VER}/linux/bin/icx \ -DBLT_CXX_STD=c++14 \ -C ../host-configs/lc-builds/toss4/icpx_X.cmake \ + -DRAJA_ENABLE_FORCEINLINE_RECURSIVE=Off \ -DENABLE_OPENMP=On \ - -DRAJA_ENABLE_TBB=${USE_TBB} \ -DCMAKE_INSTALL_PREFIX=../install_${BUILD_SUFFIX} \ "$@" \ .. diff --git a/scripts/macos-builds/apple_clang10.0.0.sh b/scripts/macos-builds/apple_clang10.0.0.sh index 6e02d06995..4f4fd2cafc 100755 --- a/scripts/macos-builds/apple_clang10.0.0.sh +++ b/scripts/macos-builds/apple_clang10.0.0.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/make_local_branch_from_fork_pr.sh b/scripts/make_local_branch_from_fork_pr.sh index eb6b3e8298..7141a159d5 100755 --- a/scripts/make_local_branch_from_fork_pr.sh +++ b/scripts/make_local_branch_from_fork_pr.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/make_release_tarball.sh b/scripts/make_release_tarball.sh index 7591a0abef..61b1d3fdc3 100755 --- a/scripts/make_release_tarball.sh +++ b/scripts/make_release_tarball.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/radiuss-spack-configs b/scripts/radiuss-spack-configs index 955f0c3a67..a37c3e1906 160000 --- a/scripts/radiuss-spack-configs +++ b/scripts/radiuss-spack-configs @@ -1 +1 @@ -Subproject commit 955f0c3a67e28fac4648ac41787e93511207b22e +Subproject commit a37c3e1906baef912c59f3ef52aa45ab71cab0be diff --git a/scripts/run_clang_format.sh b/scripts/run_clang_format.sh index f6c3a49a0a..dbab3d7c8a 100755 --- a/scripts/run_clang_format.sh +++ b/scripts/run_clang_format.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/travis_build_and_test.sh b/scripts/travis_build_and_test.sh index b8f51fe568..830954b90f 100755 --- a/scripts/travis_build_and_test.sh +++ b/scripts/travis_build_and_test.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/ubuntu-builds/ubuntu_clang.sh b/scripts/ubuntu-builds/ubuntu_clang.sh index a26e9f74f4..e5584a63c7 100755 --- a/scripts/ubuntu-builds/ubuntu_clang.sh +++ b/scripts/ubuntu-builds/ubuntu_clang.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/ubuntu-builds/ubuntu_gcc.sh b/scripts/ubuntu-builds/ubuntu_gcc.sh index 35952e15b7..81c99cda0f 100755 --- a/scripts/ubuntu-builds/ubuntu_gcc.sh +++ b/scripts/ubuntu-builds/ubuntu_gcc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/ubuntu-builds/ubuntu_hipcc.sh b/scripts/ubuntu-builds/ubuntu_hipcc.sh index c3b848344d..830d8afe98 100755 --- a/scripts/ubuntu-builds/ubuntu_hipcc.sh +++ b/scripts/ubuntu-builds/ubuntu_hipcc.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/ubuntu-builds/ubuntu_nvcc10_gcc8.sh b/scripts/ubuntu-builds/ubuntu_nvcc10_gcc8.sh index 20450b6809..df09dc111d 100755 --- a/scripts/ubuntu-builds/ubuntu_nvcc10_gcc8.sh +++ b/scripts/ubuntu-builds/ubuntu_nvcc10_gcc8.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/scripts/update_copyright.sh b/scripts/update_copyright.sh index acfc8bbc8e..b7ddddfa61 100755 --- a/scripts/update_copyright.sh +++ b/scripts/update_copyright.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and other RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -16,7 +16,8 @@ # as well. # # IMPORTANT: Since this file is not modified (it is running the shell -# script commands), you must EDIT THE COPYRIGHT DATES ABOVE MANUALLY. +# script commands), you must EDIT THE COPYRIGHT DATES IN THE HEADER ABOVE +# MANUALLY. # # Edit the 'find' command below to change the set of files that will be # modified. @@ -45,18 +46,18 @@ for i in `cat files2change` do echo $i cp $i $i.sed.bak - sed "s/Copyright (c) 2016-22/Copyright (c) 2016-23/" $i.sed.bak > $i + sed "s/Copyright (c) 2016-23/Copyright (c) 2016-24/" $i.sed.bak > $i done echo LICENSE cp LICENSE LICENSE.sed.bak -sed "s/Copyright (c) 2016-2022/Copyright (c) 2016-2023/" LICENSE.sed.bak > LICENSE +sed "s/Copyright (c) 2016-2023/Copyright (c) 2016-2024/" LICENSE.sed.bak > LICENSE -for i in README.md RELEASE_NOTES.md CONTRIBUTING.md RELEASE +for i in README.md RELEASE_NOTES.md CONTRIBUTING.md RELEASE docs/conf.py do echo $i cp $i $i.sed.bak - sed "s/2016-22/2016-23/" $i.sed.bak > $i + sed "s/2016-23/2016-24/" $i.sed.bak > $i done #============================================================================= diff --git a/share/raja/cmake/RAJA-config.cmake.in b/share/raja/cmake/RAJA-config.cmake.in index c171d723fa..694fb232d8 100644 --- a/share/raja/cmake/RAJA-config.cmake.in +++ b/share/raja/cmake/RAJA-config.cmake.in @@ -1,5 +1,5 @@ #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -37,20 +37,6 @@ set(RAJA_PACKAGE_PREFIX_DIR ${PACKAGE_PREFIX_DIR}) include(CMakeFindDependencyMacro) -if (@RAJA_NEEDS_BLT_TPLS@) - if (@RAJA_ENABLE_CUDA@) - find_dependency(Threads) - endif () -endif() - -#Needs to come before camp -#Camp performs a check on the BLT target -set(BLT_TGTS "${CMAKE_CURRENT_LIST_DIR}/bltTargets.cmake") -if(EXISTS "${BLT_TGTS}") -include("${BLT_TGTS}") -endif() -unset(BLT_TGTS) - if (NOT TARGET camp) set(RAJA_CAMP_DIR "@camp_DIR@") if(NOT camp_DIR) @@ -79,5 +65,7 @@ if (@RAJA_ENABLE_DESUL_ATOMICS@) endif () endif() +# This file will automatically configure any required third-party libraries. +include("${CMAKE_CURRENT_LIST_DIR}/BLTSetupTargets.cmake") include("${CMAKE_CURRENT_LIST_DIR}/RAJATargets.cmake") check_required_components("@PROJECT_NAME@") diff --git a/src/AlignedRangeIndexSetBuilders.cpp b/src/AlignedRangeIndexSetBuilders.cpp index 7115cdc571..d95859d71d 100644 --- a/src/AlignedRangeIndexSetBuilders.cpp +++ b/src/AlignedRangeIndexSetBuilders.cpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/DepGraphNode.cpp b/src/DepGraphNode.cpp index 4ac694b097..176d9e855d 100644 --- a/src/DepGraphNode.cpp +++ b/src/DepGraphNode.cpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/KokkosPluginLoader.cpp b/src/KokkosPluginLoader.cpp index 6693182f8e..fa05e0faf8 100644 --- a/src/KokkosPluginLoader.cpp +++ b/src/KokkosPluginLoader.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/LockFreeIndexSetBuilders.cpp b/src/LockFreeIndexSetBuilders.cpp index 15c0d0d196..f9ef1f51c8 100644 --- a/src/LockFreeIndexSetBuilders.cpp +++ b/src/LockFreeIndexSetBuilders.cpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/MemUtils_CUDA.cpp b/src/MemUtils_CUDA.cpp index 24a6dca633..d077e8af8f 100644 --- a/src/MemUtils_CUDA.cpp +++ b/src/MemUtils_CUDA.cpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/MemUtils_HIP.cpp b/src/MemUtils_HIP.cpp index 00d5eaa4bf..bf44264132 100644 --- a/src/MemUtils_HIP.cpp +++ b/src/MemUtils_HIP.cpp @@ -10,7 +10,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/PluginStrategy.cpp b/src/PluginStrategy.cpp index d95a5f8e7c..e39c5718a8 100644 --- a/src/PluginStrategy.cpp +++ b/src/PluginStrategy.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/RuntimePluginLoader.cpp b/src/RuntimePluginLoader.cpp index 394e5138a3..3da10cda8c 100644 --- a/src/RuntimePluginLoader.cpp +++ b/src/RuntimePluginLoader.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/TensorStats.cpp b/src/TensorStats.cpp index 1f513c95ae..b650b691f9 100644 --- a/src/TensorStats.cpp +++ b/src/TensorStats.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt index cdc1bf33e3..4aa1294d07 100644 --- a/test/CMakeLists.txt +++ b/test/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/CTestCustom.cmake b/test/CTestCustom.cmake index eab0c1ba32..fc012cf476 100644 --- a/test/CTestCustom.cmake +++ b/test/CTestCustom.cmake @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/CMakeLists.txt b/test/functional/CMakeLists.txt index ffd106a396..cad76a64a1 100644 --- a/test/functional/CMakeLists.txt +++ b/test/functional/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/CMakeLists.txt b/test/functional/dynamic_forall/CMakeLists.txt index 50e510a7b0..5ed27060f3 100644 --- a/test/functional/dynamic_forall/CMakeLists.txt +++ b/test/functional/dynamic_forall/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/resource-segment/CMakeLists.txt b/test/functional/dynamic_forall/resource-segment/CMakeLists.txt index 3138b3c834..fdbde8bc13 100644 --- a/test/functional/dynamic_forall/resource-segment/CMakeLists.txt +++ b/test/functional/dynamic_forall/resource-segment/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/resource-segment/test-dynamic-forall-resource-segments.cpp.in b/test/functional/dynamic_forall/resource-segment/test-dynamic-forall-resource-segments.cpp.in index f831c628f8..b36f5ec12e 100644 --- a/test/functional/dynamic_forall/resource-segment/test-dynamic-forall-resource-segments.cpp.in +++ b/test/functional/dynamic_forall/resource-segment/test-dynamic-forall-resource-segments.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/resource-segment/tests/test-dynamic-forall-resource-RangeSegment.hpp b/test/functional/dynamic_forall/resource-segment/tests/test-dynamic-forall-resource-RangeSegment.hpp index 91780c132e..8c8d051d8f 100644 --- a/test/functional/dynamic_forall/resource-segment/tests/test-dynamic-forall-resource-RangeSegment.hpp +++ b/test/functional/dynamic_forall/resource-segment/tests/test-dynamic-forall-resource-RangeSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/segment/CMakeLists.txt b/test/functional/dynamic_forall/segment/CMakeLists.txt index 4330773776..88b656f83b 100644 --- a/test/functional/dynamic_forall/segment/CMakeLists.txt +++ b/test/functional/dynamic_forall/segment/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/segment/test-dynamic-forall-segments.cpp.in b/test/functional/dynamic_forall/segment/test-dynamic-forall-segments.cpp.in index 1b1806917c..955685a116 100644 --- a/test/functional/dynamic_forall/segment/test-dynamic-forall-segments.cpp.in +++ b/test/functional/dynamic_forall/segment/test-dynamic-forall-segments.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/dynamic_forall/segment/tests/test-dynamic-forall-RangeSegment.hpp b/test/functional/dynamic_forall/segment/tests/test-dynamic-forall-RangeSegment.hpp index aecd088a06..11168b0e30 100644 --- a/test/functional/dynamic_forall/segment/tests/test-dynamic-forall-RangeSegment.hpp +++ b/test/functional/dynamic_forall/segment/tests/test-dynamic-forall-RangeSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/CMakeLists.txt b/test/functional/forall/CMakeLists.txt index acd58e3f8b..eb9cc5ad19 100644 --- a/test/functional/forall/CMakeLists.txt +++ b/test/functional/forall/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,10 +11,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND FORALL_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) - list(APPEND FORALL_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND FORALL_BACKENDS Cuda) endif() @@ -59,12 +55,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND FORALL_ATOMIC_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) -# TBB atomics are not available in RAJA currently -# so built-in atomics are used - list(APPEND FORALL_ATOMIC_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND FORALL_ATOMIC_BACKENDS Cuda) endif() diff --git a/test/functional/forall/CombiningAdapter/CMakeLists.txt b/test/functional/forall/CombiningAdapter/CMakeLists.txt index f4ee3eeb76..5773289aa7 100644 --- a/test/functional/forall/CombiningAdapter/CMakeLists.txt +++ b/test/functional/forall/CombiningAdapter/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/CombiningAdapter/test-forall-CombiningAdapter.cpp.in b/test/functional/forall/CombiningAdapter/test-forall-CombiningAdapter.cpp.in index dc061f5608..9f57c45b6c 100644 --- a/test/functional/forall/CombiningAdapter/test-forall-CombiningAdapter.cpp.in +++ b/test/functional/forall/CombiningAdapter/test-forall-CombiningAdapter.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-1D.hpp b/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-1D.hpp index ed6cd72866..1b9dd4334a 100644 --- a/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-1D.hpp +++ b/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-1D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-2D.hpp b/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-2D.hpp index d81a915003..2be6464bb8 100644 --- a/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-2D.hpp +++ b/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-3D.hpp b/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-3D.hpp index 0d58b5aa62..83213cc113 100644 --- a/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-3D.hpp +++ b/test/functional/forall/CombiningAdapter/tests/test-forall-CombiningAdapter-3D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-basic/CMakeLists.txt b/test/functional/forall/atomic-basic/CMakeLists.txt index 9e247f7578..9c2c12d76f 100644 --- a/test/functional/forall/atomic-basic/CMakeLists.txt +++ b/test/functional/forall/atomic-basic/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-basic/test-forall-atomic-basic-unsigned.cpp.in b/test/functional/forall/atomic-basic/test-forall-atomic-basic-unsigned.cpp.in index 9dddea71c4..5c4ef05e5d 100644 --- a/test/functional/forall/atomic-basic/test-forall-atomic-basic-unsigned.cpp.in +++ b/test/functional/forall/atomic-basic/test-forall-atomic-basic-unsigned.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-basic/test-forall-atomic-basic.cpp.in b/test/functional/forall/atomic-basic/test-forall-atomic-basic.cpp.in index 1da217f5fb..92e80d3396 100644 --- a/test/functional/forall/atomic-basic/test-forall-atomic-basic.cpp.in +++ b/test/functional/forall/atomic-basic/test-forall-atomic-basic.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic-unsigned.hpp b/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic-unsigned.hpp index d71af0e96a..e318c3847f 100644 --- a/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic-unsigned.hpp +++ b/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic-unsigned.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic.hpp b/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic.hpp index 734ff8b814..ab2f0a89e7 100644 --- a/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic.hpp +++ b/test/functional/forall/atomic-basic/tests/test-forall-atomic-basic.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/CMakeLists.txt b/test/functional/forall/atomic-ref/CMakeLists.txt index ecca1238b9..6e3f56114a 100644 --- a/test/functional/forall/atomic-ref/CMakeLists.txt +++ b/test/functional/forall/atomic-ref/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/test-forall-atomicref.cpp.in b/test/functional/forall/atomic-ref/test-forall-atomicref.cpp.in index eb08ae6cb9..2a42bd8ff6 100644 --- a/test/functional/forall/atomic-ref/test-forall-atomicref.cpp.in +++ b/test/functional/forall/atomic-ref/test-forall-atomicref.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefAdd.hpp b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefAdd.hpp index d577238dd0..9089844744 100644 --- a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefAdd.hpp +++ b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefAdd.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefCAS.hpp b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefCAS.hpp index a75f4b76bd..8f036fc4b9 100644 --- a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefCAS.hpp +++ b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefCAS.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLoadStore.hpp b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLoadStore.hpp index cd8a24bf8e..95209b6c79 100644 --- a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLoadStore.hpp +++ b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLoadStore.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLogical.hpp b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLogical.hpp index f902bea8d6..382560109c 100644 --- a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLogical.hpp +++ b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefLogical.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefMinMax.hpp b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefMinMax.hpp index 2c51100d3f..b8860def9f 100644 --- a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefMinMax.hpp +++ b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefMinMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefSub.hpp b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefSub.hpp index 46817c1afb..f4579fb786 100644 --- a/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefSub.hpp +++ b/test/functional/forall/atomic-ref/tests/test-forall-AtomicRefSub.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-view/CMakeLists.txt b/test/functional/forall/atomic-view/CMakeLists.txt index 4ef660599e..d6aed154eb 100644 --- a/test/functional/forall/atomic-view/CMakeLists.txt +++ b/test/functional/forall/atomic-view/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-view/test-forall-atomic-view.cpp.in b/test/functional/forall/atomic-view/test-forall-atomic-view.cpp.in index 3c6336d11a..5896435e93 100644 --- a/test/functional/forall/atomic-view/test-forall-atomic-view.cpp.in +++ b/test/functional/forall/atomic-view/test-forall-atomic-view.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-view/tests/test-forall-AtomicMultiView.hpp b/test/functional/forall/atomic-view/tests/test-forall-AtomicMultiView.hpp index 7643319443..fc67162823 100644 --- a/test/functional/forall/atomic-view/tests/test-forall-AtomicMultiView.hpp +++ b/test/functional/forall/atomic-view/tests/test-forall-AtomicMultiView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-view/tests/test-forall-AtomicOutOfBoundsMultiView.hpp b/test/functional/forall/atomic-view/tests/test-forall-AtomicOutOfBoundsMultiView.hpp index 57997533e7..a33c0f591a 100644 --- a/test/functional/forall/atomic-view/tests/test-forall-AtomicOutOfBoundsMultiView.hpp +++ b/test/functional/forall/atomic-view/tests/test-forall-AtomicOutOfBoundsMultiView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/atomic-view/tests/test-forall-AtomicView.hpp b/test/functional/forall/atomic-view/tests/test-forall-AtomicView.hpp index eefcd96cbf..588e95bf82 100644 --- a/test/functional/forall/atomic-view/tests/test-forall-AtomicView.hpp +++ b/test/functional/forall/atomic-view/tests/test-forall-AtomicView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset-view/CMakeLists.txt b/test/functional/forall/indexset-view/CMakeLists.txt index 158bfde682..f6b868c2b8 100644 --- a/test/functional/forall/indexset-view/CMakeLists.txt +++ b/test/functional/forall/indexset-view/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset-view/test-forall-indexset-view.cpp.in b/test/functional/forall/indexset-view/test-forall-indexset-view.cpp.in index ff9a9b7e45..e657a3819c 100644 --- a/test/functional/forall/indexset-view/test-forall-indexset-view.cpp.in +++ b/test/functional/forall/indexset-view/test-forall-indexset-view.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset-view/tests/test-forall-IcountIndexSetView.hpp b/test/functional/forall/indexset-view/tests/test-forall-IcountIndexSetView.hpp index eb7a52c2e5..26bd5ee7d9 100644 --- a/test/functional/forall/indexset-view/tests/test-forall-IcountIndexSetView.hpp +++ b/test/functional/forall/indexset-view/tests/test-forall-IcountIndexSetView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset-view/tests/test-forall-IndexSetView.hpp b/test/functional/forall/indexset-view/tests/test-forall-IndexSetView.hpp index dfd9253ba0..7fc00c47d9 100644 --- a/test/functional/forall/indexset-view/tests/test-forall-IndexSetView.hpp +++ b/test/functional/forall/indexset-view/tests/test-forall-IndexSetView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset/CMakeLists.txt b/test/functional/forall/indexset/CMakeLists.txt index bb52ac2b12..957af12234 100644 --- a/test/functional/forall/indexset/CMakeLists.txt +++ b/test/functional/forall/indexset/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset/test-forall-indexset.cpp.in b/test/functional/forall/indexset/test-forall-indexset.cpp.in index 7411eab8ee..86aaab0b8d 100644 --- a/test/functional/forall/indexset/test-forall-indexset.cpp.in +++ b/test/functional/forall/indexset/test-forall-indexset.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset/tests/test-forall-IcountIndexSet.hpp b/test/functional/forall/indexset/tests/test-forall-IcountIndexSet.hpp index b618abda31..70fbb98b15 100644 --- a/test/functional/forall/indexset/tests/test-forall-IcountIndexSet.hpp +++ b/test/functional/forall/indexset/tests/test-forall-IcountIndexSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/indexset/tests/test-forall-IndexSet.hpp b/test/functional/forall/indexset/tests/test-forall-IndexSet.hpp index f70f09e2aa..f2be845482 100644 --- a/test/functional/forall/indexset/tests/test-forall-IndexSet.hpp +++ b/test/functional/forall/indexset/tests/test-forall-IndexSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/CMakeLists.txt b/test/functional/forall/reduce-basic/CMakeLists.txt index 316c710b11..2537ea1ff9 100644 --- a/test/functional/forall/reduce-basic/CMakeLists.txt +++ b/test/functional/forall/reduce-basic/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -28,7 +28,8 @@ endif() # expt-reduce tests. # if(RAJA_ENABLE_SYCL) - list(REMOVE_ITEM FORALL_BACKENDS Sycl) + list(REMOVE_ITEM REDUCETYPES ReduceMaxLoc) + list(REMOVE_ITEM REDUCETYPES ReduceMinLoc) endif() @@ -59,6 +60,15 @@ set(REDUCETYPES ReduceBitAnd ReduceBitOr) set(DATATYPES BitwiseReductionDataTypeList) +# +# If building SYCL tests, remove the back-end from +# from the list of tests to generate here for the +# expt-reduce tests. + +if(RAJA_ENABLE_SYCL) + list(REMOVE_ITEM FORALL_BACKENDS Sycl) +endif() + # # Generate bitwise reduction tests for each enabled RAJA back-end # @@ -104,6 +114,15 @@ if(RAJA_ENABLE_SYCL) list(APPEND FORALL_BACKENDS Sycl) endif() +# +# If building SYCL tests, remove the back-end from +# from the list of tests to generate here for the +# core reduction tests. +# +if(RAJA_ENABLE_SYCL) + list(REMOVE_ITEM REDUCETYPES ReduceMaxLoc) + list(REMOVE_ITEM REDUCETYPES ReduceMinLoc) +endif() # # Generate core reduction tests for each enabled RAJA back-end diff --git a/test/functional/forall/reduce-basic/test-forall-basic-expt-reduce.cpp.in b/test/functional/forall/reduce-basic/test-forall-basic-expt-reduce.cpp.in index 37d68476ed..8154a50ca6 100644 --- a/test/functional/forall/reduce-basic/test-forall-basic-expt-reduce.cpp.in +++ b/test/functional/forall/reduce-basic/test-forall-basic-expt-reduce.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/test-forall-basic-reduce.cpp.in b/test/functional/forall/reduce-basic/test-forall-basic-reduce.cpp.in index 494da19512..2d10fb9760 100644 --- a/test/functional/forall/reduce-basic/test-forall-basic-reduce.cpp.in +++ b/test/functional/forall/reduce-basic/test-forall-basic-reduce.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitAnd.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitAnd.hpp index 5a23d171a3..6adade08a9 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitAnd.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitAnd.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitOr.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitOr.hpp index 1ed1e09d05..a0db78c4f6 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitOr.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceBitOr.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMax.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMax.hpp index e98107864b..5ec8c47164 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMax.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMaxLoc.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMaxLoc.hpp index 3d17920f28..c5f228821d 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMaxLoc.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMaxLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMin.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMin.hpp index b6a6429fe1..67e051acc4 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMin.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMin.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMinLoc.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMinLoc.hpp index 5ab1effdb7..be5265d4b1 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMinLoc.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceMinLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceSum.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceSum.hpp index aedf98337d..2203aedd1b 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceSum.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitAnd.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitAnd.hpp index a07977b28a..50a77c64e8 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitAnd.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitAnd.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitOr.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitOr.hpp index b55e4ca895..f9d839d1b0 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitOr.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceBitOr.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMax.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMax.hpp index e40f4f9358..2fe188f16c 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMax.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMaxLoc.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMaxLoc.hpp index aef981bfb4..1637b1f2a8 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMaxLoc.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMaxLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMin.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMin.hpp index a40c109ee0..13a22e7fa1 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMin.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMin.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMinLoc.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMinLoc.hpp index b5453434aa..d4539d699f 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMinLoc.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceMinLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceSum.hpp b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceSum.hpp index 22dae816fc..45c60c51e3 100644 --- a/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceSum.hpp +++ b/test/functional/forall/reduce-basic/tests/test-forall-basic-expt-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-indexset/CMakeLists.txt b/test/functional/forall/reduce-multiple-indexset/CMakeLists.txt index f7c481172b..257b019b2d 100644 --- a/test/functional/forall/reduce-multiple-indexset/CMakeLists.txt +++ b/test/functional/forall/reduce-multiple-indexset/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -17,13 +17,14 @@ if(RAJA_ENABLE_TARGET_OPENMP) endif() # -# While we're adding SYCL tests, enable it for each test set like this. +# If building SYCL tests, remove the back-end from +# from the list of tests to generate here for the +# reduce tests. # -# Eventually, remove this and enable in the top-level CMakeLists.txt file. -# -#if(RAJA_ENABLE_SYCL) -# list(APPEND FORALL_BACKENDS Sycl) -#endif() +if(RAJA_ENABLE_SYCL) + list(REMOVE_ITEM REDUCETYPES ReduceMaxLoc) + list(REMOVE_ITEM REDUCETYPES ReduceMinLoc) +endif() # # Generate tests for each enabled RAJA back-end diff --git a/test/functional/forall/reduce-multiple-indexset/test-forall-indexset-multiple-reduce.cpp.in b/test/functional/forall/reduce-multiple-indexset/test-forall-indexset-multiple-reduce.cpp.in index f9faf16429..aba4318b37 100644 --- a/test/functional/forall/reduce-multiple-indexset/test-forall-indexset-multiple-reduce.cpp.in +++ b/test/functional/forall/reduce-multiple-indexset/test-forall-indexset-multiple-reduce.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMax.hpp b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMax.hpp index cdd30a39d0..6335affc02 100644 --- a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMax.hpp +++ b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMaxLoc.hpp b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMaxLoc.hpp index dfd97bee48..4d30728fe6 100644 --- a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMaxLoc.hpp +++ b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMaxLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMin.hpp b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMin.hpp index 237b7e0e0c..cf3b60d078 100644 --- a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMin.hpp +++ b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMin.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMinLoc.hpp b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMinLoc.hpp index 8621390831..b8abbd9f67 100644 --- a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMinLoc.hpp +++ b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceMinLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceSum.hpp b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceSum.hpp index 1161a1d6da..88d3f54d7e 100644 --- a/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceSum.hpp +++ b/test/functional/forall/reduce-multiple-indexset/tests/test-forall-indexset-multiple-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-segment/CMakeLists.txt b/test/functional/forall/reduce-multiple-segment/CMakeLists.txt index 12c1e19d93..6d2234f948 100644 --- a/test/functional/forall/reduce-multiple-segment/CMakeLists.txt +++ b/test/functional/forall/reduce-multiple-segment/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -17,13 +17,14 @@ if(RAJA_ENABLE_TARGET_OPENMP) endif() # -# While we're adding SYCL tests, enable it for each test set like this. +# If building SYCL tests, remove the back-end from +# from the list of tests to generate here for the +# reduce tests. # -# Eventually, remove this and enable in the top-level CMakeLists.txt file. -# -#if(RAJA_ENABLE_SYCL) -# list(APPEND FORALL_BACKENDS Sycl) -#endif() +if(RAJA_ENABLE_SYCL) + list(REMOVE_ITEM REDUCETYPES ReduceMaxLoc) + list(REMOVE_ITEM REDUCETYPES ReduceMinLoc) +endif() # # Generate tests for each enabled RAJA back-end diff --git a/test/functional/forall/reduce-multiple-segment/test-forall-segment-multiple-reduce.cpp.in b/test/functional/forall/reduce-multiple-segment/test-forall-segment-multiple-reduce.cpp.in index ff92cedfc0..5fa117855f 100644 --- a/test/functional/forall/reduce-multiple-segment/test-forall-segment-multiple-reduce.cpp.in +++ b/test/functional/forall/reduce-multiple-segment/test-forall-segment-multiple-reduce.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMax.hpp b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMax.hpp index eca8903d96..bc5aec30d6 100644 --- a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMax.hpp +++ b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMaxLoc.hpp b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMaxLoc.hpp index 4c0fb4c84a..8f16762989 100644 --- a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMaxLoc.hpp +++ b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMaxLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMin.hpp b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMin.hpp index 34157aaf89..7e51ac2a2d 100644 --- a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMin.hpp +++ b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMin.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMinLoc.hpp b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMinLoc.hpp index 2957539ab9..d71f582ed9 100644 --- a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMinLoc.hpp +++ b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceMinLoc.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceSum.hpp b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceSum.hpp index 6c96af6cbd..b5a6c469d1 100644 --- a/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceSum.hpp +++ b/test/functional/forall/reduce-multiple-segment/tests/test-forall-segment-multiple-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/region/CMakeLists.txt b/test/functional/forall/region/CMakeLists.txt index b025af61fa..a348b4fc96 100644 --- a/test/functional/forall/region/CMakeLists.txt +++ b/test/functional/forall/region/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/region/test-forall-region.cpp.in b/test/functional/forall/region/test-forall-region.cpp.in index 310038ccb6..5ce23277de 100644 --- a/test/functional/forall/region/test-forall-region.cpp.in +++ b/test/functional/forall/region/test-forall-region.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/region/tests/test-forall-region.hpp b/test/functional/forall/region/tests/test-forall-region.hpp index db9b3d8e45..f83d9ef1a5 100644 --- a/test/functional/forall/region/tests/test-forall-region.hpp +++ b/test/functional/forall/region/tests/test-forall-region.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-indexset/CMakeLists.txt b/test/functional/forall/resource-indexset/CMakeLists.txt index e52efe2634..827f658537 100644 --- a/test/functional/forall/resource-indexset/CMakeLists.txt +++ b/test/functional/forall/resource-indexset/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-indexset/test-forall-resource-indexset.cpp.in b/test/functional/forall/resource-indexset/test-forall-resource-indexset.cpp.in index 891b44e301..e82da76e30 100644 --- a/test/functional/forall/resource-indexset/test-forall-resource-indexset.cpp.in +++ b/test/functional/forall/resource-indexset/test-forall-resource-indexset.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-indexset/tests/test-forall-ResourceIcountIndexSet.hpp b/test/functional/forall/resource-indexset/tests/test-forall-ResourceIcountIndexSet.hpp index b7b3305b51..b000b270da 100644 --- a/test/functional/forall/resource-indexset/tests/test-forall-ResourceIcountIndexSet.hpp +++ b/test/functional/forall/resource-indexset/tests/test-forall-ResourceIcountIndexSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-indexset/tests/test-forall-ResourceIndexSet.hpp b/test/functional/forall/resource-indexset/tests/test-forall-ResourceIndexSet.hpp index dd667747e0..c1f714013d 100644 --- a/test/functional/forall/resource-indexset/tests/test-forall-ResourceIndexSet.hpp +++ b/test/functional/forall/resource-indexset/tests/test-forall-ResourceIndexSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-segment/CMakeLists.txt b/test/functional/forall/resource-segment/CMakeLists.txt index 4fa929d149..2b74a9b004 100644 --- a/test/functional/forall/resource-segment/CMakeLists.txt +++ b/test/functional/forall/resource-segment/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-segment/test-forall-resource-segment.cpp.in b/test/functional/forall/resource-segment/test-forall-resource-segment.cpp.in index c9bd77d52d..60e3637136 100644 --- a/test/functional/forall/resource-segment/test-forall-resource-segment.cpp.in +++ b/test/functional/forall/resource-segment/test-forall-resource-segment.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-segment/tests/test-forall-resource-ListSegment.hpp b/test/functional/forall/resource-segment/tests/test-forall-resource-ListSegment.hpp index 62120d46a2..5e0675cc98 100644 --- a/test/functional/forall/resource-segment/tests/test-forall-resource-ListSegment.hpp +++ b/test/functional/forall/resource-segment/tests/test-forall-resource-ListSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-segment/tests/test-forall-resource-RangeSegment.hpp b/test/functional/forall/resource-segment/tests/test-forall-resource-RangeSegment.hpp index 52906f559e..83cc7c4aa1 100644 --- a/test/functional/forall/resource-segment/tests/test-forall-resource-RangeSegment.hpp +++ b/test/functional/forall/resource-segment/tests/test-forall-resource-RangeSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/resource-segment/tests/test-forall-resource-RangeStrideSegment.hpp b/test/functional/forall/resource-segment/tests/test-forall-resource-RangeStrideSegment.hpp index f3a5f361ab..f85f295548 100644 --- a/test/functional/forall/resource-segment/tests/test-forall-resource-RangeStrideSegment.hpp +++ b/test/functional/forall/resource-segment/tests/test-forall-resource-RangeStrideSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment-view/CMakeLists.txt b/test/functional/forall/segment-view/CMakeLists.txt index 65d15a2863..b7068d6eb2 100644 --- a/test/functional/forall/segment-view/CMakeLists.txt +++ b/test/functional/forall/segment-view/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment-view/test-forall-segment-view.cpp.in b/test/functional/forall/segment-view/test-forall-segment-view.cpp.in index 20b6bb9034..f852f89633 100644 --- a/test/functional/forall/segment-view/test-forall-segment-view.cpp.in +++ b/test/functional/forall/segment-view/test-forall-segment-view.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment-view/tests/test-forall-ListSegmentView.hpp b/test/functional/forall/segment-view/tests/test-forall-ListSegmentView.hpp index 57f4fbb7f4..e673abf306 100644 --- a/test/functional/forall/segment-view/tests/test-forall-ListSegmentView.hpp +++ b/test/functional/forall/segment-view/tests/test-forall-ListSegmentView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment-view/tests/test-forall-RangeSegment2DView.hpp b/test/functional/forall/segment-view/tests/test-forall-RangeSegment2DView.hpp index 17f3fb9b95..b9355d9bc1 100644 --- a/test/functional/forall/segment-view/tests/test-forall-RangeSegment2DView.hpp +++ b/test/functional/forall/segment-view/tests/test-forall-RangeSegment2DView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment-view/tests/test-forall-RangeSegmentView.hpp b/test/functional/forall/segment-view/tests/test-forall-RangeSegmentView.hpp index 25c8a28ba9..b4449db822 100644 --- a/test/functional/forall/segment-view/tests/test-forall-RangeSegmentView.hpp +++ b/test/functional/forall/segment-view/tests/test-forall-RangeSegmentView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment-view/tests/test-forall-RangeStrideSegmentView.hpp b/test/functional/forall/segment-view/tests/test-forall-RangeStrideSegmentView.hpp index 3665dd383e..c385b929bc 100644 --- a/test/functional/forall/segment-view/tests/test-forall-RangeStrideSegmentView.hpp +++ b/test/functional/forall/segment-view/tests/test-forall-RangeStrideSegmentView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment/CMakeLists.txt b/test/functional/forall/segment/CMakeLists.txt index bb0b694f67..ce10443e77 100644 --- a/test/functional/forall/segment/CMakeLists.txt +++ b/test/functional/forall/segment/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment/test-forall-segment.cpp.in b/test/functional/forall/segment/test-forall-segment.cpp.in index 72963c0554..305aabe3db 100644 --- a/test/functional/forall/segment/test-forall-segment.cpp.in +++ b/test/functional/forall/segment/test-forall-segment.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment/tests/test-forall-ListSegment.hpp b/test/functional/forall/segment/tests/test-forall-ListSegment.hpp index b21b01866d..0252af8644 100644 --- a/test/functional/forall/segment/tests/test-forall-ListSegment.hpp +++ b/test/functional/forall/segment/tests/test-forall-ListSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment/tests/test-forall-RangeSegment.hpp b/test/functional/forall/segment/tests/test-forall-RangeSegment.hpp index b9e486240d..8b10d5dc10 100644 --- a/test/functional/forall/segment/tests/test-forall-RangeSegment.hpp +++ b/test/functional/forall/segment/tests/test-forall-RangeSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/forall/segment/tests/test-forall-RangeStrideSegment.hpp b/test/functional/forall/segment/tests/test-forall-RangeStrideSegment.hpp index 6bca468d3d..00046e15bf 100644 --- a/test/functional/forall/segment/tests/test-forall-RangeStrideSegment.hpp +++ b/test/functional/forall/segment/tests/test-forall-RangeStrideSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/indexset-build/CMakeLists.txt b/test/functional/indexset-build/CMakeLists.txt index 51873ebb94..1e46699579 100644 --- a/test/functional/indexset-build/CMakeLists.txt +++ b/test/functional/indexset-build/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/indexset-build/test-aligned-indexset.cpp b/test/functional/indexset-build/test-aligned-indexset.cpp index 35bd3ee765..ec40004b2d 100644 --- a/test/functional/indexset-build/test-aligned-indexset.cpp +++ b/test/functional/indexset-build/test-aligned-indexset.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/CMakeLists.txt b/test/functional/kernel/CMakeLists.txt index 5217df4df6..cd577a45b4 100644 --- a/test/functional/kernel/CMakeLists.txt +++ b/test/functional/kernel/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,10 +11,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND KERNEL_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) - list(APPEND KERNEL_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND KERNEL_BACKENDS Cuda) endif() diff --git a/test/functional/kernel/basic-fission-fusion-loop/CMakeLists.txt b/test/functional/kernel/basic-fission-fusion-loop/CMakeLists.txt index 6bdc21517f..5698f46fa5 100644 --- a/test/functional/kernel/basic-fission-fusion-loop/CMakeLists.txt +++ b/test/functional/kernel/basic-fission-fusion-loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-fission-fusion-loop/test-kernel-basic-fission-fusion-loop.cpp.in b/test/functional/kernel/basic-fission-fusion-loop/test-kernel-basic-fission-fusion-loop.cpp.in index 1e9417f2d5..ad52a2df86 100644 --- a/test/functional/kernel/basic-fission-fusion-loop/test-kernel-basic-fission-fusion-loop.cpp.in +++ b/test/functional/kernel/basic-fission-fusion-loop/test-kernel-basic-fission-fusion-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -63,28 +63,6 @@ using OpenMPKernelExecPols = camp::list< >; #endif -#if defined(RAJA_ENABLE_TBB) -using TBBKernelExecPols = camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0>>, - RAJA::statement::Lambda<1, RAJA::Segs<0>> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - >, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<1, RAJA::Segs<0>> - > - > - ->; -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetKernelExecPols = camp::list< diff --git a/test/functional/kernel/basic-fission-fusion-loop/tests/basic-fission-fusion-loop-impl.hpp b/test/functional/kernel/basic-fission-fusion-loop/tests/basic-fission-fusion-loop-impl.hpp index bea0fd1564..44a2a9ffa1 100644 --- a/test/functional/kernel/basic-fission-fusion-loop/tests/basic-fission-fusion-loop-impl.hpp +++ b/test/functional/kernel/basic-fission-fusion-loop/tests/basic-fission-fusion-loop-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-fission-fusion-loop/tests/test-kernel-basic-fission-fusion-loop-segments.hpp b/test/functional/kernel/basic-fission-fusion-loop/tests/test-kernel-basic-fission-fusion-loop-segments.hpp index e562574de9..0627e469af 100644 --- a/test/functional/kernel/basic-fission-fusion-loop/tests/test-kernel-basic-fission-fusion-loop-segments.hpp +++ b/test/functional/kernel/basic-fission-fusion-loop/tests/test-kernel-basic-fission-fusion-loop-segments.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-icount-loop/CMakeLists.txt b/test/functional/kernel/basic-single-icount-loop/CMakeLists.txt index dcd06571ae..3e2ddfde6c 100644 --- a/test/functional/kernel/basic-single-icount-loop/CMakeLists.txt +++ b/test/functional/kernel/basic-single-icount-loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-icount-loop/test-kernel-basic-single-icount-loop.cpp.in b/test/functional/kernel/basic-single-icount-loop/test-kernel-basic-single-icount-loop.cpp.in index 4fc02bdf0d..85115da9ec 100644 --- a/test/functional/kernel/basic-single-icount-loop/test-kernel-basic-single-icount-loop.cpp.in +++ b/test/functional/kernel/basic-single-icount-loop/test-kernel-basic-single-icount-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -82,51 +82,6 @@ using OpenMPKernelExecPols = camp::list< >; #endif // if defined(RAJA_ENABLE_OPENMP) -#if defined(RAJA_ENABLE_TBB) -using TBBKernelExecPols = -camp::list< - - RAJA::KernelPolicy< - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_static< >, - RAJA::statement::Lambda<0> - > - >, - -#if defined(RAJA_TEST_EXHAUSTIVE) - RAJA::KernelPolicy< - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_static< 2 >, - RAJA::statement::Lambda<0> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_static< 4 >, - RAJA::statement::Lambda<0> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_static< 8 >, - RAJA::statement::Lambda<0> - > - > -#endif - - RAJA::KernelPolicy< - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_dynamic, - RAJA::statement::Lambda<0> - > - > - ->; -#endif // if defined(RAJA_ENABLE_TBB) - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetKernelExecPols = camp::list< diff --git a/test/functional/kernel/basic-single-icount-loop/tests/basic-single-icount-loop-impl.hpp b/test/functional/kernel/basic-single-icount-loop/tests/basic-single-icount-loop-impl.hpp index b0fb0fa4ba..e22f544062 100644 --- a/test/functional/kernel/basic-single-icount-loop/tests/basic-single-icount-loop-impl.hpp +++ b/test/functional/kernel/basic-single-icount-loop/tests/basic-single-icount-loop-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-icount-loop/tests/test-kernel-basic-single-icount-loop-segments.hpp b/test/functional/kernel/basic-single-icount-loop/tests/test-kernel-basic-single-icount-loop-segments.hpp index 094ab1f6d4..e6bd76fef9 100644 --- a/test/functional/kernel/basic-single-icount-loop/tests/test-kernel-basic-single-icount-loop-segments.hpp +++ b/test/functional/kernel/basic-single-icount-loop/tests/test-kernel-basic-single-icount-loop-segments.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-loop/CMakeLists.txt b/test/functional/kernel/basic-single-loop/CMakeLists.txt index b64a4580ab..ee30156085 100644 --- a/test/functional/kernel/basic-single-loop/CMakeLists.txt +++ b/test/functional/kernel/basic-single-loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-loop/test-kernel-basic-single-loop.cpp.in b/test/functional/kernel/basic-single-loop/test-kernel-basic-single-loop.cpp.in index 7091ec0930..9b54015cda 100644 --- a/test/functional/kernel/basic-single-loop/test-kernel-basic-single-loop.cpp.in +++ b/test/functional/kernel/basic-single-loop/test-kernel-basic-single-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -76,51 +76,6 @@ using OpenMPKernelExecPols = camp::list< >; #endif // if defined(RAJA_ENABLE_OPENMP) -#if defined(RAJA_ENABLE_TBB) -using TBBKernelExecPols = -camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_static< >, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - > - >, - -#if defined(RAJA_TEST_EXHAUSTIVE) - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_static< 2 >, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_static< 4 >, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_static< 8 >, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - > - > -#endif - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_dynamic, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - > - > - ->; -#endif // if defined(RAJA_ENABLE_TBB) - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetKernelExecPols = camp::list< diff --git a/test/functional/kernel/basic-single-loop/tests/basic-single-loop-segments-impl.hpp b/test/functional/kernel/basic-single-loop/tests/basic-single-loop-segments-impl.hpp index bbca1cfb7b..6b4239e84a 100644 --- a/test/functional/kernel/basic-single-loop/tests/basic-single-loop-segments-impl.hpp +++ b/test/functional/kernel/basic-single-loop/tests/basic-single-loop-segments-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-loop/tests/test-kernel-basic-single-loop-segments.hpp b/test/functional/kernel/basic-single-loop/tests/test-kernel-basic-single-loop-segments.hpp index 0e7f173e3b..5a7ce88f55 100644 --- a/test/functional/kernel/basic-single-loop/tests/test-kernel-basic-single-loop-segments.hpp +++ b/test/functional/kernel/basic-single-loop/tests/test-kernel-basic-single-loop-segments.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/basic-single-loop/tests/test-kernel-resource-basic-single-loop-segments.hpp b/test/functional/kernel/basic-single-loop/tests/test-kernel-resource-basic-single-loop-segments.hpp index 2594d42925..6f624eab2c 100644 --- a/test/functional/kernel/basic-single-loop/tests/test-kernel-resource-basic-single-loop-segments.hpp +++ b/test/functional/kernel/basic-single-loop/tests/test-kernel-resource-basic-single-loop-segments.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/conditional-fission-fusion-loop/CMakeLists.txt b/test/functional/kernel/conditional-fission-fusion-loop/CMakeLists.txt index 05b3fb319d..3b5a34f4a3 100644 --- a/test/functional/kernel/conditional-fission-fusion-loop/CMakeLists.txt +++ b/test/functional/kernel/conditional-fission-fusion-loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/conditional-fission-fusion-loop/test-kernel-conditional-fission-fusion-loop.cpp.in b/test/functional/kernel/conditional-fission-fusion-loop/test-kernel-conditional-fission-fusion-loop.cpp.in index d9e747233e..d8c90e69fc 100644 --- a/test/functional/kernel/conditional-fission-fusion-loop/test-kernel-conditional-fission-fusion-loop.cpp.in +++ b/test/functional/kernel/conditional-fission-fusion-loop/test-kernel-conditional-fission-fusion-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -69,31 +69,6 @@ using OpenMPKernelExecPols = camp::list< >; #endif -#if defined(RAJA_ENABLE_TBB) -using TBBKernelExecPols = camp::list< - - RAJA::KernelPolicy< - RAJA::statement::If< RAJA::statement::Equals, - RAJA::statement::Value<0>>, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0>>, - RAJA::statement::Lambda<1, RAJA::Segs<0>> - > - >, - RAJA::statement::If< RAJA::statement::Equals, - RAJA::statement::Value<1>>, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0>> - >, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<1, RAJA::Segs<0>> - > - > - > - ->; -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetKernelExecPols = camp::list< diff --git a/test/functional/kernel/conditional-fission-fusion-loop/tests/conditional-fission-fusion-loop-impl.hpp b/test/functional/kernel/conditional-fission-fusion-loop/tests/conditional-fission-fusion-loop-impl.hpp index 52cd9fc861..5a326b3c62 100644 --- a/test/functional/kernel/conditional-fission-fusion-loop/tests/conditional-fission-fusion-loop-impl.hpp +++ b/test/functional/kernel/conditional-fission-fusion-loop/tests/conditional-fission-fusion-loop-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/conditional-fission-fusion-loop/tests/test-kernel-conditional-fission-fusion-loop-segments.hpp b/test/functional/kernel/conditional-fission-fusion-loop/tests/test-kernel-conditional-fission-fusion-loop-segments.hpp index a1edc83112..ddb2302e60 100644 --- a/test/functional/kernel/conditional-fission-fusion-loop/tests/test-kernel-conditional-fission-fusion-loop-segments.hpp +++ b/test/functional/kernel/conditional-fission-fusion-loop/tests/test-kernel-conditional-fission-fusion-loop-segments.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/hyperplane/CMakeLists.txt b/test/functional/kernel/hyperplane/CMakeLists.txt index cf964d657e..2e74129160 100644 --- a/test/functional/kernel/hyperplane/CMakeLists.txt +++ b/test/functional/kernel/hyperplane/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/hyperplane/test-kernel-hyperplane-2D.cpp.in b/test/functional/kernel/hyperplane/test-kernel-hyperplane-2D.cpp.in index 794c9bc0d5..b66d74b3c8 100644 --- a/test/functional/kernel/hyperplane/test-kernel-hyperplane-2D.cpp.in +++ b/test/functional/kernel/hyperplane/test-kernel-hyperplane-2D.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -99,30 +99,6 @@ using OpenMPTargetKernelHyperplaneExecPols = #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelHyperplaneExecPols = - camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Hyperplane<1, RAJA::seq_exec, RAJA::ArgList<2>, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Hyperplane<2, RAJA::seq_exec, RAJA::ArgList<1>, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - > - >; - -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaKernelHyperplaneExecPols = diff --git a/test/functional/kernel/hyperplane/test-kernel-hyperplane-3D.cpp.in b/test/functional/kernel/hyperplane/test-kernel-hyperplane-3D.cpp.in index bf30858bda..bbc201210f 100644 --- a/test/functional/kernel/hyperplane/test-kernel-hyperplane-3D.cpp.in +++ b/test/functional/kernel/hyperplane/test-kernel-hyperplane-3D.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -95,23 +95,6 @@ using OpenMPTargetKernelHyperplaneExecPols = #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelHyperplaneExecPols = - camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Hyperplane<1, RAJA::seq_exec, RAJA::ArgList<2, 3>, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - > - - >; - -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaKernelHyperplaneExecPols = diff --git a/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-2D.hpp b/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-2D.hpp index ec1ca0ecb0..ddae647f83 100644 --- a/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-2D.hpp +++ b/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-3D.hpp b/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-3D.hpp index 1fb6c270e5..321f43d6a6 100644 --- a/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-3D.hpp +++ b/test/functional/kernel/hyperplane/tests/test-kernel-hyperplane-3D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-reducesum/CMakeLists.txt b/test/functional/kernel/nested-loop-reducesum/CMakeLists.txt index bc6c420741..e07d55e65e 100644 --- a/test/functional/kernel/nested-loop-reducesum/CMakeLists.txt +++ b/test/functional/kernel/nested-loop-reducesum/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -45,7 +45,7 @@ foreach( NESTED_LOOP_BACKEND ${KERNEL_BACKENDS} ) if( ${NESTED_LOOP_TYPE} STREQUAL "ReduceSum" OR # allow all ReduceSum tests ((${NESTED_LOOP_BACKEND} STREQUAL "Sequential" OR ${NESTED_LOOP_BACKEND} STREQUAL "Cuda" OR ${NESTED_LOOP_BACKEND} STREQUAL "Hip" ) AND ${NESTED_LOOP_TYPE} STREQUAL "BlockReduceSum") # allow only certain BlockReduceSum tests ) - # Note on BlockReduceSum: Inherent kernel reduction functionality does not exist for - OpenMP, OpenMPTarget, and TBB. + # Note on BlockReduceSum: Inherent kernel reduction functionality does not exist for - OpenMP and OpenMPTarget. configure_file( test-kernel-nested-loop.cpp.in test-kernel${RESOURCE}nested-loop-${NESTED_LOOP_TYPE}-${NESTED_LOOP_BACKEND}.cpp ) diff --git a/test/functional/kernel/nested-loop-reducesum/test-kernel-nested-loop.cpp.in b/test/functional/kernel/nested-loop-reducesum/test-kernel-nested-loop.cpp.in index f561a35bd8..4816fc734b 100644 --- a/test/functional/kernel/nested-loop-reducesum/test-kernel-nested-loop.cpp.in +++ b/test/functional/kernel/nested-loop-reducesum/test-kernel-nested-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -48,17 +48,6 @@ using OpenMPTargetKernelNestedLoopExecPols = camp::list< #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelNestedLoopExecPols = camp::list< - - // Depth 3 ReduceSum Exec Pols - NestedLoopData, - NestedLoopData - >; - -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaKernelNestedLoopExecPols = camp::list< diff --git a/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-BlockReduceSum-impl.hpp b/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-BlockReduceSum-impl.hpp index 1b273f2c05..216aee14d6 100644 --- a/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-BlockReduceSum-impl.hpp +++ b/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-BlockReduceSum-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-ReduceSum-impl.hpp b/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-ReduceSum-impl.hpp index 649350d119..54934bef6d 100644 --- a/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-ReduceSum-impl.hpp +++ b/test/functional/kernel/nested-loop-reducesum/tests/nested-loop-ReduceSum-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-BlockReduceSum.hpp b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-BlockReduceSum.hpp index cdd8f7042a..cb2f444643 100644 --- a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-BlockReduceSum.hpp +++ b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-BlockReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-ReduceSum.hpp b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-ReduceSum.hpp index d4d6e934eb..344ae26666 100644 --- a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-ReduceSum.hpp +++ b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-nested-loop-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-BlockReduceSum.hpp b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-BlockReduceSum.hpp index 2b01fc2f0b..a83c16592f 100644 --- a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-BlockReduceSum.hpp +++ b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-BlockReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-ReduceSum.hpp b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-ReduceSum.hpp index e0ef1cd4d8..bbf888f680 100644 --- a/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-ReduceSum.hpp +++ b/test/functional/kernel/nested-loop-reducesum/tests/test-kernel-resource-nested-loop-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-segment-types/CMakeLists.txt b/test/functional/kernel/nested-loop-segment-types/CMakeLists.txt index ea6c5427b6..c4cffd48bf 100644 --- a/test/functional/kernel/nested-loop-segment-types/CMakeLists.txt +++ b/test/functional/kernel/nested-loop-segment-types/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-segment-types/test-kernel-nested-loop-segments.cpp.in b/test/functional/kernel/nested-loop-segment-types/test-kernel-nested-loop-segments.cpp.in index 1716bac0ef..1ec35fb47e 100644 --- a/test/functional/kernel/nested-loop-segment-types/test-kernel-nested-loop-segments.cpp.in +++ b/test/functional/kernel/nested-loop-segment-types/test-kernel-nested-loop-segments.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -54,22 +54,6 @@ using OpenMPKernelExecPols = camp::list< >; #endif // if defined(RAJA_ENABLE_OPENMP) -#if defined(RAJA_ENABLE_TBB) -using TBBKernelExecPols = camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::For<2, RAJA::seq_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0, 1, 2>> - > - > - > - > - ->; -#endif // if defined(RAJA_ENABLE_TBB) - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetKernelExecPols = camp::list< diff --git a/test/functional/kernel/nested-loop-segment-types/tests/test-kernel-nested-loops-segment-types.hpp b/test/functional/kernel/nested-loop-segment-types/tests/test-kernel-nested-loops-segment-types.hpp index 9c7a9db158..1c1eafabc5 100644 --- a/test/functional/kernel/nested-loop-segment-types/tests/test-kernel-nested-loops-segment-types.hpp +++ b/test/functional/kernel/nested-loop-segment-types/tests/test-kernel-nested-loops-segment-types.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/CMakeLists.txt b/test/functional/kernel/nested-loop-view-types/CMakeLists.txt index 2380e44869..2979cafc33 100644 --- a/test/functional/kernel/nested-loop-view-types/CMakeLists.txt +++ b/test/functional/kernel/nested-loop-view-types/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/test-kernel-nested-loop-view.cpp.in b/test/functional/kernel/nested-loop-view-types/test-kernel-nested-loop-view.cpp.in index 22bfd33440..339439cc85 100644 --- a/test/functional/kernel/nested-loop-view-types/test-kernel-nested-loop-view.cpp.in +++ b/test/functional/kernel/nested-loop-view-types/test-kernel-nested-loop-view.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -100,54 +100,6 @@ using OpenMPKernel3DExecPols = camp::list< >; #endif // if defined(RAJA_ENABLE_OPENMP) -#if defined(RAJA_ENABLE_TBB) -using TBBKernel2DExecPols = -camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_static< >, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - > - ->; - -using TBBKernel3DExecPols = -camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::For<2, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_static< >, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::For<2, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - > - > - ->; -#endif // if defined(RAJA_ENABLE_TBB) - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetKernel2DExecPols = camp::list< diff --git a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView2D.hpp b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView2D.hpp index c1fc0ff247..77f168ce2f 100644 --- a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView2D.hpp +++ b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView3D.hpp b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView3D.hpp index 01ce97b494..32adc3ede0 100644 --- a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView3D.hpp +++ b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-OffsetView3D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView2D.hpp b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView2D.hpp index d0c29ec971..f83126959d 100644 --- a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView2D.hpp +++ b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView3D.hpp b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView3D.hpp index 2292e8360e..776aff7c57 100644 --- a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView3D.hpp +++ b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedOffsetView3D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView2D.hpp b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView2D.hpp index d24f4463cc..66311c43f1 100644 --- a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView2D.hpp +++ b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView3D.hpp b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView3D.hpp index 6f5747318f..c3cb31ddce 100644 --- a/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView3D.hpp +++ b/test/functional/kernel/nested-loop-view-types/tests/test-kernel-nested-loop-PermutedView3D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/CMakeLists.txt b/test/functional/kernel/nested-loop/CMakeLists.txt index cc8abb6fe8..95f85b2912 100644 --- a/test/functional/kernel/nested-loop/CMakeLists.txt +++ b/test/functional/kernel/nested-loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/test-kernel-nested-loop.cpp.in b/test/functional/kernel/nested-loop/test-kernel-nested-loop.cpp.in index b6df4f0fd9..5999101f95 100644 --- a/test/functional/kernel/nested-loop/test-kernel-nested-loop.cpp.in +++ b/test/functional/kernel/nested-loop/test-kernel-nested-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -67,21 +67,6 @@ using OpenMPTargetKernelNestedLoopExecPols = camp::list< #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelNestedLoopExecPols = camp::list< - - // Depth 2 Exec Pols - NestedLoopData, - NestedLoopData, - - // Depth 3 Exec Pols - NestedLoopData, - NestedLoopData - >; - -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaKernelNestedLoopExecPols = camp::list< diff --git a/test/functional/kernel/nested-loop/tests/nested-loop-Basic-impl.hpp b/test/functional/kernel/nested-loop/tests/nested-loop-Basic-impl.hpp index 5ba805d6fd..e5b99159b8 100644 --- a/test/functional/kernel/nested-loop/tests/nested-loop-Basic-impl.hpp +++ b/test/functional/kernel/nested-loop/tests/nested-loop-Basic-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambda-impl.hpp b/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambda-impl.hpp index 12b273f4fb..5c2cdd5149 100644 --- a/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambda-impl.hpp +++ b/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambda-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambdaParam-impl.hpp b/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambdaParam-impl.hpp index 3e1f0a39ec..8c62b908e3 100644 --- a/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambdaParam-impl.hpp +++ b/test/functional/kernel/nested-loop/tests/nested-loop-MultiLambdaParam-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-Basic.hpp b/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-Basic.hpp index 480c98646f..37cab1789b 100644 --- a/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-Basic.hpp +++ b/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-Basic.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambda.hpp b/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambda.hpp index b5e3eea10b..cddcb005f4 100644 --- a/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambda.hpp +++ b/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambda.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambdaParam.hpp b/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambdaParam.hpp index 2a03da15c0..eae84e88c9 100644 --- a/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambdaParam.hpp +++ b/test/functional/kernel/nested-loop/tests/test-kernel-nested-loop-MultiLambdaParam.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-Basic.hpp b/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-Basic.hpp index adee629c02..7845500ae7 100644 --- a/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-Basic.hpp +++ b/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-Basic.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambda.hpp b/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambda.hpp index 408907a834..75616bea68 100644 --- a/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambda.hpp +++ b/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambda.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambdaParam.hpp b/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambdaParam.hpp index 2ed70c915d..02dbe213cc 100644 --- a/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambdaParam.hpp +++ b/test/functional/kernel/nested-loop/tests/test-kernel-resource-nested-loop-MultiLambdaParam.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/CMakeLists.txt b/test/functional/kernel/reduce-loc/CMakeLists.txt index 7208d9ecfa..9c78628c16 100644 --- a/test/functional/kernel/reduce-loc/CMakeLists.txt +++ b/test/functional/kernel/reduce-loc/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/test-kernel-reduceloc.cpp.in b/test/functional/kernel/reduce-loc/test-kernel-reduceloc.cpp.in index 0aae49e462..ac85c9f36c 100644 --- a/test/functional/kernel/reduce-loc/test-kernel-reduceloc.cpp.in +++ b/test/functional/kernel/reduce-loc/test-kernel-reduceloc.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -121,50 +121,6 @@ using OpenMPTargetKernelLocForallPols = #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelLocExecPols = - camp::list< - - RAJA::KernelPolicy< - RAJA::statement::For<1, RAJA::tbb_for_exec, // row - RAJA::statement::For<0, RAJA::tbb_for_exec, // col - RAJA::statement::Lambda<0> - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::For<1, RAJA::tbb_for_exec, // row - RAJA::statement::For<0, RAJA::seq_exec, // col - RAJA::statement::Lambda<0> - > - > - > - - // TODO: This produces inaccurate loc reductions for gcc 6 and 4.9.3. - //RAJA::KernelPolicy< - // RAJA::statement::For<1, RAJA::seq_exec, // row - // RAJA::statement::For<0, RAJA::tbb_for_exec, // col - // RAJA::statement::Lambda<0> - // > - // > - //> - - >; - -using TBBKernelLocReducePols = - camp::list< - RAJA::tbb_reduce - >; - -using TBBKernelLocForallPols = - camp::list< - RAJA::tbb_for_exec - >; - -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaKernelLocExecPols = diff --git a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2D.hpp b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2D.hpp index aca24f75aa..f2f2d0acab 100644 --- a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2D.hpp +++ b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DView.hpp b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DView.hpp index bca662dd9c..bd648ff88c 100644 --- a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DView.hpp +++ b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DViewTuple.hpp b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DViewTuple.hpp index 75d28308e6..045fc8e97e 100644 --- a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DViewTuple.hpp +++ b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Max2DViewTuple.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2D.hpp b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2D.hpp index 43e6d08978..090280813c 100644 --- a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2D.hpp +++ b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DView.hpp b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DView.hpp index 4a20560f77..cf0791e8d5 100644 --- a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DView.hpp +++ b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DView.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DViewTuple.hpp b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DViewTuple.hpp index d327322d5e..4234471f89 100644 --- a/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DViewTuple.hpp +++ b/test/functional/kernel/reduce-loc/tests/test-kernel-reduceloc-Min2DViewTuple.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/region/CMakeLists.txt b/test/functional/kernel/region/CMakeLists.txt index b7decc0be2..7e449bcfb8 100644 --- a/test/functional/kernel/region/CMakeLists.txt +++ b/test/functional/kernel/region/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/region/test-kernel-region-sync.cpp.in b/test/functional/kernel/region/test-kernel-region-sync.cpp.in index 62f68c6ed1..98adc72e46 100644 --- a/test/functional/kernel/region/test-kernel-region-sync.cpp.in +++ b/test/functional/kernel/region/test-kernel-region-sync.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/region/test-kernel-region.cpp.in b/test/functional/kernel/region/test-kernel-region.cpp.in index cd155cc725..d5a1cdf2c1 100644 --- a/test/functional/kernel/region/test-kernel-region.cpp.in +++ b/test/functional/kernel/region/test-kernel-region.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/region/tests/test-kernel-region-data.hpp b/test/functional/kernel/region/tests/test-kernel-region-data.hpp index 67e8531d37..f0b9f58ff6 100644 --- a/test/functional/kernel/region/tests/test-kernel-region-data.hpp +++ b/test/functional/kernel/region/tests/test-kernel-region-data.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/region/tests/test-kernel-region-sync.hpp b/test/functional/kernel/region/tests/test-kernel-region-sync.hpp index cc3237d76e..b9ad122d2b 100644 --- a/test/functional/kernel/region/tests/test-kernel-region-sync.hpp +++ b/test/functional/kernel/region/tests/test-kernel-region-sync.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/region/tests/test-kernel-region.hpp b/test/functional/kernel/region/tests/test-kernel-region.hpp index 3c65f47a00..bb2ec449e0 100644 --- a/test/functional/kernel/region/tests/test-kernel-region.hpp +++ b/test/functional/kernel/region/tests/test-kernel-region.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/single-loop-tile-icount-tcount/CMakeLists.txt b/test/functional/kernel/single-loop-tile-icount-tcount/CMakeLists.txt index e1c781199f..482a78297d 100644 --- a/test/functional/kernel/single-loop-tile-icount-tcount/CMakeLists.txt +++ b/test/functional/kernel/single-loop-tile-icount-tcount/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/single-loop-tile-icount-tcount/test-kernel-single-loop-tile-count.cpp.in b/test/functional/kernel/single-loop-tile-icount-tcount/test-kernel-single-loop-tile-count.cpp.in index 73b498b816..bd067b32c9 100644 --- a/test/functional/kernel/single-loop-tile-icount-tcount/test-kernel-single-loop-tile-count.cpp.in +++ b/test/functional/kernel/single-loop-tile-icount-tcount/test-kernel-single-loop-tile-count.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -93,37 +93,6 @@ using OpenMPKernelTileTCountExecPols = camp::list< >; #endif // if defined(RAJA_ENABLE_OPENMP) -#if defined(RAJA_ENABLE_TBB) -// -// Num reduction policies must match num exec policies. -// -using TBBReducePols = camp::list< RAJA::tbb_reduce >; - -using TBBKernelForICountExecPols = camp::list< - - RAJA::KernelPolicy< - RAJA::statement::Tile<0, RAJA::tile_fixed<@TILESIZE@>, RAJA::seq_exec, - RAJA::statement::ForICount<0, RAJA::statement::Param<0>, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0> - > - > - > - ->; - -using TBBKernelTileTCountExecPols = camp::list< - - RAJA::KernelPolicy< - RAJA::statement::TileTCount<0, RAJA::statement::Param<0>, RAJA::tile_fixed<@TILESIZE@>, RAJA::seq_exec, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0> - > - > - > - ->; -#endif // if defined(RAJA_ENABLE_TBB) - #if defined(RAJA_ENABLE_TARGET_OPENMP) // // Num reduction policies must match num exec policies. diff --git a/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-ForICount.hpp b/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-ForICount.hpp index 31b71b2717..82e749d226 100644 --- a/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-ForICount.hpp +++ b/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-ForICount.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-TileTCount.hpp b/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-TileTCount.hpp index 9f7468304a..e745a8d08b 100644 --- a/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-TileTCount.hpp +++ b/test/functional/kernel/single-loop-tile-icount-tcount/tests/test-kernel-single-loop-TileTCount.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/tile-variants/CMakeLists.txt b/test/functional/kernel/tile-variants/CMakeLists.txt index de89af429b..02d5aa2fd2 100644 --- a/test/functional/kernel/tile-variants/CMakeLists.txt +++ b/test/functional/kernel/tile-variants/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -55,8 +55,7 @@ set(TILETYPES LocalArray2D) foreach( TILE_BACKEND ${KERNEL_BACKENDS} ) foreach( TILE_TYPE ${TILETYPES} ) # Removing OpenMPTarget because local array capability does not exist - # TBB not working for local array - if( NOT ((TILE_BACKEND STREQUAL "OpenMPTarget") OR (TILE_BACKEND STREQUAL "TBB") OR (TILE_BACKEND STREQUAL "Sycl")) ) + if( NOT ((TILE_BACKEND STREQUAL "OpenMPTarget") OR (TILE_BACKEND STREQUAL "Sycl")) ) configure_file( test-kernel-tilelocal.cpp.in test-kernel-tile-${TILE_TYPE}-${TILE_BACKEND}.cpp ) raja_add_test( NAME test-kernel-tile-${TILE_TYPE}-${TILE_BACKEND} diff --git a/test/functional/kernel/tile-variants/test-kernel-tiledyn.cpp.in b/test/functional/kernel/tile-variants/test-kernel-tiledyn.cpp.in index f2f79501bc..689a218002 100644 --- a/test/functional/kernel/tile-variants/test-kernel-tiledyn.cpp.in +++ b/test/functional/kernel/tile-variants/test-kernel-tiledyn.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -110,51 +110,6 @@ using OpenMPTargetKernelTileExecPols = #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelTileExecPols = - camp::list< - - RAJA::KernelPolicy< - RAJA::statement::Tile<1, RAJA::tile_dynamic<1>, RAJA::tbb_for_exec, - RAJA::statement::Tile<0, RAJA::tile_dynamic<0>, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::tbb_for_exec, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0,1>, RAJA::Params<>> - > - > - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::Tile<1, RAJA::tile_dynamic<1>, RAJA::tbb_for_exec, - RAJA::statement::Tile<0, RAJA::tile_dynamic<0>, RAJA::seq_exec, - RAJA::statement::For<1, RAJA::tbb_for_exec, - RAJA::statement::For<0, RAJA::seq_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0,1>, RAJA::Params<>> - > - > - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::Tile<1, RAJA::tile_dynamic<1>, RAJA::seq_exec, - RAJA::statement::Tile<0, RAJA::tile_dynamic<0>, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0, RAJA::Segs<0,1>, RAJA::Params<>> - > - > - > - > - > - - >; - -#endif // RAJA_ENABLE_TBB - // Dynamic tiling not yet implemented for Cuda or Hip //#if defined(RAJA_ENABLE_CUDA) // diff --git a/test/functional/kernel/tile-variants/test-kernel-tilefixed.cpp.in b/test/functional/kernel/tile-variants/test-kernel-tilefixed.cpp.in index 41dae45b29..668943051a 100644 --- a/test/functional/kernel/tile-variants/test-kernel-tilefixed.cpp.in +++ b/test/functional/kernel/tile-variants/test-kernel-tilefixed.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -111,51 +111,6 @@ using OpenMPTargetKernelTileExecPols = #endif // RAJA_ENABLE_TARGET_OPENMP -#if defined(RAJA_ENABLE_TBB) - -using TBBKernelTileExecPols = - camp::list< - - RAJA::KernelPolicy< - RAJA::statement::Tile<1, RAJA::tile_fixed, RAJA::tbb_for_exec, - RAJA::statement::Tile<0, RAJA::tile_fixed, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::tbb_for_exec, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0> - > - > - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::Tile<1, RAJA::tile_fixed, RAJA::tbb_for_exec, - RAJA::statement::Tile<0, RAJA::tile_fixed, RAJA::seq_exec, - RAJA::statement::For<1, RAJA::tbb_for_exec, - RAJA::statement::For<0, RAJA::seq_exec, - RAJA::statement::Lambda<0> - > - > - > - > - >, - - RAJA::KernelPolicy< - RAJA::statement::Tile<1, RAJA::tile_fixed, RAJA::seq_exec, - RAJA::statement::Tile<0, RAJA::tile_fixed, RAJA::tbb_for_exec, - RAJA::statement::For<1, RAJA::seq_exec, - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0> - > - > - > - > - > - - >; - -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaKernelTileExecPols = diff --git a/test/functional/kernel/tile-variants/test-kernel-tilelocal.cpp.in b/test/functional/kernel/tile-variants/test-kernel-tilelocal.cpp.in index 4b7ef83720..e4917a997e 100644 --- a/test/functional/kernel/tile-variants/test-kernel-tilelocal.cpp.in +++ b/test/functional/kernel/tile-variants/test-kernel-tilelocal.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Dynamic2D.hpp b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Dynamic2D.hpp index 1adc3f6247..ccb57cfc62 100644 --- a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Dynamic2D.hpp +++ b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Dynamic2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2D.hpp b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2D.hpp index 9e03ab67e0..9013e5c9ea 100644 --- a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2D.hpp +++ b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DMinMax.hpp b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DMinMax.hpp index e550e5a774..ac876065a1 100644 --- a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DMinMax.hpp +++ b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DMinMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DSum.hpp b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DSum.hpp index fbc7443393..33da6d3c7d 100644 --- a/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DSum.hpp +++ b/test/functional/kernel/tile-variants/tests/test-kernel-tile-Fixed2DSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/tile-variants/tests/test-kernel-tile-LocalArray2D.hpp b/test/functional/kernel/tile-variants/tests/test-kernel-tile-LocalArray2D.hpp index df1ba38437..017512c50c 100644 --- a/test/functional/kernel/tile-variants/tests/test-kernel-tile-LocalArray2D.hpp +++ b/test/functional/kernel/tile-variants/tests/test-kernel-tile-LocalArray2D.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/CMakeLists.txt b/test/functional/kernel/warp-thread/CMakeLists.txt index dc16e84df3..07c265833b 100644 --- a/test/functional/kernel/warp-thread/CMakeLists.txt +++ b/test/functional/kernel/warp-thread/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/test-kernel-warp-thread.cpp.in b/test/functional/kernel/warp-thread/test-kernel-warp-thread.cpp.in index b61c37c188..b37b8a368a 100644 --- a/test/functional/kernel/warp-thread/test-kernel-warp-thread.cpp.in +++ b/test/functional/kernel/warp-thread/test-kernel-warp-thread.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceMask.hpp b/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceMask.hpp index 73c56affa2..13f9c62a45 100644 --- a/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceMask.hpp +++ b/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceMask.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceWarp.hpp b/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceWarp.hpp index 54739bfe34..cda8aaba59 100644 --- a/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceWarp.hpp +++ b/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-ReduceWarp.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-WarpLoop.hpp b/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-WarpLoop.hpp index e45968bb1f..f3194fba44 100644 --- a/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-WarpLoop.hpp +++ b/test/functional/kernel/warp-thread/tests/test-kernel-resource-warp-thread-WarpLoop.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceMask.hpp b/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceMask.hpp index 8687ce6e14..08e9a0c381 100644 --- a/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceMask.hpp +++ b/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceMask.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceWarp.hpp b/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceWarp.hpp index 065b5979e1..e61c05446c 100644 --- a/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceWarp.hpp +++ b/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-ReduceWarp.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-WarpLoop.hpp b/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-WarpLoop.hpp index 3e284ee5e8..c435c484b2 100644 --- a/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-WarpLoop.hpp +++ b/test/functional/kernel/warp-thread/tests/test-kernel-warp-thread-WarpLoop.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/warp-thread-ReduceMask-impl.hpp b/test/functional/kernel/warp-thread/tests/warp-thread-ReduceMask-impl.hpp index 0febbac7f5..797379e890 100644 --- a/test/functional/kernel/warp-thread/tests/warp-thread-ReduceMask-impl.hpp +++ b/test/functional/kernel/warp-thread/tests/warp-thread-ReduceMask-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/warp-thread-ReduceWarp-impl.hpp b/test/functional/kernel/warp-thread/tests/warp-thread-ReduceWarp-impl.hpp index 80115be6cd..1771b99665 100644 --- a/test/functional/kernel/warp-thread/tests/warp-thread-ReduceWarp-impl.hpp +++ b/test/functional/kernel/warp-thread/tests/warp-thread-ReduceWarp-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/kernel/warp-thread/tests/warp-thread-WarpLoop-impl.hpp b/test/functional/kernel/warp-thread/tests/warp-thread-WarpLoop-impl.hpp index a2b81cf9c6..ba4f445c88 100644 --- a/test/functional/kernel/warp-thread/tests/warp-thread-WarpLoop-impl.hpp +++ b/test/functional/kernel/warp-thread/tests/warp-thread-WarpLoop-impl.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/CMakeLists.txt b/test/functional/launch/CMakeLists.txt index 8975e38f78..3e83383833 100644 --- a/test/functional/launch/CMakeLists.txt +++ b/test/functional/launch/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -28,6 +28,8 @@ add_subdirectory(run-time-switch) #Adapted from forall test add_subdirectory(reduce-basic) +add_subdirectory(reduce-params) + add_subdirectory(segment) add_subdirectory(shared_mem) diff --git a/test/functional/launch/nested_direct/CMakeLists.txt b/test/functional/launch/nested_direct/CMakeLists.txt index c795b833a8..11ea7dded5 100644 --- a/test/functional/launch/nested_direct/CMakeLists.txt +++ b/test/functional/launch/nested_direct/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_direct/test-launch-nested.cpp.in b/test/functional/launch/nested_direct/test-launch-nested.cpp.in index d177655d99..08ebe3efb1 100644 --- a/test/functional/launch/nested_direct/test-launch-nested.cpp.in +++ b/test/functional/launch/nested_direct/test-launch-nested.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_direct/tests/test-launch-nested-Direct.hpp b/test/functional/launch/nested_direct/tests/test-launch-nested-Direct.hpp index 5caf46a2d1..a730d030a7 100644 --- a/test/functional/launch/nested_direct/tests/test-launch-nested-Direct.hpp +++ b/test/functional/launch/nested_direct/tests/test-launch-nested-Direct.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_loop/CMakeLists.txt b/test/functional/launch/nested_loop/CMakeLists.txt index ab7d0245f0..0f5480b96e 100644 --- a/test/functional/launch/nested_loop/CMakeLists.txt +++ b/test/functional/launch/nested_loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_loop/test-launch-nested.cpp.in b/test/functional/launch/nested_loop/test-launch-nested.cpp.in index 00eaff7034..b0eb457cf9 100644 --- a/test/functional/launch/nested_loop/test-launch-nested.cpp.in +++ b/test/functional/launch/nested_loop/test-launch-nested.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_loop/tests/test-launch-nested-Loop.hpp b/test/functional/launch/nested_loop/tests/test-launch-nested-Loop.hpp index 4ade3f0e4e..8f3b9702d0 100644 --- a/test/functional/launch/nested_loop/tests/test-launch-nested-Loop.hpp +++ b/test/functional/launch/nested_loop/tests/test-launch-nested-Loop.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_tile_direct/CMakeLists.txt b/test/functional/launch/nested_tile_direct/CMakeLists.txt index f7ace622f7..585c572fc3 100644 --- a/test/functional/launch/nested_tile_direct/CMakeLists.txt +++ b/test/functional/launch/nested_tile_direct/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_tile_direct/test-launch-nested-tile-direct.cpp.in b/test/functional/launch/nested_tile_direct/test-launch-nested-tile-direct.cpp.in index 3152799f7b..98a3dd239a 100644 --- a/test/functional/launch/nested_tile_direct/test-launch-nested-tile-direct.cpp.in +++ b/test/functional/launch/nested_tile_direct/test-launch-nested-tile-direct.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_tile_direct/tests/test-launch-nested-Tile-Direct.hpp b/test/functional/launch/nested_tile_direct/tests/test-launch-nested-Tile-Direct.hpp index 6f7e473668..793d432987 100644 --- a/test/functional/launch/nested_tile_direct/tests/test-launch-nested-Tile-Direct.hpp +++ b/test/functional/launch/nested_tile_direct/tests/test-launch-nested-Tile-Direct.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_tile_loop/CMakeLists.txt b/test/functional/launch/nested_tile_loop/CMakeLists.txt index c3e8334503..e3e3ddb56c 100644 --- a/test/functional/launch/nested_tile_loop/CMakeLists.txt +++ b/test/functional/launch/nested_tile_loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_tile_loop/test-launch-nested-tile-loop.cpp.in b/test/functional/launch/nested_tile_loop/test-launch-nested-tile-loop.cpp.in index 493be2181a..bf3fea94cc 100644 --- a/test/functional/launch/nested_tile_loop/test-launch-nested-tile-loop.cpp.in +++ b/test/functional/launch/nested_tile_loop/test-launch-nested-tile-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/nested_tile_loop/tests/test-launch-nested-Tile-Loop.hpp b/test/functional/launch/nested_tile_loop/tests/test-launch-nested-Tile-Loop.hpp index a7d56987a2..07deab0376 100644 --- a/test/functional/launch/nested_tile_loop/tests/test-launch-nested-Tile-Loop.hpp +++ b/test/functional/launch/nested_tile_loop/tests/test-launch-nested-Tile-Loop.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/reduce-basic/CMakeLists.txt b/test/functional/launch/reduce-basic/CMakeLists.txt index aff230d30e..fc8b07ab13 100644 --- a/test/functional/launch/reduce-basic/CMakeLists.txt +++ b/test/functional/launch/reduce-basic/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/reduce-basic/test-launch-basic-reduce.cpp.in b/test/functional/launch/reduce-basic/test-launch-basic-reduce.cpp.in index 532b12c177..cb6f743137 100644 --- a/test/functional/launch/reduce-basic/test-launch-basic-reduce.cpp.in +++ b/test/functional/launch/reduce-basic/test-launch-basic-reduce.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceBitAnd.hpp b/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceBitAnd.hpp index e6dcc56288..aed4b9618e 100644 --- a/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceBitAnd.hpp +++ b/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceBitAnd.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceMin.hpp b/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceMin.hpp index b7734cf49c..3e8c86ffd8 100644 --- a/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceMin.hpp +++ b/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceMin.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceSum.hpp b/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceSum.hpp index 7c17f359b9..798988f116 100644 --- a/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceSum.hpp +++ b/test/functional/launch/reduce-basic/tests/test-launch-basic-ReduceSum.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/reduce-params/CMakeLists.txt b/test/functional/launch/reduce-params/CMakeLists.txt new file mode 100644 index 0000000000..630f78eb9b --- /dev/null +++ b/test/functional/launch/reduce-params/CMakeLists.txt @@ -0,0 +1,69 @@ +############################################################################### +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +# and RAJA project contributors. See the RAJA/LICENSE file for details. +# +# SPDX-License-Identifier: (BSD-3-Clause) +############################################################################### + +# +# List of core reduction types for generating test files. +# Only does a couple as they are covered in the forall tests +#set(REDUCETYPES ReduceSum ReduceMin) +set(REDUCETYPES ReduceSum ReduceMin) + +set(DATATYPES CoreReductionDataTypeList) + + +# +# Generate core reduction tests for each enabled RAJA back-end +# +# Note: LAUNCH_BACKENDS is defined in ../CMakeLists.txt +# +foreach( BACKEND ${LAUNCH_BACKENDS} ) + if( NOT (BACKEND STREQUAL "Sycl")) + foreach( REDUCETYPE ${REDUCETYPES} ) + configure_file( test-launch-basic-param-expt-reduce.cpp.in + test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND}.cpp) + raja_add_test( NAME test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND} + SOURCES ${CMAKE_CURRENT_BINARY_DIR}/test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND}.cpp ) + + target_include_directories(test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND}.exe + PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tests) + endforeach() + endif() +endforeach() + +unset( DATATYPES ) +unset( REDUCETYPES ) + + + +# +# List of bitwise reduction types for generating test files. +# ReduceBitAnd ReduceBitOr -- only does one as they are covered +# in the forall tests +set(REDUCETYPES ReduceBitAnd) + +set(DATATYPES BitwiseReductionDataTypeList) + +# +# Generate bitwise reduction tests for each enabled RAJA back-end +# +# Note: LAUNCH_BACKENDS is defined in ../CMakeLists.txt +# +foreach( BACKEND ${LAUNCH_BACKENDS} ) + if( NOT (BACKEND STREQUAL "Sycl")) + foreach( REDUCETYPE ${REDUCETYPES} ) + configure_file( test-launch-basic-param-expt-reduce.cpp.in + test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND}.cpp ) + raja_add_test( NAME test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND} + SOURCES ${CMAKE_CURRENT_BINARY_DIR}/test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND}.cpp ) + + target_include_directories(test-launch-basic-param-expt-${REDUCETYPE}-${BACKEND}.exe + PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tests) + endforeach() + endif() +endforeach() + +unset( DATATYPES ) +unset( REDUCETYPES ) diff --git a/test/functional/launch/reduce-params/test-launch-basic-param-expt-reduce.cpp.in b/test/functional/launch/reduce-params/test-launch-basic-param-expt-reduce.cpp.in new file mode 100644 index 0000000000..15dd1736c0 --- /dev/null +++ b/test/functional/launch/reduce-params/test-launch-basic-param-expt-reduce.cpp.in @@ -0,0 +1,63 @@ +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +// +// test/include headers +// +#include "RAJA_test-base.hpp" +#include "RAJA_test-camp.hpp" +#include "RAJA_test-index-types.hpp" + +#include "RAJA_test-forall-data.hpp" +#include "RAJA_test-forall-execpol.hpp" +#include "RAJA_test-reducepol.hpp" +#include "RAJA_test-launch-execpol.hpp" + + +// +// Header for tests in ./tests directory +// +// Note: CMake adds ./tests as an include dir for these tests. +// +#include "test-launch-basic-param-expt-@REDUCETYPE@.hpp" + +// +// Data types for core reduction basic tests +// +using CoreReductionDataTypeList = camp::list< int, + float, + double >; + +// +// Data types for bitwise reduction basic tests +// +using BitwiseReductionDataTypeList = camp::list< int, + unsigned int >; + + +// +// These tests exercise only one index type. We parameterize here to +// make it easier to expand types in the future if needed. +// +using TestIdxTypeList = camp::list< RAJA::Index_type >; + +// +// Cartesian product of types used in parameterized tests +// +using @BACKEND@LaunchParamExptReduceBasicTypes = + Test< camp::cartesian_product>::Types; + +// +// Instantiate parameterized test +// +INSTANTIATE_TYPED_TEST_SUITE_P(@BACKEND@, + LaunchParamExpt@REDUCETYPE@BasicTest, + @BACKEND@LaunchParamExptReduceBasicTypes); diff --git a/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceBitAnd.hpp b/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceBitAnd.hpp new file mode 100644 index 0000000000..776b63f6b0 --- /dev/null +++ b/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceBitAnd.hpp @@ -0,0 +1,203 @@ +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +#ifndef __TEST_LAUNCH_PARAM_EXPT_BASIC_REDUCEBITAND_HPP__ +#define __TEST_LAUNCH_PARAM_EXPT_BASIC_REDUCEBITAND_HPP__ + +#include +#include +#include +#include + +template + +void LaunchParamExptReduceBitAndBasicTestImpl(const SEG_TYPE& seg, + const std::vector& seg_idx, + camp::resources::Resource working_res) +{ + IDX_TYPE data_len = seg_idx[seg_idx.size() - 1] + 1; + IDX_TYPE idx_len = static_cast( seg_idx.size() ); + + DATA_TYPE* working_array; + DATA_TYPE* check_array; + DATA_TYPE* test_array; + + constexpr int threads = 256; + int blocks = (seg.size() - 1)/threads + 1; + + allocateForallTestData(data_len, + working_res, + &working_array, + &check_array, + &test_array); + + // + // First a simple non-trivial test that is mildly interesting + // + for (IDX_TYPE i = 0; i < data_len; ++i) { + test_array[i] = 13; + } + working_res.memcpy(working_array, test_array, sizeof(DATA_TYPE) * data_len); + + DATA_TYPE simpand(21); + + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + RAJA::expt::Reduce(&simpand), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_simpand) { + + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + + _simpand &= working_array[idx]; + }); + + }); + + ASSERT_EQ(static_cast(simpand), 5); + + + // + // And now a randomized test that pushes zeros around + // + + const int modval = 100; + + for (IDX_TYPE i = 0; i < data_len; ++i) { + test_array[i] = static_cast( rand() % modval ); + } + working_res.memcpy(working_array, test_array, sizeof(DATA_TYPE) * data_len); + + DATA_TYPE ref_and = 0; + for (IDX_TYPE i = 0; i < idx_len; ++i) { + ref_and &= test_array[ seg_idx[i] ]; + } + + DATA_TYPE redand(0); + DATA_TYPE redand2(2); + + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + RAJA::expt::Reduce(&redand), + RAJA::expt::Reduce(&redand2), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_redand, DATA_TYPE &_redand2) { + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + _redand &= working_array[idx]; + _redand2 &= working_array[idx]; + }); + }); + + ASSERT_EQ(static_cast(redand), ref_and); + ASSERT_EQ(static_cast(redand2), ref_and); + + redand = 0; + + const int nloops = 3; + for (int j = 0; j < nloops; ++j) { + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + RAJA::expt::Reduce(&redand), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE _redand) { + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + _redand &= working_array[idx]; + }); + }); + } + + ASSERT_EQ(static_cast(redand), ref_and); + + + deallocateForallTestData(working_res, + working_array, + check_array, + test_array); +} + + +TYPED_TEST_SUITE_P(LaunchParamExptReduceBitAndBasicTest); +template +class LaunchParamExptReduceBitAndBasicTest : public ::testing::Test +{ +}; + +TYPED_TEST_P(LaunchParamExptReduceBitAndBasicTest, ReduceBitAndBasicForall) +{ + using IDX_TYPE = typename camp::at>::type; + using DATA_TYPE = typename camp::at>::type; + using WORKING_RES = typename camp::at>::type; + using LAUNCH_POLICY = typename camp::at>::type, camp::num<0>>::type; + using GLOBAL_THREAD_POLICY = typename camp::at>::type, camp::num<1>>::type; + + camp::resources::Resource working_res{WORKING_RES::get_default()}; + + std::vector seg_idx; + +// Range segment tests + RAJA::TypedRangeSegment r1( 0, 28 ); + RAJA::getIndices(seg_idx, r1); + LaunchParamExptReduceBitAndBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r1, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeSegment r2( 3, 642 ); + RAJA::getIndices(seg_idx, r2); + LaunchParamExptReduceBitAndBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r2, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeSegment r3( 0, 2057 ); + RAJA::getIndices(seg_idx, r3); + LaunchParamExptReduceBitAndBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r3, seg_idx, working_res); + +// Range-stride segment tests + seg_idx.clear(); + RAJA::TypedRangeStrideSegment r4( 0, 188, 2 ); + RAJA::getIndices(seg_idx, r4); + LaunchParamExptReduceBitAndBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r4, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeStrideSegment r5( 3, 1029, 3 ); + RAJA::getIndices(seg_idx, r5); + LaunchParamExptReduceBitAndBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r5, seg_idx, working_res); + + // List segment tests + seg_idx.clear(); + IDX_TYPE last = 10567; + srand( time(NULL) ); + for (IDX_TYPE i = 0; i < last; ++i) { + IDX_TYPE randval = IDX_TYPE( rand() % RAJA::stripIndexType(last) ); + if ( i < randval ) { + seg_idx.push_back(i); + } + } + RAJA::TypedListSegment l1( &seg_idx[0], seg_idx.size(), + working_res ); + LaunchParamExptReduceBitAndBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + l1, seg_idx, working_res); +} + +REGISTER_TYPED_TEST_SUITE_P(LaunchParamExptReduceBitAndBasicTest, + ReduceBitAndBasicForall); + +#endif // __TEST_LAUNCH_BASIC_REDUCEBITOR_HPP__ diff --git a/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceMin.hpp b/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceMin.hpp new file mode 100644 index 0000000000..2936f2de09 --- /dev/null +++ b/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceMin.hpp @@ -0,0 +1,198 @@ +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +#ifndef __TEST_LAUNCH_PARAM_EXPT_BASIC_REDUCEMIN_HPP__ +#define __TEST_LAUNCH_PARAM_EXPT_BASIC_REDUCEMIN_HPP__ + +#include +#include +#include +#include + +template +void LaunchParamExptReduceMinBasicTestImpl(const SEG_TYPE& seg, + const std::vector& seg_idx, + camp::resources::Resource working_res) +{ + IDX_TYPE data_len = seg_idx[seg_idx.size() - 1] + 1; + IDX_TYPE idx_len = static_cast( seg_idx.size() ); + + DATA_TYPE* working_array; + DATA_TYPE* check_array; + DATA_TYPE* test_array; + + constexpr int threads = 256; + int blocks = (seg.size() - 1)/threads + 1; + + allocateForallTestData(data_len, + working_res, + &working_array, + &check_array, + &test_array); + + const int modval = 100; + const DATA_TYPE min_init = modval+1; + const DATA_TYPE small_min = -modval; + + for (IDX_TYPE i = 0; i < data_len; ++i) { + test_array[i] = static_cast( rand() % modval ); + } + + DATA_TYPE ref_min = min_init; + for (IDX_TYPE i = 0; i < idx_len; ++i) { + ref_min = RAJA_MIN(test_array[ seg_idx[i] ], ref_min); + } + + working_res.memcpy(working_array, test_array, sizeof(DATA_TYPE) * data_len); + + DATA_TYPE mininit(small_min); + DATA_TYPE min(min_init); + + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + "LaunchMinBasicTest", + RAJA::expt::Reduce(&mininit), + RAJA::expt::Reduce(&min), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_mininit, DATA_TYPE &_min) { + + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + + _mininit = RAJA_MIN(working_array[idx], _mininit); + _min = RAJA_MIN(working_array[idx], _min); + + }); + + }); + + + ASSERT_EQ(static_cast(mininit), small_min); + ASSERT_EQ(static_cast(min), ref_min); + + min = min_init; + ASSERT_EQ(static_cast(min), min_init); + + DATA_TYPE factor = 3; + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + RAJA::expt::Reduce(&min), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_min) { + + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + + _min = RAJA_MIN(working_array[idx] * factor, _min); + }); + + }); + + ASSERT_EQ(static_cast(min), ref_min * factor); + + + factor = 2; + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + RAJA::expt::Reduce(&min), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_min) { + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + + _min = RAJA_MIN(working_array[idx] * factor, _min); + }); + }); + + ASSERT_EQ(static_cast(min), ref_min * factor); + + + deallocateForallTestData(working_res, + working_array, + check_array, + test_array); +} + + +TYPED_TEST_SUITE_P(LaunchParamExptReduceMinBasicTest); +template +class LaunchParamExptReduceMinBasicTest : public ::testing::Test +{ +}; + +TYPED_TEST_P(LaunchParamExptReduceMinBasicTest, ReduceMinBasicForall) +{ + using IDX_TYPE = typename camp::at>::type; + using DATA_TYPE = typename camp::at>::type; + using WORKING_RES = typename camp::at>::type; + using LAUNCH_POLICY = typename camp::at>::type, camp::num<0>>::type; + using GLOBAL_THREAD_POLICY = typename camp::at>::type, camp::num<1>>::type; + + camp::resources::Resource working_res{WORKING_RES::get_default()}; + + std::vector seg_idx; + +// Range segment tests + RAJA::TypedRangeSegment r1( 0, 28 ); + RAJA::getIndices(seg_idx, r1); + LaunchParamExptReduceMinBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r1, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeSegment r2( 3, 642 ); + RAJA::getIndices(seg_idx, r2); + LaunchParamExptReduceMinBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r2, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeSegment r3( 0, 2057 ); + RAJA::getIndices(seg_idx, r3); + LaunchParamExptReduceMinBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r3, seg_idx, working_res); + +// Range-stride segment tests + seg_idx.clear(); + RAJA::TypedRangeStrideSegment r4( 0, 188, 2 ); + RAJA::getIndices(seg_idx, r4); + LaunchParamExptReduceMinBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r4, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeStrideSegment r5( 3, 1029, 3 ); + RAJA::getIndices(seg_idx, r5); + LaunchParamExptReduceMinBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r5, seg_idx, working_res); + +// List segment tests + seg_idx.clear(); + IDX_TYPE last = 10567; + srand( time(NULL) ); + for (IDX_TYPE i = 0; i < last; ++i) { + IDX_TYPE randval = IDX_TYPE( rand() % RAJA::stripIndexType(last) ); + if ( i < randval ) { + seg_idx.push_back(i); + } + } + RAJA::TypedListSegment l1( &seg_idx[0], seg_idx.size(), + working_res ); + LaunchParamExptReduceMinBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + l1, seg_idx, working_res); +} + +REGISTER_TYPED_TEST_SUITE_P(LaunchParamExptReduceMinBasicTest, + ReduceMinBasicForall); + +#endif // __TEST_LAUNCH_BASIC_REDUCEMIN_HPP__ diff --git a/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceSum.hpp b/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceSum.hpp new file mode 100644 index 0000000000..bf4b29ec28 --- /dev/null +++ b/test/functional/launch/reduce-params/tests/test-launch-basic-param-expt-ReduceSum.hpp @@ -0,0 +1,180 @@ +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +#ifndef __TEST_LAUNCH_PARAM_EXPT_BASIC_REDUCESUM_HPP__ +#define __TEST_LAUNCH_PARAM_EXPT_BASIC_REDUCESUM_HPP__ + +#include +#include +#include +#include + +template +void LaunchParamExptReduceSumBasicTestImpl(const SEG_TYPE& seg, + const std::vector& seg_idx, + camp::resources::Resource working_res) +{ + + IDX_TYPE data_len = seg_idx[seg_idx.size() - 1] + 1; + IDX_TYPE idx_len = static_cast( seg_idx.size() ); + + DATA_TYPE* working_array; + DATA_TYPE* check_array; + DATA_TYPE* test_array; + + constexpr int threads = 256; + int blocks = (seg.size() - 1)/threads + 1; + + allocateForallTestData(data_len, + working_res, + &working_array, + &check_array, + &test_array); + + const int modval = 100; + + for (IDX_TYPE i = 0; i < data_len; ++i) { + test_array[i] = static_cast( rand() % modval ); + } + + DATA_TYPE ref_sum = 0; + for (IDX_TYPE i = 0; i < idx_len; ++i) { + ref_sum += test_array[ seg_idx[i] ]; + } + + working_res.memcpy(working_array, test_array, sizeof(DATA_TYPE) * data_len); + + + DATA_TYPE sum(0), sum2(2); + + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + "LaunchSumBasicTest", + RAJA::expt::Reduce(&sum), + RAJA::expt::Reduce(&sum2), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_sum, DATA_TYPE &_sum2) { + + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + _sum += working_array[idx]; + _sum2 += working_array[idx]; + }); + + }); + + ASSERT_EQ(static_cast(sum), ref_sum); + ASSERT_EQ(static_cast(sum2), ref_sum + 2); + + sum = 0; + + const int nloops = 2; + + for (int j = 0; j < nloops; ++j) { + RAJA::launch + (RAJA::LaunchParams(RAJA::Teams(blocks), RAJA::Threads(threads)), + RAJA::expt::Reduce(&sum), + [=] RAJA_HOST_DEVICE(RAJA::LaunchContext ctx, DATA_TYPE &_sum) { + + RAJA::loop(ctx, seg, [&](IDX_TYPE idx) { + _sum += working_array[idx]; + }); + }); + } + + ASSERT_EQ(static_cast(sum), nloops * ref_sum); + + + deallocateForallTestData(working_res, + working_array, + check_array, + test_array); +} + + +TYPED_TEST_SUITE_P(LaunchParamExptReduceSumBasicTest); +template +class LaunchParamExptReduceSumBasicTest : public ::testing::Test +{ +}; + +TYPED_TEST_P(LaunchParamExptReduceSumBasicTest, ReduceSumBasicForall) +{ + using IDX_TYPE = typename camp::at>::type; + using DATA_TYPE = typename camp::at>::type; + using WORKING_RES = typename camp::at>::type; + using LAUNCH_POLICY = typename camp::at>::type, camp::num<0>>::type; + using GLOBAL_THREAD_POLICY = typename camp::at>::type, camp::num<1>>::type; + + camp::resources::Resource working_res{WORKING_RES::get_default()}; + + std::vector seg_idx; + +// Range segment tests + RAJA::TypedRangeSegment r1( 0, 28 ); + RAJA::getIndices(seg_idx, r1); + LaunchParamExptReduceSumBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r1, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeSegment r2( 3, 642 ); + RAJA::getIndices(seg_idx, r2); + LaunchParamExptReduceSumBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r2, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeSegment r3( 0, 2057 ); + RAJA::getIndices(seg_idx, r3); + LaunchParamExptReduceSumBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r3, seg_idx, working_res); + +// Range-stride segment tests + seg_idx.clear(); + RAJA::TypedRangeStrideSegment r4( 0, 188, 2 ); + RAJA::getIndices(seg_idx, r4); + LaunchParamExptReduceSumBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r4, seg_idx, working_res); + + seg_idx.clear(); + RAJA::TypedRangeStrideSegment r5( 3, 1029, 3 ); + RAJA::getIndices(seg_idx, r5); + LaunchParamExptReduceSumBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + r5, seg_idx, working_res); + +// List segment tests + seg_idx.clear(); + IDX_TYPE last = 10567; + srand( time(NULL) ); + for (IDX_TYPE i = 0; i < last; ++i) { + IDX_TYPE randval = IDX_TYPE( rand() % RAJA::stripIndexType(last) ); + if ( i < randval ) { + seg_idx.push_back(i); + } + } + RAJA::TypedListSegment l1( &seg_idx[0], seg_idx.size(), + working_res ); + LaunchParamExptReduceSumBasicTestImpl, + LAUNCH_POLICY, GLOBAL_THREAD_POLICY>( + l1, seg_idx, working_res); +} + +REGISTER_TYPED_TEST_SUITE_P(LaunchParamExptReduceSumBasicTest, + ReduceSumBasicForall); + +#endif // __TEST_LAUNCH_BASIC_REDUCESUM_HPP__ diff --git a/test/functional/launch/run-time-switch/CMakeLists.txt b/test/functional/launch/run-time-switch/CMakeLists.txt index 8b2f077fdc..d3d06233be 100644 --- a/test/functional/launch/run-time-switch/CMakeLists.txt +++ b/test/functional/launch/run-time-switch/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/run-time-switch/test-launch.cpp.in b/test/functional/launch/run-time-switch/test-launch.cpp.in index 2553ea1ebb..0339c227d1 100644 --- a/test/functional/launch/run-time-switch/test-launch.cpp.in +++ b/test/functional/launch/run-time-switch/test-launch.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/run-time-switch/tests/test-launch-BasicShared.hpp b/test/functional/launch/run-time-switch/tests/test-launch-BasicShared.hpp index 3dc1de2e4f..702d5c6cd3 100644 --- a/test/functional/launch/run-time-switch/tests/test-launch-BasicShared.hpp +++ b/test/functional/launch/run-time-switch/tests/test-launch-BasicShared.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/segment/CMakeLists.txt b/test/functional/launch/segment/CMakeLists.txt index 4d6d91e469..9d0f6c8fa3 100644 --- a/test/functional/launch/segment/CMakeLists.txt +++ b/test/functional/launch/segment/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/segment/test-launch-segment.cpp.in b/test/functional/launch/segment/test-launch-segment.cpp.in index a68abc5b1a..6f31e25d92 100644 --- a/test/functional/launch/segment/test-launch-segment.cpp.in +++ b/test/functional/launch/segment/test-launch-segment.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/segment/tests/test-launch-ListSegment.hpp b/test/functional/launch/segment/tests/test-launch-ListSegment.hpp index a7929aebf7..9ed358208f 100644 --- a/test/functional/launch/segment/tests/test-launch-ListSegment.hpp +++ b/test/functional/launch/segment/tests/test-launch-ListSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/segment/tests/test-launch-RangeSegment.hpp b/test/functional/launch/segment/tests/test-launch-RangeSegment.hpp index 9a5856777c..aa2cb2c4b5 100644 --- a/test/functional/launch/segment/tests/test-launch-RangeSegment.hpp +++ b/test/functional/launch/segment/tests/test-launch-RangeSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/segment/tests/test-launch-RangeStrideSegment.hpp b/test/functional/launch/segment/tests/test-launch-RangeStrideSegment.hpp index 690b61a29c..94a1a77bcf 100644 --- a/test/functional/launch/segment/tests/test-launch-RangeStrideSegment.hpp +++ b/test/functional/launch/segment/tests/test-launch-RangeStrideSegment.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/tile_icount_direct/CMakeLists.txt b/test/functional/launch/tile_icount_direct/CMakeLists.txt index 0e05771192..6270f99f1a 100644 --- a/test/functional/launch/tile_icount_direct/CMakeLists.txt +++ b/test/functional/launch/tile_icount_direct/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/tile_icount_direct/test-launch-nested-tile-icount-direct.cpp.in b/test/functional/launch/tile_icount_direct/test-launch-nested-tile-icount-direct.cpp.in index c5fe291da0..575f7166a7 100644 --- a/test/functional/launch/tile_icount_direct/test-launch-nested-tile-icount-direct.cpp.in +++ b/test/functional/launch/tile_icount_direct/test-launch-nested-tile-icount-direct.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/tile_icount_direct/tests/test-launch-nested-Tile-iCount-Direct.hpp b/test/functional/launch/tile_icount_direct/tests/test-launch-nested-Tile-iCount-Direct.hpp index cdd4a31287..72d59d290a 100644 --- a/test/functional/launch/tile_icount_direct/tests/test-launch-nested-Tile-iCount-Direct.hpp +++ b/test/functional/launch/tile_icount_direct/tests/test-launch-nested-Tile-iCount-Direct.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/tile_icount_loop/CMakeLists.txt b/test/functional/launch/tile_icount_loop/CMakeLists.txt index d632479280..0074324cf6 100644 --- a/test/functional/launch/tile_icount_loop/CMakeLists.txt +++ b/test/functional/launch/tile_icount_loop/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/tile_icount_loop/test-launch-nested-tile-icount-loop.cpp.in b/test/functional/launch/tile_icount_loop/test-launch-nested-tile-icount-loop.cpp.in index 47131b3a55..a29adaeaa3 100644 --- a/test/functional/launch/tile_icount_loop/test-launch-nested-tile-icount-loop.cpp.in +++ b/test/functional/launch/tile_icount_loop/test-launch-nested-tile-icount-loop.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/launch/tile_icount_loop/tests/test-launch-nested-Tile-iCount-Loop.hpp b/test/functional/launch/tile_icount_loop/tests/test-launch-nested-Tile-iCount-Loop.hpp index 76133f67eb..31adc84810 100644 --- a/test/functional/launch/tile_icount_loop/tests/test-launch-nested-Tile-iCount-Loop.hpp +++ b/test/functional/launch/tile_icount_loop/tests/test-launch-nested-Tile-iCount-Loop.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/scan/CMakeLists.txt b/test/functional/scan/CMakeLists.txt index 7ddf03dadb..b3d8113f9c 100644 --- a/test/functional/scan/CMakeLists.txt +++ b/test/functional/scan/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,10 +11,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND SCAN_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) - list(APPEND SCAN_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND SCAN_BACKENDS Cuda) endif() diff --git a/test/functional/scan/test-scan.cpp.in b/test/functional/scan/test-scan.cpp.in index 2b6ca41176..26aee21c7c 100644 --- a/test/functional/scan/test-scan.cpp.in +++ b/test/functional/scan/test-scan.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/scan/tests/test-scan-Exclusive.hpp b/test/functional/scan/tests/test-scan-Exclusive.hpp index 84dd0b0322..43f99f9901 100644 --- a/test/functional/scan/tests/test-scan-Exclusive.hpp +++ b/test/functional/scan/tests/test-scan-Exclusive.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/scan/tests/test-scan-ExclusiveInplace.hpp b/test/functional/scan/tests/test-scan-ExclusiveInplace.hpp index 0d0371d759..c42e9a8677 100644 --- a/test/functional/scan/tests/test-scan-ExclusiveInplace.hpp +++ b/test/functional/scan/tests/test-scan-ExclusiveInplace.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/scan/tests/test-scan-Inclusive.hpp b/test/functional/scan/tests/test-scan-Inclusive.hpp index 16ed1efeca..9fcc54ed67 100644 --- a/test/functional/scan/tests/test-scan-Inclusive.hpp +++ b/test/functional/scan/tests/test-scan-Inclusive.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/scan/tests/test-scan-InclusiveInplace.hpp b/test/functional/scan/tests/test-scan-InclusiveInplace.hpp index b7d8eb9a6a..8e4d8e93bf 100644 --- a/test/functional/scan/tests/test-scan-InclusiveInplace.hpp +++ b/test/functional/scan/tests/test-scan-InclusiveInplace.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/scan/tests/test-scan-data.hpp b/test/functional/scan/tests/test-scan-data.hpp index 391647f365..ccfdb47dc2 100644 --- a/test/functional/scan/tests/test-scan-data.hpp +++ b/test/functional/scan/tests/test-scan-data.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/CMakeLists.txt b/test/functional/tensor/CMakeLists.txt index 708c4bab87..53a4b693ea 100644 --- a/test/functional/tensor/CMakeLists.txt +++ b/test/functional/tensor/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/CMakeLists.txt b/test/functional/tensor/matrix/CMakeLists.txt index f8a081f0a0..f3f9d6095a 100644 --- a/test/functional/tensor/matrix/CMakeLists.txt +++ b/test/functional/tensor/matrix/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/test-tensor-matrix-double.hpp b/test/functional/tensor/matrix/test-tensor-matrix-double.hpp index bdf39ea308..93d08d99f8 100644 --- a/test/functional/tensor/matrix/test-tensor-matrix-double.hpp +++ b/test/functional/tensor/matrix/test-tensor-matrix-double.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/test-tensor-matrix-float.hpp b/test/functional/tensor/matrix/test-tensor-matrix-float.hpp index 8bec45c1fb..2952fb5f6f 100644 --- a/test/functional/tensor/matrix/test-tensor-matrix-float.hpp +++ b/test/functional/tensor/matrix/test-tensor-matrix-float.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/test-tensor-matrix-int32_t.hpp b/test/functional/tensor/matrix/test-tensor-matrix-int32_t.hpp index cac38ca0b1..e15729d08a 100644 --- a/test/functional/tensor/matrix/test-tensor-matrix-int32_t.hpp +++ b/test/functional/tensor/matrix/test-tensor-matrix-int32_t.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/test-tensor-matrix-int64_t.hpp b/test/functional/tensor/matrix/test-tensor-matrix-int64_t.hpp index 3e4baf81ef..f91b015b4a 100644 --- a/test/functional/tensor/matrix/test-tensor-matrix-int64_t.hpp +++ b/test/functional/tensor/matrix/test-tensor-matrix-int64_t.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/test-tensor-matrix.cpp.in b/test/functional/tensor/matrix/test-tensor-matrix.cpp.in index 1688472688..4351eceeef 100644 --- a/test/functional/tensor/matrix/test-tensor-matrix.cpp.in +++ b/test/functional/tensor/matrix/test-tensor-matrix.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-CtorGetSet.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-CtorGetSet.hpp index d142517fbe..1ceaf94b18 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-CtorGetSet.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-CtorGetSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Add.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Add.hpp index b03e698403..e4e1ff0bfb 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Add.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Add.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Divide.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Divide.hpp index 86607da81f..a06b87732c 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Divide.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Divide.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_LoadStore.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_LoadStore.hpp index 3756b1cc0f..1d1c725f52 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_LoadStore.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_LoadStore.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiply.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiply.hpp index 108c14cee5..4718172de7 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiply.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiply.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiplyAdd.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiplyAdd.hpp index fc1b60f6a7..8bebe94c26 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiplyAdd.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixMatrixMultiplyAdd.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixVector.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixVector.hpp index 3d0f5f6ea3..0d7f2fd137 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixVector.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_MatrixVector.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Negate.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Negate.hpp index 889a448aec..6336a2988d 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Negate.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Negate.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Subtract.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Subtract.hpp index 84183276ca..dd95c11904 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Subtract.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Subtract.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Transpose.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Transpose.hpp index 0a1977ceb5..9f40887dd1 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Transpose.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-ET_Transpose.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_ColMajor.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_ColMajor.hpp index be6c97246d..fff811c48f 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_ColMajor.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_ColMajor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_RowMajor.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_RowMajor.hpp index a53df7ff9c..8cae00baec 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_RowMajor.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-Load_RowMajor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_ColMajor.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_ColMajor.hpp index 9577e6df82..0961e3722d 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_ColMajor.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_ColMajor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_RowMajor.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_RowMajor.hpp index 3ac7e3ab02..94172b4342 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_RowMajor.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-Store_RowMajor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/matrix/tests/test-tensor-matrix-Transpose.hpp b/test/functional/tensor/matrix/tests/test-tensor-matrix-Transpose.hpp index cf6cc189fa..1be42b1ab8 100644 --- a/test/functional/tensor/matrix/tests/test-tensor-matrix-Transpose.hpp +++ b/test/functional/tensor/matrix/tests/test-tensor-matrix-Transpose.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/CMakeLists.txt b/test/functional/tensor/register/CMakeLists.txt index e9edfbb46e..f1a32588cd 100644 --- a/test/functional/tensor/register/CMakeLists.txt +++ b/test/functional/tensor/register/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/test-tensor-register.cpp.in b/test/functional/tensor/register/test-tensor-register.cpp.in index 56db89a2b9..f677459f28 100644 --- a/test/functional/tensor/register/test-tensor-register.cpp.in +++ b/test/functional/tensor/register/test-tensor-register.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Add.hpp b/test/functional/tensor/register/tests/test-tensor-register-Add.hpp index ef98766748..ae9a93c3ad 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Add.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Add.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Divide.hpp b/test/functional/tensor/register/tests/test-tensor-register-Divide.hpp index 91f8388f16..33efe4ba27 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Divide.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Divide.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-DotProduct.hpp b/test/functional/tensor/register/tests/test-tensor-register-DotProduct.hpp index 1711ced70f..6a414dd7d0 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-DotProduct.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-DotProduct.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-FMA.hpp b/test/functional/tensor/register/tests/test-tensor-register-FMA.hpp index cfbd7e3295..e03529d183 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-FMA.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-FMA.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-FMS.hpp b/test/functional/tensor/register/tests/test-tensor-register-FMS.hpp index 1cbd96a184..2f8b53c0c9 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-FMS.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-FMS.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Gather.hpp b/test/functional/tensor/register/tests/test-tensor-register-Gather.hpp index 1a8cc7e6b4..37429b5087 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Gather.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Gather.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-GetSet.hpp b/test/functional/tensor/register/tests/test-tensor-register-GetSet.hpp index 49cdb73c6a..194412d999 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-GetSet.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-GetSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Load.hpp b/test/functional/tensor/register/tests/test-tensor-register-Load.hpp index 1539211572..afe738b037 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Load.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Load.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Max.hpp b/test/functional/tensor/register/tests/test-tensor-register-Max.hpp index 50afcd3623..f4bce2e7a9 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Max.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Max.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Min.hpp b/test/functional/tensor/register/tests/test-tensor-register-Min.hpp index 58a85a0c16..957d9fbf1d 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Min.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Min.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Multiply.hpp b/test/functional/tensor/register/tests/test-tensor-register-Multiply.hpp index 1158cfa6ca..0ed4d4ad39 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Multiply.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Multiply.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Scatter.hpp b/test/functional/tensor/register/tests/test-tensor-register-Scatter.hpp index b6fca8a790..dc27f15b7b 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Scatter.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Scatter.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastInner.hpp b/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastInner.hpp index 19eb56ad55..c3394e981f 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastInner.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastInner.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastOuter.hpp b/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastOuter.hpp index b75ea21e09..45c5739af0 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastOuter.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-SegmentedBroadcastOuter.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-SegmentedDotProduct.hpp b/test/functional/tensor/register/tests/test-tensor-register-SegmentedDotProduct.hpp index b03c8479fa..d8243864e8 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-SegmentedDotProduct.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-SegmentedDotProduct.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumInner.hpp b/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumInner.hpp index 08e39313ea..2cfda47bcd 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumInner.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumInner.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumOuter.hpp b/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumOuter.hpp index bb553f450d..6ce6f2a6e3 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumOuter.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-SegmentedSumOuter.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Store.hpp b/test/functional/tensor/register/tests/test-tensor-register-Store.hpp index 556aa69e0d..ac508fb0d6 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Store.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Store.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/register/tests/test-tensor-register-Subtract.hpp b/test/functional/tensor/register/tests/test-tensor-register-Subtract.hpp index ea6c0247cb..fb9a0efc92 100644 --- a/test/functional/tensor/register/tests/test-tensor-register-Subtract.hpp +++ b/test/functional/tensor/register/tests/test-tensor-register-Subtract.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/CMakeLists.txt b/test/functional/tensor/vector/CMakeLists.txt index e0f82d2eb5..936a61dfcb 100644 --- a/test/functional/tensor/vector/CMakeLists.txt +++ b/test/functional/tensor/vector/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/test-tensor-vector.cpp.in b/test/functional/tensor/vector/test-tensor-vector.cpp.in index 973390bc41..4e6564ae57 100644 --- a/test/functional/tensor/vector/test-tensor-vector.cpp.in +++ b/test/functional/tensor/vector/test-tensor-vector.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/tests/test-tensor-vector-CtorGetSet.hpp b/test/functional/tensor/vector/tests/test-tensor-vector-CtorGetSet.hpp index 5806063d2e..cbcf7c8783 100644 --- a/test/functional/tensor/vector/tests/test-tensor-vector-CtorGetSet.hpp +++ b/test/functional/tensor/vector/tests/test-tensor-vector-CtorGetSet.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/tests/test-tensor-vector-FmaFms.hpp b/test/functional/tensor/vector/tests/test-tensor-vector-FmaFms.hpp index 397972d68f..61073f5cc3 100644 --- a/test/functional/tensor/vector/tests/test-tensor-vector-FmaFms.hpp +++ b/test/functional/tensor/vector/tests/test-tensor-vector-FmaFms.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef1d.hpp b/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef1d.hpp index bb2c7c4fb5..854dcba8be 100644 --- a/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef1d.hpp +++ b/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef1d.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef2d.hpp b/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef2d.hpp index 250e735bcf..93596d8f23 100644 --- a/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef2d.hpp +++ b/test/functional/tensor/vector/tests/test-tensor-vector-ForallVectorRef2d.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/tests/test-tensor-vector-MinMax.hpp b/test/functional/tensor/vector/tests/test-tensor-vector-MinMax.hpp index caf7c7ec58..4841c4e7ee 100644 --- a/test/functional/tensor/vector/tests/test-tensor-vector-MinMax.hpp +++ b/test/functional/tensor/vector/tests/test-tensor-vector-MinMax.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/tensor/vector/tests/test-tensor-vector-SumDot.hpp b/test/functional/tensor/vector/tests/test-tensor-vector-SumDot.hpp index 47544a4b8e..fa3a1caef8 100644 --- a/test/functional/tensor/vector/tests/test-tensor-vector-SumDot.hpp +++ b/test/functional/tensor/vector/tests/test-tensor-vector-SumDot.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/CMakeLists.txt b/test/functional/util/CMakeLists.txt index 5ab4e493fc..ae05bcf1c9 100644 --- a/test/functional/util/CMakeLists.txt +++ b/test/functional/util/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/test-CombiningAdapter-1D.cpp b/test/functional/util/test-CombiningAdapter-1D.cpp index 1740ec9d5d..4dc73781d5 100644 --- a/test/functional/util/test-CombiningAdapter-1D.cpp +++ b/test/functional/util/test-CombiningAdapter-1D.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/test-CombiningAdapter-2D.cpp b/test/functional/util/test-CombiningAdapter-2D.cpp index 1a6a77157d..bfb7355418 100644 --- a/test/functional/util/test-CombiningAdapter-2D.cpp +++ b/test/functional/util/test-CombiningAdapter-2D.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/test-CombiningAdapter-3D.cpp b/test/functional/util/test-CombiningAdapter-3D.cpp index 404dbd4119..9181b974b9 100644 --- a/test/functional/util/test-CombiningAdapter-3D.cpp +++ b/test/functional/util/test-CombiningAdapter-3D.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/test-PermutedCombiningAdapter-1D.cpp b/test/functional/util/test-PermutedCombiningAdapter-1D.cpp index 46982a22c3..ddcaea52d7 100644 --- a/test/functional/util/test-PermutedCombiningAdapter-1D.cpp +++ b/test/functional/util/test-PermutedCombiningAdapter-1D.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/test-PermutedCombiningAdapter-2D.cpp b/test/functional/util/test-PermutedCombiningAdapter-2D.cpp index fd24b0c3c3..fd1f6a8b0a 100644 --- a/test/functional/util/test-PermutedCombiningAdapter-2D.cpp +++ b/test/functional/util/test-PermutedCombiningAdapter-2D.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/util/test-PermutedCombiningAdapter-3D.cpp b/test/functional/util/test-PermutedCombiningAdapter-3D.cpp index c3acd03237..0943584c97 100644 --- a/test/functional/util/test-PermutedCombiningAdapter-3D.cpp +++ b/test/functional/util/test-PermutedCombiningAdapter-3D.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/workgroup/CMakeLists.txt b/test/functional/workgroup/CMakeLists.txt index 6633d7d94f..82d03626bf 100644 --- a/test/functional/workgroup/CMakeLists.txt +++ b/test/functional/workgroup/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -35,10 +35,6 @@ endmacro() set(BACKENDS Sequential) -if(RAJA_ENABLE_TBB) - list(APPEND BACKENDS TBB) -endif() - if(RAJA_ENABLE_OPENMP) list(APPEND BACKENDS OpenMP) endif() diff --git a/test/functional/workgroup/test-workgroup-Ordered.cpp.in b/test/functional/workgroup/test-workgroup-Ordered.cpp.in index db4eaf574d..146d39ea46 100644 --- a/test/functional/workgroup/test-workgroup-Ordered.cpp.in +++ b/test/functional/workgroup/test-workgroup-Ordered.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/workgroup/test-workgroup-Unordered.cpp.in b/test/functional/workgroup/test-workgroup-Unordered.cpp.in index 5a7a700553..d65c20579c 100644 --- a/test/functional/workgroup/test-workgroup-Unordered.cpp.in +++ b/test/functional/workgroup/test-workgroup-Unordered.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/workgroup/tests/test-workgroup-Ordered-MultipleReuse.hpp b/test/functional/workgroup/tests/test-workgroup-Ordered-MultipleReuse.hpp index 6cd9af71f3..4241a945dd 100644 --- a/test/functional/workgroup/tests/test-workgroup-Ordered-MultipleReuse.hpp +++ b/test/functional/workgroup/tests/test-workgroup-Ordered-MultipleReuse.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/workgroup/tests/test-workgroup-Ordered-Single.hpp b/test/functional/workgroup/tests/test-workgroup-Ordered-Single.hpp index 4312044660..c249b7de65 100644 --- a/test/functional/workgroup/tests/test-workgroup-Ordered-Single.hpp +++ b/test/functional/workgroup/tests/test-workgroup-Ordered-Single.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/workgroup/tests/test-workgroup-Unordered-MultipleReuse.hpp b/test/functional/workgroup/tests/test-workgroup-Unordered-MultipleReuse.hpp index ed8d8beba9..4207294bcf 100644 --- a/test/functional/workgroup/tests/test-workgroup-Unordered-MultipleReuse.hpp +++ b/test/functional/workgroup/tests/test-workgroup-Unordered-MultipleReuse.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/functional/workgroup/tests/test-workgroup-Unordered-Single.hpp b/test/functional/workgroup/tests/test-workgroup-Unordered-Single.hpp index e910ffac94..84d44dd496 100644 --- a/test/functional/workgroup/tests/test-workgroup-Unordered-Single.hpp +++ b/test/functional/workgroup/tests/test-workgroup-Unordered-Single.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_gtest.hpp b/test/include/RAJA_gtest.hpp index be62a39aa2..a699171a94 100644 --- a/test/include/RAJA_gtest.hpp +++ b/test/include/RAJA_gtest.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-abs.hpp b/test/include/RAJA_test-abs.hpp index 1f51623b56..85b5002d92 100644 --- a/test/include/RAJA_test-abs.hpp +++ b/test/include/RAJA_test-abs.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-atomic-ref-types.hpp b/test/include/RAJA_test-atomic-ref-types.hpp index 1ad15132fb..f854932ab8 100644 --- a/test/include/RAJA_test-atomic-ref-types.hpp +++ b/test/include/RAJA_test-atomic-ref-types.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-atomic-types.hpp b/test/include/RAJA_test-atomic-types.hpp index 62708929d3..9cf4c21355 100644 --- a/test/include/RAJA_test-atomic-types.hpp +++ b/test/include/RAJA_test-atomic-types.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-atomicpol.hpp b/test/include/RAJA_test-atomicpol.hpp index 4b58c40837..cc327d434d 100644 --- a/test/include/RAJA_test-atomicpol.hpp +++ b/test/include/RAJA_test-atomicpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -55,19 +55,6 @@ using OpenMPAtomicPols = >; #endif // RAJA_ENABLE_OPENMP -#if defined(RAJA_ENABLE_TBB) -using TBBAtomicPols = - camp::list< -#if defined(RAJA_ENABLE_CUDA) - RAJA::cuda_atomic_explicit, -#endif -#if defined(RAJA_ENABLE_HIP) - RAJA::hip_atomic_explicit, -#endif - RAJA::builtin_atomic - >; -#endif // RAJA_ENABLE_TBB - #if defined(RAJA_ENABLE_CUDA) using CudaAtomicPols = camp::list< diff --git a/test/include/RAJA_test-base.hpp b/test/include/RAJA_test-base.hpp index 1d7ccc740b..98bf53e1c2 100644 --- a/test/include/RAJA_test-base.hpp +++ b/test/include/RAJA_test-base.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-camp.hpp b/test/include/RAJA_test-camp.hpp index ad2e5d7c5b..45e125d92a 100644 --- a/test/include/RAJA_test-camp.hpp +++ b/test/include/RAJA_test-camp.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -26,10 +26,6 @@ using SequentialResourceList = HostResourceList; using OpenMPResourceList = HostResourceList; #endif -#if defined(RAJA_ENABLE_TBB) -using TBBResourceList = HostResourceList; -#endif - #if defined(RAJA_ENABLE_CUDA) using CudaResourceList = camp::list; #endif diff --git a/test/include/RAJA_test-dynamic-forall.hpp b/test/include/RAJA_test-dynamic-forall.hpp index a00480c7f5..0185061a6d 100644 --- a/test/include/RAJA_test-dynamic-forall.hpp +++ b/test/include/RAJA_test-dynamic-forall.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-forall-async-execpol.hpp b/test/include/RAJA_test-forall-async-execpol.hpp index dbea8bbd74..fa9526476e 100644 --- a/test/include/RAJA_test-forall-async-execpol.hpp +++ b/test/include/RAJA_test-forall-async-execpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -30,13 +30,6 @@ using OpenMPAsyncForallAtomicExecPols = OpenMPForallAtomicExecPols; #endif // RAJA_ENABLE_OPENMP -#if defined(RAJA_ENABLE_TBB) -using TBBAsyncForallExecPols = TBBForallExecPols; -using TBBAsyncForallReduceExecPols = TBBForallReduceExecPols; -using TBBAsyncForallAtomicExecPols = TBBForallAtomicExecPols; - -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetAsyncForallExecPols = OpenMPTargetForallExecPols; using OpenMPTargetAsyncForallReduceExecPols = OpenMPTargetForallReduceExecPols; diff --git a/test/include/RAJA_test-forall-data.hpp b/test/include/RAJA_test-forall-data.hpp index 181580d659..3ced1c4cf1 100644 --- a/test/include/RAJA_test-forall-data.hpp +++ b/test/include/RAJA_test-forall-data.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-forall-execpol.hpp b/test/include/RAJA_test-forall-execpol.hpp index 520f1af413..2fe790ff93 100644 --- a/test/include/RAJA_test-forall-execpol.hpp +++ b/test/include/RAJA_test-forall-execpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -93,20 +93,6 @@ using OpenMPForallAtomicExecPols = #endif // RAJA_ENABLE_OPENMP -#if defined(RAJA_ENABLE_TBB) -using TBBForallExecPols = camp::list< RAJA::tbb_for_exec, - RAJA::tbb_for_static< >, - RAJA::tbb_for_static< 2 >, - RAJA::tbb_for_static< 4 >, - RAJA::tbb_for_static< 8 >, - RAJA::tbb_for_dynamic >; - -using TBBForallReduceExecPols = TBBForallExecPols; - -using TBBForallAtomicExecPols = TBBForallExecPols; - -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetForallExecPols = camp::list< RAJA::omp_target_parallel_for_exec<8>, diff --git a/test/include/RAJA_test-forall-indexset-execpol.hpp b/test/include/RAJA_test-forall-indexset-execpol.hpp index df689cd196..1a25ba4daf 100644 --- a/test/include/RAJA_test-forall-indexset-execpol.hpp +++ b/test/include/RAJA_test-forall-indexset-execpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -35,30 +35,6 @@ using OpenMPForallIndexSetReduceExecPols = RAJA::ExecPolicy >; #endif -#if defined(RAJA_ENABLE_TBB) -using TBBForallIndexSetExecPols = - camp::list< RAJA::ExecPolicy, - RAJA::ExecPolicy, - RAJA::ExecPolicy, - RAJA::ExecPolicy, - RAJA::ExecPolicy, - RAJA::ExecPolicy>, - RAJA::ExecPolicy>, - RAJA::ExecPolicy>, - RAJA::ExecPolicy>, - RAJA::ExecPolicy >; - -using TBBForallIndexSetReduceExecPols = - camp::list< RAJA::ExecPolicy, - RAJA::ExecPolicy, - RAJA::ExecPolicy, - RAJA::ExecPolicy>, - RAJA::ExecPolicy>, - RAJA::ExecPolicy>, - RAJA::ExecPolicy>, - RAJA::ExecPolicy >; -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetForallIndexSetExecPols = camp::list< RAJA::ExecPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy >; using Sequential_launch_policies = camp::list; @@ -35,11 +35,11 @@ using omp_policies = camp::list< RAJA::LaunchPolicy, RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy >; using OpenMP_launch_policies = camp::list; diff --git a/test/include/RAJA_test-launch-execpol.hpp b/test/include/RAJA_test-launch-execpol.hpp index 772b04edb0..9961cd0741 100644 --- a/test/include/RAJA_test-launch-execpol.hpp +++ b/test/include/RAJA_test-launch-execpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-launch-loop-teams-threads-1D-execpol.hpp b/test/include/RAJA_test-launch-loop-teams-threads-1D-execpol.hpp index 43a2c3ccd6..9e5779853c 100644 --- a/test/include/RAJA_test-launch-loop-teams-threads-1D-execpol.hpp +++ b/test/include/RAJA_test-launch-loop-teams-threads-1D-execpol.hpp @@ -18,8 +18,8 @@ //Launch policies using seq_policies = camp::list< RAJA::LaunchPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy + RAJA::LoopPolicy, + RAJA::LoopPolicy >; using Sequential_launch_policies = camp::list< @@ -30,7 +30,7 @@ using Sequential_launch_policies = camp::list< using omp_policies = camp::list< RAJA::LaunchPolicy, RAJA::LoopPolicy, - RAJA::LoopPolicy + RAJA::LoopPolicy >; using OpenMP_launch_policies = camp::list< diff --git a/test/include/RAJA_test-launch-loop-teams-threads-3D-execpol.hpp b/test/include/RAJA_test-launch-loop-teams-threads-3D-execpol.hpp index 604d52065e..9d217757b2 100644 --- a/test/include/RAJA_test-launch-loop-teams-threads-3D-execpol.hpp +++ b/test/include/RAJA_test-launch-loop-teams-threads-3D-execpol.hpp @@ -18,12 +18,12 @@ //Launch policies using seq_policies = camp::list< RAJA::LaunchPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy >; using Sequential_launch_policies = camp::list< @@ -34,11 +34,11 @@ using Sequential_launch_policies = camp::list< using omp_policies = camp::list< RAJA::LaunchPolicy, RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy, - RAJA::LoopPolicy + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy, + RAJA::LoopPolicy >; using OpenMP_launch_policies = camp::list< diff --git a/test/include/RAJA_test-launch-runtime-execpol.hpp b/test/include/RAJA_test-launch-runtime-execpol.hpp index 93a59874c8..bec07358e6 100644 --- a/test/include/RAJA_test-launch-runtime-execpol.hpp +++ b/test/include/RAJA_test-launch-runtime-execpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-platform.hpp b/test/include/RAJA_test-platform.hpp index e4192fe6b2..7862461f18 100644 --- a/test/include/RAJA_test-platform.hpp +++ b/test/include/RAJA_test-platform.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -33,10 +33,6 @@ using SequentialPlatformList = HostPlatformList; using OpenMPPlatformList = HostPlatformList; #endif -#if defined(RAJA_ENABLE_TBB) -using TBBPlatformList = HostPlatformList; -#endif - #if defined(RAJA_ENABLE_CUDA) using CudaPlatformList = camp::list>; #endif diff --git a/test/include/RAJA_test-plugin-kernelpol.hpp b/test/include/RAJA_test-plugin-kernelpol.hpp index 8bb5248f00..9c3f0e2e52 100644 --- a/test/include/RAJA_test-plugin-kernelpol.hpp +++ b/test/include/RAJA_test-plugin-kernelpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -46,18 +46,6 @@ using OpenMPPluginKernelExecPols = camp::list< >; #endif -#if defined(RAJA_ENABLE_TBB) -using TBBPluginKernelExecPols = camp::list< - RAJA::KernelPolicy< - RAJA::statement::For<0, RAJA::tbb_for_exec, - RAJA::statement::Lambda<0>>>, - RAJA::KernelPolicy< - RAJA::statement::Tile<0, RAJA::tile_fixed<2>, RAJA::tbb_for_exec, - RAJA::statement::For<0, RAJA::seq_exec, - RAJA::statement::Lambda<0>>>> - >; -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetPluginKernelExecPols = camp::list< RAJA::KernelPolicy< diff --git a/test/include/RAJA_test-plugin-launchpol.hpp b/test/include/RAJA_test-plugin-launchpol.hpp index f10150157c..2370084633 100644 --- a/test/include/RAJA_test-plugin-launchpol.hpp +++ b/test/include/RAJA_test-plugin-launchpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-plugin-resource-launchpol.hpp b/test/include/RAJA_test-plugin-resource-launchpol.hpp index 2e22b9add8..8d08574347 100644 --- a/test/include/RAJA_test-plugin-resource-launchpol.hpp +++ b/test/include/RAJA_test-plugin-resource-launchpol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-reduce-types.hpp b/test/include/RAJA_test-reduce-types.hpp index a763802b64..8d8115321f 100644 --- a/test/include/RAJA_test-reduce-types.hpp +++ b/test/include/RAJA_test-reduce-types.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-reduceloc-types.hpp b/test/include/RAJA_test-reduceloc-types.hpp index f69f622638..336c7dd23e 100644 --- a/test/include/RAJA_test-reduceloc-types.hpp +++ b/test/include/RAJA_test-reduceloc-types.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-reducepol.hpp b/test/include/RAJA_test-reducepol.hpp index 44546a2f2b..d8d5fc670b 100644 --- a/test/include/RAJA_test-reducepol.hpp +++ b/test/include/RAJA_test-reducepol.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -28,10 +28,6 @@ using OpenMPReducePols = #endif #endif -#if defined(RAJA_ENABLE_TBB) -using TBBReducePols = camp::list< RAJA::tbb_reduce >; -#endif - #if defined(RAJA_ENABLE_TARGET_OPENMP) using OpenMPTargetReducePols = camp::list< RAJA::omp_target_reduce >; diff --git a/test/include/RAJA_test-tensor.hpp b/test/include/RAJA_test-tensor.hpp index c188c43d5a..cf633098a9 100644 --- a/test/include/RAJA_test-tensor.hpp +++ b/test/include/RAJA_test-tensor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/RAJA_test-workgroup.hpp b/test/include/RAJA_test-workgroup.hpp index 953e44b0ae..77042a43e1 100644 --- a/test/include/RAJA_test-workgroup.hpp +++ b/test/include/RAJA_test-workgroup.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -342,16 +342,6 @@ using SequentialStoragePolicyList = RAJA::constant_stride_array_of_objects >; -#if defined(RAJA_ENABLE_TBB) -using TBBExecPolicyList = - camp::list< - RAJA::tbb_work - >; -using TBBOrderedPolicyList = SequentialOrderedPolicyList; -using TBBOrderPolicyList = SequentialOrderPolicyList; -using TBBStoragePolicyList = SequentialStoragePolicyList; -#endif - #if defined(RAJA_ENABLE_OPENMP) using OpenMPExecPolicyList = camp::list< @@ -427,10 +417,6 @@ using HostAllocatorList = camp::list // using SequentialUnitTestPolicyList = camp::list; -#if defined(RAJA_ENABLE_TBB) -using TBBUnitTestPolicyList = SequentialUnitTestPolicyList; -#endif - #if defined(RAJA_ENABLE_OPENMP) using OpenMPUnitTestPolicyList = SequentialUnitTestPolicyList; #endif diff --git a/test/include/RAJA_unit-test-types.hpp b/test/include/RAJA_unit-test-types.hpp index 24974b932e..bb65134534 100644 --- a/test/include/RAJA_unit-test-types.hpp +++ b/test/include/RAJA_unit-test-types.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/include/type_helper.hpp b/test/include/type_helper.hpp index b4c1c05d4e..3a4581c8a0 100644 --- a/test/include/type_helper.hpp +++ b/test/include/type_helper.hpp @@ -9,7 +9,7 @@ */ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/install/CMakeLists.txt b/test/install/CMakeLists.txt index f552ca6b0d..1bc907c852 100644 --- a/test/install/CMakeLists.txt +++ b/test/install/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/install/using-with-cmake/CMakeLists.txt b/test/install/using-with-cmake/CMakeLists.txt index d8b79376e6..dc307d83bf 100644 --- a/test/install/using-with-cmake/CMakeLists.txt +++ b/test/install/using-with-cmake/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/install/using-with-cmake/host-config.cmake.in b/test/install/using-with-cmake/host-config.cmake.in index e9a235086f..f794b92f57 100644 --- a/test/install/using-with-cmake/host-config.cmake.in +++ b/test/install/using-with-cmake/host-config.cmake.in @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/install/using-with-cmake/using-with-cmake.cpp b/test/install/using-with-cmake/using-with-cmake.cpp index 5ee013a2ec..b748f316df 100644 --- a/test/install/using-with-cmake/using-with-cmake.cpp +++ b/test/install/using-with-cmake/using-with-cmake.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/CMakeLists.txt b/test/integration/CMakeLists.txt index bb2404b20b..30538469fc 100644 --- a/test/integration/CMakeLists.txt +++ b/test/integration/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,10 +11,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND PLUGIN_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) - list(APPEND PLUGIN_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND PLUGIN_BACKENDS Cuda) endif() diff --git a/test/integration/plugin/CMakeLists.txt b/test/integration/plugin/CMakeLists.txt index 894df4c868..2f783ba792 100644 --- a/test/integration/plugin/CMakeLists.txt +++ b/test/integration/plugin/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/plugin_to_test.cpp b/test/integration/plugin/plugin_to_test.cpp index 26323cbe49..8290804191 100644 --- a/test/integration/plugin/plugin_to_test.cpp +++ b/test/integration/plugin/plugin_to_test.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/test-plugin-forall.cpp.in b/test/integration/plugin/test-plugin-forall.cpp.in index 68013e11e6..9042b5682d 100644 --- a/test/integration/plugin/test-plugin-forall.cpp.in +++ b/test/integration/plugin/test-plugin-forall.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/test-plugin-kernel.cpp.in b/test/integration/plugin/test-plugin-kernel.cpp.in index 1c1a12253f..44581bf5d0 100644 --- a/test/integration/plugin/test-plugin-kernel.cpp.in +++ b/test/integration/plugin/test-plugin-kernel.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/test-plugin-launch.cpp.in b/test/integration/plugin/test-plugin-launch.cpp.in index fc13a41a6d..8620971ea8 100644 --- a/test/integration/plugin/test-plugin-launch.cpp.in +++ b/test/integration/plugin/test-plugin-launch.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/test-plugin-resource-launch.cpp.in b/test/integration/plugin/test-plugin-resource-launch.cpp.in index 3323d3bd84..a2d2dd4ea6 100644 --- a/test/integration/plugin/test-plugin-resource-launch.cpp.in +++ b/test/integration/plugin/test-plugin-resource-launch.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/test-plugin-workgroup.cpp.in b/test/integration/plugin/test-plugin-workgroup.cpp.in index 6b12cdaa69..f4b705ad19 100644 --- a/test/integration/plugin/test-plugin-workgroup.cpp.in +++ b/test/integration/plugin/test-plugin-workgroup.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/counter.hpp b/test/integration/plugin/tests/counter.hpp index 560f3f401d..bb22f697dd 100644 --- a/test/integration/plugin/tests/counter.hpp +++ b/test/integration/plugin/tests/counter.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/test-plugin-forall.hpp b/test/integration/plugin/tests/test-plugin-forall.hpp index 9188e004e3..3b74d6249d 100644 --- a/test/integration/plugin/tests/test-plugin-forall.hpp +++ b/test/integration/plugin/tests/test-plugin-forall.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/test-plugin-kernel.hpp b/test/integration/plugin/tests/test-plugin-kernel.hpp index b8c65685ad..b4bc9ebaf4 100644 --- a/test/integration/plugin/tests/test-plugin-kernel.hpp +++ b/test/integration/plugin/tests/test-plugin-kernel.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/test-plugin-launch.hpp b/test/integration/plugin/tests/test-plugin-launch.hpp index a7121b8a3e..2c516114cd 100644 --- a/test/integration/plugin/tests/test-plugin-launch.hpp +++ b/test/integration/plugin/tests/test-plugin-launch.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/test-plugin-resource-launch.hpp b/test/integration/plugin/tests/test-plugin-resource-launch.hpp index 6ac0ca64c3..e4c216b72b 100644 --- a/test/integration/plugin/tests/test-plugin-resource-launch.hpp +++ b/test/integration/plugin/tests/test-plugin-resource-launch.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/test-plugin-workgroup.hpp b/test/integration/plugin/tests/test-plugin-workgroup.hpp index 9c02fd9632..9e35aae7d2 100644 --- a/test/integration/plugin/tests/test-plugin-workgroup.hpp +++ b/test/integration/plugin/tests/test-plugin-workgroup.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin/tests/test-plugin.hpp b/test/integration/plugin/tests/test-plugin.hpp index d25a405145..3371cb299b 100644 --- a/test/integration/plugin/tests/test-plugin.hpp +++ b/test/integration/plugin/tests/test-plugin.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin_for_test_dynamic.cpp b/test/integration/plugin_for_test_dynamic.cpp index b334f01d07..dfd04f0a50 100644 --- a/test/integration/plugin_for_test_dynamic.cpp +++ b/test/integration/plugin_for_test_dynamic.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/plugin_for_test_kokkos.cpp b/test/integration/plugin_for_test_kokkos.cpp index a8c2fcfa8c..d5bbc5a51d 100644 --- a/test/integration/plugin_for_test_kokkos.cpp +++ b/test/integration/plugin_for_test_kokkos.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/test_plugin_dynamic.cpp b/test/integration/test_plugin_dynamic.cpp index 0e105b7629..9cba6d0a77 100644 --- a/test/integration/test_plugin_dynamic.cpp +++ b/test/integration/test_plugin_dynamic.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/integration/test_plugin_kokkos.cpp b/test/integration/test_plugin_kokkos.cpp index e2da09557a..b8f05d8fef 100644 --- a/test/integration/test_plugin_kokkos.cpp +++ b/test/integration/test_plugin_kokkos.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/CMakeLists.txt b/test/old-tests/CMakeLists.txt index 680ce933ae..5bc61439e3 100644 --- a/test/old-tests/CMakeLists.txt +++ b/test/old-tests/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/CMakeLists.txt b/test/old-tests/unit/CMakeLists.txt index c36efbedd0..d158acf86c 100644 --- a/test/old-tests/unit/CMakeLists.txt +++ b/test/old-tests/unit/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/cpu/CMakeLists.txt b/test/old-tests/unit/cpu/CMakeLists.txt index 991def9ba3..7f32bc9e71 100644 --- a/test/old-tests/unit/cpu/CMakeLists.txt +++ b/test/old-tests/unit/cpu/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/cpu/test-synchronize.cpp b/test/old-tests/unit/cpu/test-synchronize.cpp index 3c70a01cb6..7750fcea5c 100644 --- a/test/old-tests/unit/cpu/test-synchronize.cpp +++ b/test/old-tests/unit/cpu/test-synchronize.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/cuda/CMakeLists.txt b/test/old-tests/unit/cuda/CMakeLists.txt index 45c5ec1075..c1eefc053c 100644 --- a/test/old-tests/unit/cuda/CMakeLists.txt +++ b/test/old-tests/unit/cuda/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/cuda/test-synchronize.cpp b/test/old-tests/unit/cuda/test-synchronize.cpp index 2fc3d22892..b26b7a3445 100644 --- a/test/old-tests/unit/cuda/test-synchronize.cpp +++ b/test/old-tests/unit/cuda/test-synchronize.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/test-sharedmem.cpp b/test/old-tests/unit/test-sharedmem.cpp index a38cb78e3c..a6f4ffcbc5 100644 --- a/test/old-tests/unit/test-sharedmem.cpp +++ b/test/old-tests/unit/test-sharedmem.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/old-tests/unit/test-simd.cpp b/test/old-tests/unit/test-simd.cpp index f95e307aa9..72bd513fd8 100644 --- a/test/old-tests/unit/test-simd.cpp +++ b/test/old-tests/unit/test-simd.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -148,106 +148,3 @@ TEST(SIMD, OMPAndSimd_MultiLambda) RAJA::free_aligned(c2); } #endif - -#if defined(RAJA_ENABLE_TBB) -TEST(SIMD, TBBAndSimd) -{ - - using POL = RAJA::KernelPolicy > > >; - - const RAJA::Index_type N = 32; - const RAJA::Index_type M = 32; - - double *a = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - double *b = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - double *c = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - - for (int i = 0; i < N * M; ++i) { - a[i] = 1; - b[i] = 1; - c[i] = 0.0; - } - - RAJA::kernel(RAJA::make_tuple(RAJA::RangeSegment(0, N), - RAJA::RangeSegment(0, M)), - [=](RAJA::Index_type i, RAJA::Index_type j) { - c[i + j * N] = a[i + j * N] + b[i + j * N]; - }); - - for (int i = 0; i < N * M; ++i) { - ASSERT_DOUBLE_EQ(c[i], 2.0); - } - - RAJA::free_aligned(a); - RAJA::free_aligned(b); - RAJA::free_aligned(c); -} - - -TEST(SIMD, TBBAndSimd_MultiLambda) -{ - - using POL = RAJA::KernelPolicy, - RAJA::statement::Lambda<1> > > >; - - const RAJA::Index_type N = 32; - const RAJA::Index_type M = 32; - - double *a = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - double *b = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - double *c = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - - double *a2 = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - double *b2 = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - double *c2 = RAJA::allocate_aligned_type(RAJA::DATA_ALIGN, - N * M * sizeof(double)); - - for (int i = 0; i < N * M; ++i) { - a[i] = 1; - b[i] = 1; - c[i] = 0.0; - a2[i] = 1; - b2[i] = 1; - c2[i] = 0.0; - } - - RAJA::kernel(RAJA::make_tuple(RAJA::RangeSegment(0, N), - RAJA::RangeSegment(0, M)), - [=](RAJA::Index_type i, RAJA::Index_type j) { - c[i + j * N] = a[i + j * N] + b[i + j * N]; - }, - [=](RAJA::Index_type i, RAJA::Index_type j) { - c2[i + j * N] = a2[i + j * N] + b2[i + j * N]; - }); - - for (int i = 0; i < N * M; ++i) { - ASSERT_DOUBLE_EQ(c[i], 2.0); - ASSERT_DOUBLE_EQ(c2[i], 2.0); - } - - RAJA::free_aligned(a); - RAJA::free_aligned(b); - RAJA::free_aligned(c); - - RAJA::free_aligned(a2); - RAJA::free_aligned(b2); - RAJA::free_aligned(c2); -} - -#endif diff --git a/test/unit/CMakeLists.txt b/test/unit/CMakeLists.txt index e30bcfce46..cb82636e2e 100644 --- a/test/unit/CMakeLists.txt +++ b/test/unit/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/algorithm/CMakeLists.txt b/test/unit/algorithm/CMakeLists.txt index 9b73b7e75a..856e4519b6 100644 --- a/test/unit/algorithm/CMakeLists.txt +++ b/test/unit/algorithm/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -11,10 +11,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND SORT_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) - list(APPEND SORT_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND SORT_BACKENDS Cuda) endif() diff --git a/test/unit/algorithm/test-algorithm-sort.cpp.in b/test/unit/algorithm/test-algorithm-sort.cpp.in index f92d3466d8..6ca2a6d89e 100644 --- a/test/unit/algorithm/test-algorithm-sort.cpp.in +++ b/test/unit/algorithm/test-algorithm-sort.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/algorithm/test-algorithm-stable-sort.cpp.in b/test/unit/algorithm/test-algorithm-stable-sort.cpp.in index a3824e73fb..86f93eadaf 100644 --- a/test/unit/algorithm/test-algorithm-stable-sort.cpp.in +++ b/test/unit/algorithm/test-algorithm-stable-sort.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/algorithm/test-algorithm-util-sort.cpp.in b/test/unit/algorithm/test-algorithm-util-sort.cpp.in index a87666ba05..7dbb0dcd93 100644 --- a/test/unit/algorithm/test-algorithm-util-sort.cpp.in +++ b/test/unit/algorithm/test-algorithm-util-sort.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/algorithm/tests/test-algorithm-sort.hpp b/test/unit/algorithm/tests/test-algorithm-sort.hpp index 4a692e05a6..d08f949fae 100644 --- a/test/unit/algorithm/tests/test-algorithm-sort.hpp +++ b/test/unit/algorithm/tests/test-algorithm-sort.hpp @@ -99,16 +99,6 @@ using OpenMPSortSorters = #endif -#if defined(RAJA_ENABLE_TBB) - -using TBBSortSorters = - camp::list< - PolicySort, - PolicySortPairs - >; - -#endif - #if defined(RAJA_ENABLE_CUDA) using CudaSortSorters = diff --git a/test/unit/algorithm/tests/test-algorithm-stable-sort.hpp b/test/unit/algorithm/tests/test-algorithm-stable-sort.hpp index 5e5d37a362..6b33d63497 100644 --- a/test/unit/algorithm/tests/test-algorithm-stable-sort.hpp +++ b/test/unit/algorithm/tests/test-algorithm-stable-sort.hpp @@ -99,16 +99,6 @@ using OpenMPStableSortSorters = #endif -#if defined(RAJA_ENABLE_TBB) - -using TBBStableSortSorters = - camp::list< - PolicyStableSort, - PolicyStableSortPairs - >; - -#endif - #if defined(RAJA_ENABLE_CUDA) using CudaStableSortSorters = diff --git a/test/unit/atomic/CMakeLists.txt b/test/unit/atomic/CMakeLists.txt index 0ee668d59f..462dde6154 100644 --- a/test/unit/atomic/CMakeLists.txt +++ b/test/unit/atomic/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-incdec.cpp b/test/unit/atomic/test-atomic-incdec.cpp index f8e10e28cf..6564feeaf5 100644 --- a/test/unit/atomic/test-atomic-incdec.cpp +++ b/test/unit/atomic/test-atomic-incdec.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref-accessors.cpp b/test/unit/atomic/test-atomic-ref-accessors.cpp index a36cecd3ec..f69813fcbe 100644 --- a/test/unit/atomic/test-atomic-ref-accessors.cpp +++ b/test/unit/atomic/test-atomic-ref-accessors.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref-addsub.cpp b/test/unit/atomic/test-atomic-ref-addsub.cpp index 7318c81bf5..fba54f77fa 100644 --- a/test/unit/atomic/test-atomic-ref-addsub.cpp +++ b/test/unit/atomic/test-atomic-ref-addsub.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref-bitwise.cpp b/test/unit/atomic/test-atomic-ref-bitwise.cpp index c82692a5d4..adf49599ca 100644 --- a/test/unit/atomic/test-atomic-ref-bitwise.cpp +++ b/test/unit/atomic/test-atomic-ref-bitwise.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref-constructor.cpp b/test/unit/atomic/test-atomic-ref-constructor.cpp index fa3cd58cbd..619e3ebf20 100644 --- a/test/unit/atomic/test-atomic-ref-constructor.cpp +++ b/test/unit/atomic/test-atomic-ref-constructor.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref-exchanges.cpp b/test/unit/atomic/test-atomic-ref-exchanges.cpp index f799583e5b..18fa1e4819 100644 --- a/test/unit/atomic/test-atomic-ref-exchanges.cpp +++ b/test/unit/atomic/test-atomic-ref-exchanges.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref-minmax.cpp b/test/unit/atomic/test-atomic-ref-minmax.cpp index 7e899d4747..a35ea15164 100644 --- a/test/unit/atomic/test-atomic-ref-minmax.cpp +++ b/test/unit/atomic/test-atomic-ref-minmax.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/atomic/test-atomic-ref.hpp b/test/unit/atomic/test-atomic-ref.hpp index 700187d3c4..f5b7dd2943 100644 --- a/test/unit/atomic/test-atomic-ref.hpp +++ b/test/unit/atomic/test-atomic-ref.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/hip/CMakeLists.txt b/test/unit/hip/CMakeLists.txt index d0f4c23d34..7ce19ecae1 100644 --- a/test/unit/hip/CMakeLists.txt +++ b/test/unit/hip/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/hip/test-synchronize.cpp b/test/unit/hip/test-synchronize.cpp index aa3d3f3d98..1b0ce0a414 100644 --- a/test/unit/hip/test-synchronize.cpp +++ b/test/unit/hip/test-synchronize.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/index/CMakeLists.txt b/test/unit/index/CMakeLists.txt index 25c051c33c..8f05fe1406 100644 --- a/test/unit/index/CMakeLists.txt +++ b/test/unit/index/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/index/test-indexset.cpp b/test/unit/index/test-indexset.cpp index eb91afc172..8d0b282624 100644 --- a/test/unit/index/test-indexset.cpp +++ b/test/unit/index/test-indexset.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/index/test-indexvalue.cpp b/test/unit/index/test-indexvalue.cpp index 2bf61a04d2..fad47715e9 100644 --- a/test/unit/index/test-indexvalue.cpp +++ b/test/unit/index/test-indexvalue.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/index/test-listsegment.cpp b/test/unit/index/test-listsegment.cpp index 334b673abb..2ea0004b83 100644 --- a/test/unit/index/test-listsegment.cpp +++ b/test/unit/index/test-listsegment.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/index/test-rangesegment.cpp b/test/unit/index/test-rangesegment.cpp index 0a6e61aa51..be82671682 100644 --- a/test/unit/index/test-rangesegment.cpp +++ b/test/unit/index/test-rangesegment.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/index/test-rangestridesegment.cpp b/test/unit/index/test-rangestridesegment.cpp index dcc5077f85..5b64e17b5c 100644 --- a/test/unit/index/test-rangestridesegment.cpp +++ b/test/unit/index/test-rangestridesegment.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/indexing/CMakeLists.txt b/test/unit/indexing/CMakeLists.txt index 631bef63f3..b1f85247d0 100644 --- a/test/unit/indexing/CMakeLists.txt +++ b/test/unit/indexing/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/indexing/test-indexing-global.cpp.in b/test/unit/indexing/test-indexing-global.cpp.in index b3b1cee52c..728e6ab5a4 100644 --- a/test/unit/indexing/test-indexing-global.cpp.in +++ b/test/unit/indexing/test-indexing-global.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/indexing/test-indexing.hpp b/test/unit/indexing/test-indexing.hpp index cfdce9f22b..21038542ee 100644 --- a/test/unit/indexing/test-indexing.hpp +++ b/test/unit/indexing/test-indexing.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/indexing/tests/test-indexing-global.hpp b/test/unit/indexing/tests/test-indexing-global.hpp index 3eb330b494..a345d80067 100644 --- a/test/unit/indexing/tests/test-indexing-global.hpp +++ b/test/unit/indexing/tests/test-indexing-global.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/internal/CMakeLists.txt b/test/unit/internal/CMakeLists.txt index e119014eac..edb2e721ff 100644 --- a/test/unit/internal/CMakeLists.txt +++ b/test/unit/internal/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/internal/test-iterators.cpp b/test/unit/internal/test-iterators.cpp index d5c4e4a611..b5eb0ade48 100644 --- a/test/unit/internal/test-iterators.cpp +++ b/test/unit/internal/test-iterators.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/internal/test-rajavec.cpp b/test/unit/internal/test-rajavec.cpp index 44ea4e46b2..edc093b4dd 100644 --- a/test/unit/internal/test-rajavec.cpp +++ b/test/unit/internal/test-rajavec.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/CMakeLists.txt b/test/unit/reducer/CMakeLists.txt index 3d37142699..2a9fdbfe22 100644 --- a/test/unit/reducer/CMakeLists.txt +++ b/test/unit/reducer/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -13,16 +13,6 @@ raja_add_test( NAME test-reducer-reset-seq SOURCES test-reducer-reset-seq.cpp) -if(RAJA_ENABLE_TBB) -raja_add_test( - NAME test-reducer-constructors-tbb - SOURCES test-reducer-constructors-tbb.cpp) - -raja_add_test( - NAME test-reducer-reset-tbb - SOURCES test-reducer-reset-tbb.cpp) -endif() - if(RAJA_ENABLE_OPENMP) raja_add_test( NAME test-reducer-constructors-openmp diff --git a/test/unit/reducer/test-reducer-constructors-cuda.cpp b/test/unit/reducer/test-reducer-constructors-cuda.cpp index 0ced48ef90..fea3bb9b90 100644 --- a/test/unit/reducer/test-reducer-constructors-cuda.cpp +++ b/test/unit/reducer/test-reducer-constructors-cuda.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-constructors-hip.cpp b/test/unit/reducer/test-reducer-constructors-hip.cpp index db849bb84a..0b3197b2ef 100644 --- a/test/unit/reducer/test-reducer-constructors-hip.cpp +++ b/test/unit/reducer/test-reducer-constructors-hip.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-constructors-openmp-target.cpp b/test/unit/reducer/test-reducer-constructors-openmp-target.cpp index fe3ade705f..b3204c7827 100644 --- a/test/unit/reducer/test-reducer-constructors-openmp-target.cpp +++ b/test/unit/reducer/test-reducer-constructors-openmp-target.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-constructors-openmp.cpp b/test/unit/reducer/test-reducer-constructors-openmp.cpp index fc4f23856f..26d39cdd5f 100644 --- a/test/unit/reducer/test-reducer-constructors-openmp.cpp +++ b/test/unit/reducer/test-reducer-constructors-openmp.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-constructors-seq.cpp b/test/unit/reducer/test-reducer-constructors-seq.cpp index 7e5cdafa9e..134766eb9a 100644 --- a/test/unit/reducer/test-reducer-constructors-seq.cpp +++ b/test/unit/reducer/test-reducer-constructors-seq.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-constructors-tbb.cpp b/test/unit/reducer/test-reducer-constructors-tbb.cpp deleted file mode 100644 index 37f422a7f7..0000000000 --- a/test/unit/reducer/test-reducer-constructors-tbb.cpp +++ /dev/null @@ -1,34 +0,0 @@ -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -/// -/// Source file containing tests for RAJA reducer constructors and initialization. -/// - -#include "tests/test-reducer-constructors.hpp" - -#if defined(RAJA_ENABLE_TBB) -using TBBBasicReducerConstructorTypes = - Test< camp::cartesian_product< TBBReducerPolicyList, - DataTypeList, - HostResourceList > >::Types; - -using TBBInitReducerConstructorTypes = - Test< camp::cartesian_product< TBBReducerPolicyList, - DataTypeList, - HostResourceList, - SequentialUnitTestPolicyList > >::Types; - -INSTANTIATE_TYPED_TEST_SUITE_P(TBBBasicTest, - ReducerBasicConstructorUnitTest, - TBBBasicReducerConstructorTypes); - -INSTANTIATE_TYPED_TEST_SUITE_P(TBBInitTest, - ReducerInitConstructorUnitTest, - TBBInitReducerConstructorTypes); -#endif - diff --git a/test/unit/reducer/test-reducer-reset-cuda.cpp b/test/unit/reducer/test-reducer-reset-cuda.cpp index 192c2e66eb..06944d488d 100644 --- a/test/unit/reducer/test-reducer-reset-cuda.cpp +++ b/test/unit/reducer/test-reducer-reset-cuda.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-reset-hip.cpp b/test/unit/reducer/test-reducer-reset-hip.cpp index a4b67c64e8..cfca5e3787 100644 --- a/test/unit/reducer/test-reducer-reset-hip.cpp +++ b/test/unit/reducer/test-reducer-reset-hip.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-reset-openmp-target.cpp b/test/unit/reducer/test-reducer-reset-openmp-target.cpp index 03e8bcb34a..1bf7777bf1 100644 --- a/test/unit/reducer/test-reducer-reset-openmp-target.cpp +++ b/test/unit/reducer/test-reducer-reset-openmp-target.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-reset-openmp.cpp b/test/unit/reducer/test-reducer-reset-openmp.cpp index 354fa69527..3f8d54287f 100644 --- a/test/unit/reducer/test-reducer-reset-openmp.cpp +++ b/test/unit/reducer/test-reducer-reset-openmp.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-reset-seq.cpp b/test/unit/reducer/test-reducer-reset-seq.cpp index 038d017de7..2b1ff4a748 100644 --- a/test/unit/reducer/test-reducer-reset-seq.cpp +++ b/test/unit/reducer/test-reducer-reset-seq.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/test-reducer-reset-tbb.cpp b/test/unit/reducer/test-reducer-reset-tbb.cpp deleted file mode 100644 index 0bcd323367..0000000000 --- a/test/unit/reducer/test-reducer-reset-tbb.cpp +++ /dev/null @@ -1,25 +0,0 @@ -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC -// and RAJA project contributors. See the RAJA/LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) -//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// - -/// -/// Source file containing tests for RAJA reducer reset. -/// - -#include "tests/test-reducer-reset.hpp" - -#if defined(RAJA_ENABLE_TBB) -using TBBReducerResetTypes = - Test< camp::cartesian_product< TBBReducerPolicyList, - DataTypeList, - HostResourceList, - SequentialUnitTestPolicyList > >::Types; - - -INSTANTIATE_TYPED_TEST_SUITE_P(TBBResetTest, - ReducerResetUnitTest, - TBBReducerResetTypes); -#endif diff --git a/test/unit/reducer/test-reducer.hpp b/test/unit/reducer/test-reducer.hpp index bb4a565dde..aa8fbda9cf 100644 --- a/test/unit/reducer/test-reducer.hpp +++ b/test/unit/reducer/test-reducer.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -22,10 +22,6 @@ using DataTypeList = camp::list< int, using SequentialReducerPolicyList = camp::list< RAJA::seq_reduce >; -#if defined(RAJA_ENABLE_TBB) -using TBBReducerPolicyList = camp::list< RAJA::tbb_reduce >; -#endif - #if defined(RAJA_ENABLE_OPENMP) using OpenMPReducerPolicyList = camp::list< RAJA::omp_reduce, RAJA::omp_reduce_ordered >; diff --git a/test/unit/reducer/tests/test-reducer-constructors.hpp b/test/unit/reducer/tests/test-reducer-constructors.hpp index a77973c4fc..d02d42fce9 100644 --- a/test/unit/reducer/tests/test-reducer-constructors.hpp +++ b/test/unit/reducer/tests/test-reducer-constructors.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/reducer/tests/test-reducer-reset.hpp b/test/unit/reducer/tests/test-reducer-reset.hpp index 523f06b3b9..b82ae2995f 100644 --- a/test/unit/reducer/tests/test-reducer-reset.hpp +++ b/test/unit/reducer/tests/test-reducer-reset.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/resource/CMakeLists.txt b/test/unit/resource/CMakeLists.txt index 840c4b5c34..f508d71190 100644 --- a/test/unit/resource/CMakeLists.txt +++ b/test/unit/resource/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -16,10 +16,6 @@ if(RAJA_ENABLE_OPENMP) list(APPEND RESOURCE_BACKENDS OpenMP) endif() -if(RAJA_ENABLE_TBB) - list(APPEND RESOURCE_BACKENDS TBB) -endif() - if(RAJA_ENABLE_CUDA) list(APPEND RESOURCE_BACKENDS Cuda) endif() diff --git a/test/unit/resource/test-resource.cpp.in b/test/unit/resource/test-resource.cpp.in index 8ac4cb51d5..4eb26383ec 100644 --- a/test/unit/resource/test-resource.cpp.in +++ b/test/unit/resource/test-resource.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/resource/tests/test-resource-AsyncTime.hpp b/test/unit/resource/tests/test-resource-AsyncTime.hpp index 5db4498d67..806ba66b26 100644 --- a/test/unit/resource/tests/test-resource-AsyncTime.hpp +++ b/test/unit/resource/tests/test-resource-AsyncTime.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/resource/tests/test-resource-BasicAsyncSemantics.hpp b/test/unit/resource/tests/test-resource-BasicAsyncSemantics.hpp index 8658756f8c..b1939240e4 100644 --- a/test/unit/resource/tests/test-resource-BasicAsyncSemantics.hpp +++ b/test/unit/resource/tests/test-resource-BasicAsyncSemantics.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/resource/tests/test-resource-Depends.hpp b/test/unit/resource/tests/test-resource-Depends.hpp index 51b2f2c63e..0c1b748de2 100644 --- a/test/unit/resource/tests/test-resource-Depends.hpp +++ b/test/unit/resource/tests/test-resource-Depends.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/resource/tests/test-resource-JoinAsyncSemantics.hpp b/test/unit/resource/tests/test-resource-JoinAsyncSemantics.hpp index 184107269a..a8e30d9719 100644 --- a/test/unit/resource/tests/test-resource-JoinAsyncSemantics.hpp +++ b/test/unit/resource/tests/test-resource-JoinAsyncSemantics.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/resource/tests/test-resource-MultiStream.hpp b/test/unit/resource/tests/test-resource-MultiStream.hpp index 58e8afa25a..7f545229f1 100644 --- a/test/unit/resource/tests/test-resource-MultiStream.hpp +++ b/test/unit/resource/tests/test-resource-MultiStream.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/CMakeLists.txt b/test/unit/util/CMakeLists.txt index 3d06790908..fdec220da9 100644 --- a/test/unit/util/CMakeLists.txt +++ b/test/unit/util/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/operator/CMakeLists.txt b/test/unit/util/operator/CMakeLists.txt index 9c837b14dc..76f3c5968b 100644 --- a/test/unit/util/operator/CMakeLists.txt +++ b/test/unit/util/operator/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/operator/test-operators-bitwise-modulus.cpp b/test/unit/util/operator/test-operators-bitwise-modulus.cpp index c7b724ac4d..c2906cbe5f 100644 --- a/test/unit/util/operator/test-operators-bitwise-modulus.cpp +++ b/test/unit/util/operator/test-operators-bitwise-modulus.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/operator/test-operators-equivalence.cpp b/test/unit/util/operator/test-operators-equivalence.cpp index 138d9c400b..f2a0a84c54 100644 --- a/test/unit/util/operator/test-operators-equivalence.cpp +++ b/test/unit/util/operator/test-operators-equivalence.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/operator/test-operators-identity.cpp b/test/unit/util/operator/test-operators-identity.cpp index 99f648b61b..4b320d1c04 100644 --- a/test/unit/util/operator/test-operators-identity.cpp +++ b/test/unit/util/operator/test-operators-identity.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/operator/test-operators-logical.cpp b/test/unit/util/operator/test-operators-logical.cpp index d9aea9e7aa..3fde5644a4 100644 --- a/test/unit/util/operator/test-operators-logical.cpp +++ b/test/unit/util/operator/test-operators-logical.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/operator/test-operators-math.cpp b/test/unit/util/operator/test-operators-math.cpp index 467713780f..054efd41c8 100644 --- a/test/unit/util/operator/test-operators-math.cpp +++ b/test/unit/util/operator/test-operators-math.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/test-float-limits.cpp b/test/unit/util/test-float-limits.cpp index 641d53dc41..80635a74e1 100644 --- a/test/unit/util/test-float-limits.cpp +++ b/test/unit/util/test-float-limits.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/test-integral-limits.cpp b/test/unit/util/test-integral-limits.cpp index 057b773ec2..77d2d95bc0 100644 --- a/test/unit/util/test-integral-limits.cpp +++ b/test/unit/util/test-integral-limits.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/test-span.cpp b/test/unit/util/test-span.cpp index aebd9d1bb3..e59054cfc6 100644 --- a/test/unit/util/test-span.cpp +++ b/test/unit/util/test-span.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/util/test-timer.cpp b/test/unit/util/test-timer.cpp index 5833ff45bf..1688e6497e 100644 --- a/test/unit/util/test-timer.cpp +++ b/test/unit/util/test-timer.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/view-layout/CMakeLists.txt b/test/unit/view-layout/CMakeLists.txt index a1823f2e5e..eaa18bd0dd 100644 --- a/test/unit/view-layout/CMakeLists.txt +++ b/test/unit/view-layout/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -24,3 +24,7 @@ raja_add_test( raja_add_test( NAME test-multiview SOURCES test-multiview.cpp) + +raja_add_test( + NAME test-indexlayout + SOURCES test-indexlayout.cpp) diff --git a/test/unit/view-layout/test-indexlayout.cpp b/test/unit/view-layout/test-indexlayout.cpp new file mode 100644 index 0000000000..bd7effa8d4 --- /dev/null +++ b/test/unit/view-layout/test-indexlayout.cpp @@ -0,0 +1,333 @@ +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC +// and RAJA project contributors. See the RAJA/LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) +//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// + +#include +#include "RAJA/util/types.hpp" +#include "RAJA_test-base.hpp" + +using namespace RAJA; + +TEST(IndexLayout, IndexList1D) { + /* + * Construct a 1D index layout with the index list {1,2,3} + */ + + Index_type arr[3] = {1,2,3}; + + auto index_tuple = make_index_tuple(IndexList<>{&arr[0]}); + auto index_layout = make_index_layout(index_tuple, 3); + + EXPECT_EQ(index_layout(0), 1); + EXPECT_EQ(index_layout(1), 2); + EXPECT_EQ(index_layout(2), 3); + +} + +TEST(IndexLayout, IndexList1DSubsetOfLayout) { + /* + * Construct a 1D index layout of arbitrary size greater than 3 + * with the index list {2,3,4}. + * The purpose of this test is to demonstrate the use case where + * the index list contains a subset of its index layout + */ + + Index_type arr[3] = {2,3,4}; + + auto index_tuple = make_index_tuple(IndexList<>{&arr[0]}); + auto index_layout = make_index_layout(index_tuple, 5); + + EXPECT_EQ(index_layout(0), 2); + EXPECT_EQ(index_layout(1), 3); + EXPECT_EQ(index_layout(2), 4); + +} + + +TEST(IndexLayout, ExtractTwoIndices2DLayoutAxis0) { + /* + * Construct a 2D index layout of size 3x10 with + * the index list {1,2} used along the 0-axis and + * the direct index used along the 1-axis + * Examples: + * (index layout index -> regular layout index -> unit stride index) + * index_layout(0,1) -> layout(1,1) -> 11 + * index_layout(0,5) -> layout(1,5) -> 15 + * index_layout(1,7) -> layout(2,7) -> 27 + */ + + Index_type arr[2] = {1,2}; + + auto index_tuple = make_index_tuple(IndexList<>{&arr[0]}, DirectIndex<>()); + auto index_layout = make_index_layout(index_tuple, 3, 10); + + for (int i = 0; i < 10; i++ ) { + EXPECT_EQ(index_layout(0,i), i+10); + EXPECT_EQ(index_layout(1,i), i+20); + } + +} + +TEST(IndexLayout, ExtractTwoIndices2DLayoutAxis1) { + /* + * Construct a 2D index layout of size 3x10 with + * the direct index used along the 0-axis and + * the index list {9,5} used along the 1-axis + * Examples: + * (index layout index -> regular layout index -> unit stride index) + * index_layout(0,1) -> layout(0,5) -> 5 + * index_layout(2,0) -> layout(2,9) -> 29 + */ + + Index_type arr[2] = {9,5}; + + auto index_tuple = make_index_tuple(DirectIndex<>(), IndexList<>{&arr[0]}); + auto index_layout = make_index_layout(index_tuple, 3, 10); + + EXPECT_EQ(index_layout(0,0), 9); + EXPECT_EQ(index_layout(0,1), 5); + EXPECT_EQ(index_layout(1,0), 19); + EXPECT_EQ(index_layout(1,1), 15); + EXPECT_EQ(index_layout(2,0), 29); + EXPECT_EQ(index_layout(2,1), 25); + +} + +TEST(IndexLayout, ExtractOneIndex2DLayoutAxis0) { + /* + * Construct a 2D index layout of size 3x3 with + * the index list {2} used along the 0-axis and + * the direct index used along the 1-axis + * Examples: + * (index layout index -> regular layout index -> unit stride index) + * index_layout(0,1) -> layout(2,1) -> 7 + * index_layout(0,2) -> layout(2,2) -> 8 + */ + + Index_type arr[1] = {2}; + + auto index_tuple = make_index_tuple(IndexList<>{&arr[0]}, DirectIndex<>()); + auto index_layout = make_index_layout(index_tuple, 3, 3); + + EXPECT_EQ(index_layout(0,0), 6); + EXPECT_EQ(index_layout(0,1), 7); + EXPECT_EQ(index_layout(0,2), 8); + +} + +TEST(IndexLayout, IndexList2DLayoutExtractOneIndex) { + /* + * Construct a 2D index layout of size 3x3 with + * the direct index used along the 0-axis and + * the index list {2} used along the 1-axis + * Examples: + * (index layout index -> regular layout index -> unit stride index) + * index_layout(1,0) -> layout(1,2) -> 5 + * index_layout(2,0) -> layout(2,2) -> 8 + */ + + Index_type arr[1] = {2}; + + auto index_tuple = make_index_tuple(DirectIndex<>(), IndexList<>{&arr[0]}); + auto index_layout = make_index_layout(index_tuple, 3, 3); + + EXPECT_EQ(index_layout(0,0), 2); + EXPECT_EQ(index_layout(1,0), 5); + EXPECT_EQ(index_layout(2,0), 8); + +} + +TEST(IndexLayout, ConditionalIndexListNullPtr) { + /* + * Construct a 1D index layout of size 3 with + * the conditional index list that is a nullptr + * (conditional index lists always evaluate nullptr to regular indexing) + * Examples: + * (index layout index -> regular layout index -> unit stride index) + * index_layout(0) -> layout(0) -> 0 + * index_layout(2) -> layout(2) -> 2 + */ + + Index_type* arr_ptr = nullptr; + + auto index_tuple = make_index_tuple(ConditionalIndexList<>{arr_ptr}); + auto index_layout = make_index_layout(index_tuple, 3); + + EXPECT_EQ(index_layout(0), 0); + EXPECT_EQ(index_layout(1), 1); + EXPECT_EQ(index_layout(2), 2); +} + +TEST(IndexLayout, ConditionalIndexListWithIndexList) { + /* + * Construct a 1D index layout of size 3 with + * the conditional index list that is not a nullptr + * (conditional index lists with index list act the same as IndexList) + * Examples: + * (index layout index -> regular layout index -> unit stride index) + * index_layout(0) -> layout(1) -> 1 + * index_layout(1) -> layout(2) -> 2 + */ + + Index_type arr[2] = {1,2}; + + auto index_tuple = make_index_tuple(ConditionalIndexList<>{&arr[0]}); + auto index_layout = make_index_layout(index_tuple, 3); + + EXPECT_EQ(index_layout(0), 1); + EXPECT_EQ(index_layout(1), 2); +} + +TEST(IndexLayout, View1DLayout) +{ + /* + * Construct a 1D index layout of size 5 with + * the index list {4,2,3} and pass to a 1D view with the data {5,10,15,20,25} + * Examples: + * (index layout index -> regular layout index -> unit stride index -> view at index) + * index_layout(0) -> layout(4) -> 4 -> 25 + * index_layout(2) -> layout(3) -> 3 -> 20 + */ + + Index_type data[5] = {5,10,15,20,25}; + Index_type index_list[3] = {4,2,3}; + + auto index_tuple = make_index_tuple(IndexList<>{&index_list[0]}); + auto index_layout = make_index_layout(index_tuple, 5); + + auto view = make_index_view(&data[0], index_layout); + + EXPECT_EQ(view(0), 25); + EXPECT_EQ(view(1), 15); + EXPECT_EQ(view(2), 20); + +} + +TEST(IndexLayout, View2DLayout) +{ + /* + * Construct a 2D index layout of size 2x3 with + * the direct index used along the 0-axis and + * the index list {1,2} used along the 1-axis and + * pass to a 2D view of size 2x3 with the each entry being i*j + * for i,j in [0,2)x[0,3) (e.g. view(1,2) = 1*2, view(0,2) = 0*2, etc..) + * Examples: + * (index layout index -> view index -> view at index) + * index_layout(0,1) -> view(0,2) -> 0 + * index_layout(1,0) -> view(1,1) -> 1 + */ + + Index_type data[2][3]; + + for (int i = 0; i < 2; i ++ ) { + for (int j = 0; j < 3; j ++ ) { + data[i][j] = i*j; + } + } + + Index_type index_list[2] = {1,2}; + + auto index_tuple = make_index_tuple(DirectIndex<>(), IndexList<>{&index_list[0]}); + auto index_layout = make_index_layout(index_tuple, 2, 3); + + auto view = make_index_view(&data[0][0], index_layout); + + for (int i = 0; i < 2; i ++ ) { + for (int j = 0; j < 2; j ++ ) { + EXPECT_EQ(view(i,j), i*(j+1)); + } + } + +} + +TEST(IndexLayout, View3DLayout) +{ + /* + * Construct a 3D index layout of size 2x3x4 with + * the direct index used along the 0-axis and + * the index list {1,2} used along the 1-axis and + * the index list {2,3} used along the 2-axis and + * pass to a 3D view of size 2x3x4 with the each entry being i*j*k + * for i,j,k in [0,2)x[0,3)x[0,4) (e.g. view(1,2,3) = 1*2*3, view(0,2,2) = 0*2*2, etc..) + * Examples: + * (index layout index -> view index -> view at index) + * index_layout(0,1,0) -> view(0,2,2)-> 0 + * index_layout(2,1,1) -> view(2,2,3)-> 12 + */ + + Index_type data[2][3][4]; + + for (int i = 0; i < 2; i ++ ) { + for (int j = 0; j < 3; j ++ ) { + for (int k = 0; k < 4; k ++ ) { + data[i][j][k] = i*j*k; + } + } + } + + Index_type index_list_j[2] = {1,2}; + Index_type index_list_k[2] = {2,3}; + + auto index_tuple = make_index_tuple(DirectIndex<>(), + IndexList<>{&index_list_j[0]}, + IndexList<>{&index_list_k[0]}); + + auto index_layout = make_index_layout(index_tuple, 2, 3, 4); + + auto view = make_index_view(&data[0][0][0], index_layout); + + for (int i = 0; i < 2; i ++ ) { + for (int j = 0; j < 2; j ++ ) { + for (int k = 0; k < 2; k ++ ) { + EXPECT_EQ(view(i,j,k), i*(j+1)*(k+2)); + } + } + } + +} + +TEST(IndexLayout, MultiView1DLayout) +{ + /* + * Construct a 1D index layout of size 4 with + * the index list {1,2} and pass to a 1D multiview containing two 1D views of size 4 with + * the first view having each entry be the square of its index (e.g. view(2) = 2*2 = 4) + * and the second view having each entry be the cube of its index (e.g. view(3) = 3*3*3 = 27) + * Examples: + * (index layout index -> mutiview index -> view at index) + * index_layout(0,1) -> view(0,2) -> 4 + * index_layout(1,0) -> view(1,1) -> 1 + */ + + Index_type data_squared[4]; + Index_type data_cubed[4]; + + for (int i = 0; i < 4; i ++ ) { + data_squared[i] = i*i; + } + + for (int i = 0; i < 4; i ++ ) { + data_cubed[i] = i*i*i; + } + + Index_type* data_array[2]; + data_array[0] = data_squared; + data_array[1] = data_cubed; + + Index_type index_list[2] = {1,2}; + + auto index_tuple = make_index_tuple(IndexList<>{&index_list[0]}); + auto index_layout = make_index_layout(index_tuple, 4); + + auto view = MultiView > >(data_array, index_layout); + + for (int i = 0; i < 2; i ++ ) { + EXPECT_EQ(view(0,i), data_squared[i+1]); + EXPECT_EQ(view(1,i), data_cubed[i+1]); + } + +} + diff --git a/test/unit/view-layout/test-makelayout.cpp b/test/unit/view-layout/test-makelayout.cpp index a2a6d2a3d3..af8b6db71e 100644 --- a/test/unit/view-layout/test-makelayout.cpp +++ b/test/unit/view-layout/test-makelayout.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/view-layout/test-multiview.cpp b/test/unit/view-layout/test-multiview.cpp index 730e0b53fe..c841c718a6 100644 --- a/test/unit/view-layout/test-multiview.cpp +++ b/test/unit/view-layout/test-multiview.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/view-layout/test-standard-layout.cpp b/test/unit/view-layout/test-standard-layout.cpp index dfef3c3575..160e39ac36 100644 --- a/test/unit/view-layout/test-standard-layout.cpp +++ b/test/unit/view-layout/test-standard-layout.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/view-layout/test-typedlayout.cpp b/test/unit/view-layout/test-typedlayout.cpp index 3fd563f299..6820da9b52 100644 --- a/test/unit/view-layout/test-typedlayout.cpp +++ b/test/unit/view-layout/test-typedlayout.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/view-layout/test-typedview.cpp b/test/unit/view-layout/test-typedview.cpp index 905a59c82d..b0823b93e0 100644 --- a/test/unit/view-layout/test-typedview.cpp +++ b/test/unit/view-layout/test-typedview.cpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/CMakeLists.txt b/test/unit/workgroup/CMakeLists.txt index 0355281d99..dce610d954 100644 --- a/test/unit/workgroup/CMakeLists.txt +++ b/test/unit/workgroup/CMakeLists.txt @@ -1,5 +1,5 @@ ############################################################################### -# Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +# Copyright (c) 2016-24, Lawrence Livermore National Security, LLC # and RAJA project contributors. See the RAJA/LICENSE file for details. # # SPDX-License-Identifier: (BSD-3-Clause) @@ -38,10 +38,6 @@ set(BACKENDS Sequential) # only need to test WorkStorage once set(WorkStorage_BACKENDS Sequential) -if(RAJA_ENABLE_TBB) - list(APPEND BACKENDS TBB) -endif() - if(RAJA_ENABLE_OPENMP) list(APPEND BACKENDS OpenMP) endif() diff --git a/test/unit/workgroup/test-workgroup-Constructor.cpp.in b/test/unit/workgroup/test-workgroup-Constructor.cpp.in index 4a4a5e7b55..f6e6db4710 100644 --- a/test/unit/workgroup/test-workgroup-Constructor.cpp.in +++ b/test/unit/workgroup/test-workgroup-Constructor.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/test-workgroup-Dispatcher.cpp.in b/test/unit/workgroup/test-workgroup-Dispatcher.cpp.in index 0e07e1f6d7..214fb2b5a7 100644 --- a/test/unit/workgroup/test-workgroup-Dispatcher.cpp.in +++ b/test/unit/workgroup/test-workgroup-Dispatcher.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/test-workgroup-Enqueue.cpp.in b/test/unit/workgroup/test-workgroup-Enqueue.cpp.in index 785075e148..e5bbbd550a 100644 --- a/test/unit/workgroup/test-workgroup-Enqueue.cpp.in +++ b/test/unit/workgroup/test-workgroup-Enqueue.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/test-workgroup-WorkStorage.cpp.in b/test/unit/workgroup/test-workgroup-WorkStorage.cpp.in index 17041aa9fa..4589bbaff2 100644 --- a/test/unit/workgroup/test-workgroup-WorkStorage.cpp.in +++ b/test/unit/workgroup/test-workgroup-WorkStorage.cpp.in @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-util-workgroup-Enqueue.hpp b/test/unit/workgroup/tests/test-util-workgroup-Enqueue.hpp index a5166ec757..7797ce9947 100644 --- a/test/unit/workgroup/tests/test-util-workgroup-Enqueue.hpp +++ b/test/unit/workgroup/tests/test-util-workgroup-Enqueue.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-util-workgroup-WorkStorage.hpp b/test/unit/workgroup/tests/test-util-workgroup-WorkStorage.hpp index f359e15fb2..5fa93fbf60 100644 --- a/test/unit/workgroup/tests/test-util-workgroup-WorkStorage.hpp +++ b/test/unit/workgroup/tests/test-util-workgroup-WorkStorage.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-Constructor.hpp b/test/unit/workgroup/tests/test-workgroup-Constructor.hpp index 509645418a..253015c5b8 100644 --- a/test/unit/workgroup/tests/test-workgroup-Constructor.hpp +++ b/test/unit/workgroup/tests/test-workgroup-Constructor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-Dispatcher.hpp b/test/unit/workgroup/tests/test-workgroup-Dispatcher.hpp index 78a6cd9930..843f3b17a6 100644 --- a/test/unit/workgroup/tests/test-workgroup-Dispatcher.hpp +++ b/test/unit/workgroup/tests/test-workgroup-Dispatcher.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-Enqueue-Multiple.hpp b/test/unit/workgroup/tests/test-workgroup-Enqueue-Multiple.hpp index 5cf5fccc5e..fcf24e89da 100644 --- a/test/unit/workgroup/tests/test-workgroup-Enqueue-Multiple.hpp +++ b/test/unit/workgroup/tests/test-workgroup-Enqueue-Multiple.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) @@ -145,10 +145,13 @@ TYPED_TEST_P(WorkGroupBasicEnqueueMultipleUnitTest, BasicWorkGroupEnqueueMultipl using Allocator = typename camp::at>::type; std::mt19937 rng(std::random_device{}()); - std::uniform_int_distribution dist(0, 128); + std::uniform_int_distribution dist_rep(0, 16); + std::uniform_int_distribution dist_num(0, 64); - testWorkGroupEnqueueMultiple< ExecPolicy, OrderPolicy, StoragePolicy, DispatchTyper, IndexType, Allocator >{}(Xargs{}, false, dist(rng), dist(rng)); - testWorkGroupEnqueueMultiple< ExecPolicy, OrderPolicy, StoragePolicy, DispatchTyper, IndexType, Allocator >{}(Xargs{}, true, dist(rng), dist(rng)); + testWorkGroupEnqueueMultiple< ExecPolicy, OrderPolicy, StoragePolicy, DispatchTyper, IndexType, Allocator >{}( + Xargs{}, false, dist_rep(rng), dist_num(rng)); + testWorkGroupEnqueueMultiple< ExecPolicy, OrderPolicy, StoragePolicy, DispatchTyper, IndexType, Allocator >{}( + Xargs{}, true, dist_rep(rng), dist_num(rng)); } #endif //__TEST_WORKGROUP_ENQUEUEMULTIPLE__ diff --git a/test/unit/workgroup/tests/test-workgroup-Enqueue-Single.hpp b/test/unit/workgroup/tests/test-workgroup-Enqueue-Single.hpp index 5857ac0c02..282b911d93 100644 --- a/test/unit/workgroup/tests/test-workgroup-Enqueue-Single.hpp +++ b/test/unit/workgroup/tests/test-workgroup-Enqueue-Single.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-WorkStorage-Constructor.hpp b/test/unit/workgroup/tests/test-workgroup-WorkStorage-Constructor.hpp index 9d9da07b7d..6022e98919 100644 --- a/test/unit/workgroup/tests/test-workgroup-WorkStorage-Constructor.hpp +++ b/test/unit/workgroup/tests/test-workgroup-WorkStorage-Constructor.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-WorkStorage-InsertCall.hpp b/test/unit/workgroup/tests/test-workgroup-WorkStorage-InsertCall.hpp index 2df105e357..fd5a7aeaa3 100644 --- a/test/unit/workgroup/tests/test-workgroup-WorkStorage-InsertCall.hpp +++ b/test/unit/workgroup/tests/test-workgroup-WorkStorage-InsertCall.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-WorkStorage-Iterator.hpp b/test/unit/workgroup/tests/test-workgroup-WorkStorage-Iterator.hpp index 71838a22f5..90cc7c1368 100644 --- a/test/unit/workgroup/tests/test-workgroup-WorkStorage-Iterator.hpp +++ b/test/unit/workgroup/tests/test-workgroup-WorkStorage-Iterator.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/test/unit/workgroup/tests/test-workgroup-WorkStorage-Multiple.hpp b/test/unit/workgroup/tests/test-workgroup-WorkStorage-Multiple.hpp index a32a1e69e1..103829be0b 100644 --- a/test/unit/workgroup/tests/test-workgroup-WorkStorage-Multiple.hpp +++ b/test/unit/workgroup/tests/test-workgroup-WorkStorage-Multiple.hpp @@ -1,5 +1,5 @@ //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~// -// Copyright (c) 2016-23, Lawrence Livermore National Security, LLC +// Copyright (c) 2016-24, Lawrence Livermore National Security, LLC // and RAJA project contributors. See the RAJA/LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/tpl/camp b/tpl/camp index ac34c25b72..03c80a6c6a 160000 --- a/tpl/camp +++ b/tpl/camp @@ -1 +1 @@ -Subproject commit ac34c25b722a06b138bc045d38bfa5e8fa3ec9c5 +Subproject commit 03c80a6c6ab4f97e76a52639563daec71435a277 diff --git a/tpl/desul b/tpl/desul index 2187ff3bf6..afbd4486b2 160000 --- a/tpl/desul +++ b/tpl/desul @@ -1 +1 @@ -Subproject commit 2187ff3bf6bc29ee113b841575332719f9a7ec6b +Subproject commit afbd4486b2b39211e8ded3f04b12c2e0f3a25248