From 87c4d77d8059504b3f90f5a1cb354d9e3d36a9ef Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Wed, 4 Oct 2023 15:37:12 -0700 Subject: [PATCH 001/592] Add "wrapper" capability to access std::numeric_limits functionality in CUDA and HIP device code --- src/axom/core/CMakeLists.txt | 1 + src/axom/core/NumericLimits.hpp | 39 +++++++++++++++++++++++++++++++++ 2 files changed, 40 insertions(+) create mode 100644 src/axom/core/NumericLimits.hpp diff --git a/src/axom/core/CMakeLists.txt b/src/axom/core/CMakeLists.txt index 31ee8570a0..17d8edc99d 100644 --- a/src/axom/core/CMakeLists.txt +++ b/src/axom/core/CMakeLists.txt @@ -56,6 +56,7 @@ set(core_headers IteratorBase.hpp Macros.hpp Map.hpp + NumericLimits.hpp Path.hpp StackArray.hpp Types.hpp diff --git a/src/axom/core/NumericLimits.hpp b/src/axom/core/NumericLimits.hpp new file mode 100644 index 0000000000..f488e4de52 --- /dev/null +++ b/src/axom/core/NumericLimits.hpp @@ -0,0 +1,39 @@ +// Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +/*! + * + * \file NumericLimits.hpp + * + * \brief Header file containing portability layer for std::numeric_limits + * capabilities + * + */ + +#ifndef AXOM_NUMERICLIMITS_HPP_ +#define AXOM_NUMERICLIMITS_HPP_ + +#include "axom/config.hpp" // for compile-time definitions + +#include + +#if defined(AXOM_USE_CUDA) +#include +#endif + +namespace axom +{ + +#if defined(AXOM_USE_CUDA) && defined(AXOM_DEVICE_CODE) + template + using numeric_limits = cuda::std::numeric_limits; +#else + template + using numeric_limits = std::numeric_limits; +#endif + +} // namespace axom + +#endif // AXOM_NUMERICLIMITS_HPP_ From 9ad3a06a4ecc49ec98be6a9bd9c3dad162f49279 Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Wed, 4 Oct 2023 15:39:27 -0700 Subject: [PATCH 002/592] add basic tests for numeric_limits host and device operations --- src/axom/core/tests/CMakeLists.txt | 1 + src/axom/core/tests/core_NumericLimits.hpp | 143 +++++++++++++++++++++ src/axom/core/tests/core_serial_main.cpp | 1 + 3 files changed, 145 insertions(+) create mode 100644 src/axom/core/tests/core_NumericLimits.hpp diff --git a/src/axom/core/tests/CMakeLists.txt b/src/axom/core/tests/CMakeLists.txt index 38a92bd901..6b8048b2ef 100644 --- a/src/axom/core/tests/CMakeLists.txt +++ b/src/axom/core/tests/CMakeLists.txt @@ -24,6 +24,7 @@ set(core_serial_tests core_execution_space.hpp core_map.hpp core_memory_management.hpp + core_NumericLimits.hpp core_Path.hpp core_stack_array.hpp diff --git a/src/axom/core/tests/core_NumericLimits.hpp b/src/axom/core/tests/core_NumericLimits.hpp new file mode 100644 index 0000000000..f7283f2aa3 --- /dev/null +++ b/src/axom/core/tests/core_NumericLimits.hpp @@ -0,0 +1,143 @@ +// Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +#include "axom/config.hpp" // for compile time definitions + +#include "axom/core/NumericLimits.hpp" + +// for gtest macros +#include "gtest/gtest.h" + +//------------------------------------------------------------------------------ +// UNIT TESTS +//------------------------------------------------------------------------------ + +//------------------------------------------------------------------------------ +TEST(core_NumericLimits, check_CPU) +{ + EXPECT_TRUE( axom::numeric_limits::lowest() == + std::numeric_limits::lowest() ); + EXPECT_TRUE( axom::numeric_limits::min() == + std::numeric_limits::min() ); + EXPECT_TRUE( axom::numeric_limits::max() == + std::numeric_limits::max() ); + EXPECT_TRUE( axom::numeric_limits::is_signed == + std::numeric_limits::is_signed ); + + EXPECT_TRUE( axom::numeric_limits::lowest() == + std::numeric_limits::lowest() ); + EXPECT_TRUE( axom::numeric_limits::min() == + std::numeric_limits::min() ); + EXPECT_TRUE( axom::numeric_limits::max() == + std::numeric_limits::max() ); + + EXPECT_TRUE( axom::numeric_limits::lowest() == + std::numeric_limits::lowest() ); + EXPECT_TRUE( axom::numeric_limits::min() == + std::numeric_limits::min() ); + EXPECT_TRUE( axom::numeric_limits::max() == + std::numeric_limits::max() ); +} + +//------------------------------------------------------------------------------ +#if defined(AXOM_USE_CUDA) + +__global__ void cuda_kernel(int* a, size_t* b, + float* c, double* d) +{ + a[0] = axom::numeric_limits::min(); + b[0] = axom::numeric_limits::max(); + c[0] = axom::numeric_limits::lowest(); + d[0] = axom::numeric_limits::max(); +} + +TEST(core_NumericLimits, check_CUDA) +{ + +int* a; +(void) cudaMalloc(&a, sizeof(int)); +(void) cudaMemset(a, 0, sizeof(int)); + +size_t* b; +(void) cudaMalloc(&b, sizeof(size_t)); +(void) cudaMemset(b, 0, sizeof(size_t)); + +float* c; +(void) cudaMalloc(&c, sizeof(float)); +(void) cudaMemset(c, 0, sizeof(float)); + +double* d; +(void) cudaMalloc(&d, sizeof(double)); +(void) cudaMemset(d, 0, sizeof(double)); + +cuda_kernel<<<1,1>>>(a, b, c, d); + +int ha; +size_t hb; +float hc; +double hd; +(void) cudaMemcpy(&ha, a, sizeof(int), cudaMemcpyDeviceToHost); +(void) cudaMemcpy(&hb, b, sizeof(size_t), cudaMemcpyDeviceToHost); +(void) cudaMemcpy(&hc, c, sizeof(float), cudaMemcpyDeviceToHost); +(void) cudaMemcpy(&hd, d, sizeof(double), cudaMemcpyDeviceToHost); + +EXPECT_TRUE(ha == axom::numeric_limits::min()); +EXPECT_TRUE(hb == axom::numeric_limits::max()); +EXPECT_TRUE(hc == axom::numeric_limits::lowest()); +EXPECT_TRUE(hd == axom::numeric_limits::max()); + +} +#endif + +//------------------------------------------------------------------------------ +#if defined(AXOM_USE_HIP) + + +__global__ void hip_kernel(int* a, size_t* b, + float* c, double* d) +{ + a[0] = axom::numeric_limits::min(); + b[0] = axom::numeric_limits::max(); + c[0] = axom::numeric_limits::lowest(); + d[0] = axom::numeric_limits::max(); +} + +TEST(core_NumericLimits, check_HIP) +{ + +int* a; +(void) hipMalloc(&a, sizeof(int)); +(void) hipMemset(a, 0, sizeof(int)); + +size_t* b; +(void) hipMalloc(&b, sizeof(size_t)); +(void) hipMemset(b, 0, sizeof(size_t)); + +float* c; +(void) hipMalloc(&c, sizeof(float)); +(void) hipMemset(c, 0, sizeof(float)); + +double* d; +(void) hipMalloc(&d, sizeof(double)); +(void) hipMemset(d, 0, sizeof(double)); + +hip_kernel<<<1,1>>>(a, b, c, d); + +int ha; +size_t hb; +float hc; +double hd; +(void) hipMemcpy(&ha, a, sizeof(int), hipMemcpyDeviceToHost); +(void) hipMemcpy(&hb, b, sizeof(size_t), hipMemcpyDeviceToHost); +(void) hipMemcpy(&hc, c, sizeof(float), hipMemcpyDeviceToHost); +(void) hipMemcpy(&hd, d, sizeof(double), hipMemcpyDeviceToHost); + +EXPECT_TRUE(ha == axom::numeric_limits::min()); +EXPECT_TRUE(hb == axom::numeric_limits::max()); +EXPECT_TRUE(hc == axom::numeric_limits::lowest()); +EXPECT_TRUE(hd == axom::numeric_limits::max()); + +} +#endif diff --git a/src/axom/core/tests/core_serial_main.cpp b/src/axom/core/tests/core_serial_main.cpp index 88e40e3c4f..cd74813655 100644 --- a/src/axom/core/tests/core_serial_main.cpp +++ b/src/axom/core/tests/core_serial_main.cpp @@ -16,6 +16,7 @@ #include "core_execution_space.hpp" #include "core_map.hpp" #include "core_memory_management.hpp" +#include "core_NumericLimits.hpp" #include "core_Path.hpp" #include "core_stack_array.hpp" From b255612685ed20717a36ff631f12aa4def1a8669 Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Wed, 4 Oct 2023 15:48:24 -0700 Subject: [PATCH 003/592] Add some comments to tests --- src/axom/core/tests/core_NumericLimits.hpp | 37 +++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/src/axom/core/tests/core_NumericLimits.hpp b/src/axom/core/tests/core_NumericLimits.hpp index f7283f2aa3..ca9d616bca 100644 --- a/src/axom/core/tests/core_NumericLimits.hpp +++ b/src/axom/core/tests/core_NumericLimits.hpp @@ -17,6 +17,10 @@ //------------------------------------------------------------------------------ TEST(core_NumericLimits, check_CPU) { + // + // Tests to compare axom::numeric_limits to std::numeric_limits + // to ensure that Axom type aliasing is correct. + // EXPECT_TRUE( axom::numeric_limits::lowest() == std::numeric_limits::lowest() ); EXPECT_TRUE( axom::numeric_limits::min() == @@ -43,7 +47,14 @@ TEST(core_NumericLimits, check_CPU) //------------------------------------------------------------------------------ #if defined(AXOM_USE_CUDA) +// +// Tests to ensure axom::numeric_limits type alias does the correct thing +// in host and CUDA device code. +// +// +// Simple device kernel +// __global__ void cuda_kernel(int* a, size_t* b, float* c, double* d) { @@ -56,6 +67,9 @@ __global__ void cuda_kernel(int* a, size_t* b, TEST(core_NumericLimits, check_CUDA) { +// +// Device memory allocation and initialiation for a few different types. +// int* a; (void) cudaMalloc(&a, sizeof(int)); (void) cudaMemset(a, 0, sizeof(int)); @@ -72,8 +86,14 @@ double* d; (void) cudaMalloc(&d, sizeof(double)); (void) cudaMemset(d, 0, sizeof(double)); +// +// Set values in device code. +// cuda_kernel<<<1,1>>>(a, b, c, d); +// +// Copy device values back to host and compare with expectations.... +// int ha; size_t hb; float hc; @@ -93,8 +113,14 @@ EXPECT_TRUE(hd == axom::numeric_limits::max()); //------------------------------------------------------------------------------ #if defined(AXOM_USE_HIP) +// +// Tests to ensure axom::numeric_limits type alias does the correct thing +// in host and CUDA device code. +// - +// +// Simple device kernel +// __global__ void hip_kernel(int* a, size_t* b, float* c, double* d) { @@ -107,6 +133,9 @@ __global__ void hip_kernel(int* a, size_t* b, TEST(core_NumericLimits, check_HIP) { +// +// Device memory allocation and initialiation for a few different types. +// int* a; (void) hipMalloc(&a, sizeof(int)); (void) hipMemset(a, 0, sizeof(int)); @@ -123,8 +152,14 @@ double* d; (void) hipMalloc(&d, sizeof(double)); (void) hipMemset(d, 0, sizeof(double)); +// +// Set values in device code. +// hip_kernel<<<1,1>>>(a, b, c, d); +// +// Copy device values back to host and compare with expectations.... +// int ha; size_t hb; float hc; From f401e6ef865108aecc79e0120ca9630196d3171d Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Thu, 5 Oct 2023 09:07:05 -0700 Subject: [PATCH 004/592] Run clang format --- src/axom/core/NumericLimits.hpp | 11 +- src/axom/core/tests/core_NumericLimits.hpp | 198 ++++++++++----------- 2 files changed, 100 insertions(+), 109 deletions(-) diff --git a/src/axom/core/NumericLimits.hpp b/src/axom/core/NumericLimits.hpp index f488e4de52..a9d1d873c4 100644 --- a/src/axom/core/NumericLimits.hpp +++ b/src/axom/core/NumericLimits.hpp @@ -20,18 +20,17 @@ #include #if defined(AXOM_USE_CUDA) -#include + #include #endif namespace axom { - #if defined(AXOM_USE_CUDA) && defined(AXOM_DEVICE_CODE) - template - using numeric_limits = cuda::std::numeric_limits; +template +using numeric_limits = cuda::std::numeric_limits; #else - template - using numeric_limits = std::numeric_limits; +template +using numeric_limits = std::numeric_limits; #endif } // namespace axom diff --git a/src/axom/core/tests/core_NumericLimits.hpp b/src/axom/core/tests/core_NumericLimits.hpp index ca9d616bca..c3165732a2 100644 --- a/src/axom/core/tests/core_NumericLimits.hpp +++ b/src/axom/core/tests/core_NumericLimits.hpp @@ -20,29 +20,27 @@ TEST(core_NumericLimits, check_CPU) // // Tests to compare axom::numeric_limits to std::numeric_limits // to ensure that Axom type aliasing is correct. - // - EXPECT_TRUE( axom::numeric_limits::lowest() == - std::numeric_limits::lowest() ); - EXPECT_TRUE( axom::numeric_limits::min() == - std::numeric_limits::min() ); - EXPECT_TRUE( axom::numeric_limits::max() == - std::numeric_limits::max() ); - EXPECT_TRUE( axom::numeric_limits::is_signed == - std::numeric_limits::is_signed ); - - EXPECT_TRUE( axom::numeric_limits::lowest() == - std::numeric_limits::lowest() ); - EXPECT_TRUE( axom::numeric_limits::min() == - std::numeric_limits::min() ); - EXPECT_TRUE( axom::numeric_limits::max() == - std::numeric_limits::max() ); - - EXPECT_TRUE( axom::numeric_limits::lowest() == - std::numeric_limits::lowest() ); - EXPECT_TRUE( axom::numeric_limits::min() == - std::numeric_limits::min() ); - EXPECT_TRUE( axom::numeric_limits::max() == - std::numeric_limits::max() ); + // + EXPECT_TRUE(axom::numeric_limits::lowest() == + std::numeric_limits::lowest()); + EXPECT_TRUE(axom::numeric_limits::min() == std::numeric_limits::min()); + EXPECT_TRUE(axom::numeric_limits::max() == std::numeric_limits::max()); + EXPECT_TRUE(axom::numeric_limits::is_signed == + std::numeric_limits::is_signed); + + EXPECT_TRUE(axom::numeric_limits::lowest() == + std::numeric_limits::lowest()); + EXPECT_TRUE(axom::numeric_limits::min() == + std::numeric_limits::min()); + EXPECT_TRUE(axom::numeric_limits::max() == + std::numeric_limits::max()); + + EXPECT_TRUE(axom::numeric_limits::lowest() == + std::numeric_limits::lowest()); + EXPECT_TRUE(axom::numeric_limits::min() == + std::numeric_limits::min()); + EXPECT_TRUE(axom::numeric_limits::max() == + std::numeric_limits::max()); } //------------------------------------------------------------------------------ @@ -50,13 +48,12 @@ TEST(core_NumericLimits, check_CPU) // // Tests to ensure axom::numeric_limits type alias does the correct thing // in host and CUDA device code. -// +// // // Simple device kernel // -__global__ void cuda_kernel(int* a, size_t* b, - float* c, double* d) +__global__ void cuda_kernel(int* a, size_t* b, float* c, double* d) { a[0] = axom::numeric_limits::min(); b[0] = axom::numeric_limits::max(); @@ -66,48 +63,46 @@ __global__ void cuda_kernel(int* a, size_t* b, TEST(core_NumericLimits, check_CUDA) { + // + // Device memory allocation and initialiation for a few different types. + // + int* a; + (void)cudaMalloc(&a, sizeof(int)); + (void)cudaMemset(a, 0, sizeof(int)); -// -// Device memory allocation and initialiation for a few different types. -// -int* a; -(void) cudaMalloc(&a, sizeof(int)); -(void) cudaMemset(a, 0, sizeof(int)); - -size_t* b; -(void) cudaMalloc(&b, sizeof(size_t)); -(void) cudaMemset(b, 0, sizeof(size_t)); - -float* c; -(void) cudaMalloc(&c, sizeof(float)); -(void) cudaMemset(c, 0, sizeof(float)); + size_t* b; + (void)cudaMalloc(&b, sizeof(size_t)); + (void)cudaMemset(b, 0, sizeof(size_t)); -double* d; -(void) cudaMalloc(&d, sizeof(double)); -(void) cudaMemset(d, 0, sizeof(double)); + float* c; + (void)cudaMalloc(&c, sizeof(float)); + (void)cudaMemset(c, 0, sizeof(float)); -// -// Set values in device code. -// -cuda_kernel<<<1,1>>>(a, b, c, d); + double* d; + (void)cudaMalloc(&d, sizeof(double)); + (void)cudaMemset(d, 0, sizeof(double)); -// -// Copy device values back to host and compare with expectations.... -// -int ha; -size_t hb; -float hc; -double hd; -(void) cudaMemcpy(&ha, a, sizeof(int), cudaMemcpyDeviceToHost); -(void) cudaMemcpy(&hb, b, sizeof(size_t), cudaMemcpyDeviceToHost); -(void) cudaMemcpy(&hc, c, sizeof(float), cudaMemcpyDeviceToHost); -(void) cudaMemcpy(&hd, d, sizeof(double), cudaMemcpyDeviceToHost); - -EXPECT_TRUE(ha == axom::numeric_limits::min()); -EXPECT_TRUE(hb == axom::numeric_limits::max()); -EXPECT_TRUE(hc == axom::numeric_limits::lowest()); -EXPECT_TRUE(hd == axom::numeric_limits::max()); + // + // Set values in device code. + // + cuda_kernel<<<1, 1>>>(a, b, c, d); + // + // Copy device values back to host and compare with expectations.... + // + int ha; + size_t hb; + float hc; + double hd; + (void)cudaMemcpy(&ha, a, sizeof(int), cudaMemcpyDeviceToHost); + (void)cudaMemcpy(&hb, b, sizeof(size_t), cudaMemcpyDeviceToHost); + (void)cudaMemcpy(&hc, c, sizeof(float), cudaMemcpyDeviceToHost); + (void)cudaMemcpy(&hd, d, sizeof(double), cudaMemcpyDeviceToHost); + + EXPECT_TRUE(ha == axom::numeric_limits::min()); + EXPECT_TRUE(hb == axom::numeric_limits::max()); + EXPECT_TRUE(hc == axom::numeric_limits::lowest()); + EXPECT_TRUE(hd == axom::numeric_limits::max()); } #endif @@ -116,13 +111,12 @@ EXPECT_TRUE(hd == axom::numeric_limits::max()); // // Tests to ensure axom::numeric_limits type alias does the correct thing // in host and CUDA device code. -// +// // // Simple device kernel // -__global__ void hip_kernel(int* a, size_t* b, - float* c, double* d) +__global__ void hip_kernel(int* a, size_t* b, float* c, double* d) { a[0] = axom::numeric_limits::min(); b[0] = axom::numeric_limits::max(); @@ -132,47 +126,45 @@ __global__ void hip_kernel(int* a, size_t* b, TEST(core_NumericLimits, check_HIP) { + // + // Device memory allocation and initialiation for a few different types. + // + int* a; + (void)hipMalloc(&a, sizeof(int)); + (void)hipMemset(a, 0, sizeof(int)); -// -// Device memory allocation and initialiation for a few different types. -// -int* a; -(void) hipMalloc(&a, sizeof(int)); -(void) hipMemset(a, 0, sizeof(int)); - -size_t* b; -(void) hipMalloc(&b, sizeof(size_t)); -(void) hipMemset(b, 0, sizeof(size_t)); + size_t* b; + (void)hipMalloc(&b, sizeof(size_t)); + (void)hipMemset(b, 0, sizeof(size_t)); -float* c; -(void) hipMalloc(&c, sizeof(float)); -(void) hipMemset(c, 0, sizeof(float)); + float* c; + (void)hipMalloc(&c, sizeof(float)); + (void)hipMemset(c, 0, sizeof(float)); -double* d; -(void) hipMalloc(&d, sizeof(double)); -(void) hipMemset(d, 0, sizeof(double)); + double* d; + (void)hipMalloc(&d, sizeof(double)); + (void)hipMemset(d, 0, sizeof(double)); -// -// Set values in device code. -// -hip_kernel<<<1,1>>>(a, b, c, d); - -// -// Copy device values back to host and compare with expectations.... -// -int ha; -size_t hb; -float hc; -double hd; -(void) hipMemcpy(&ha, a, sizeof(int), hipMemcpyDeviceToHost); -(void) hipMemcpy(&hb, b, sizeof(size_t), hipMemcpyDeviceToHost); -(void) hipMemcpy(&hc, c, sizeof(float), hipMemcpyDeviceToHost); -(void) hipMemcpy(&hd, d, sizeof(double), hipMemcpyDeviceToHost); - -EXPECT_TRUE(ha == axom::numeric_limits::min()); -EXPECT_TRUE(hb == axom::numeric_limits::max()); -EXPECT_TRUE(hc == axom::numeric_limits::lowest()); -EXPECT_TRUE(hd == axom::numeric_limits::max()); + // + // Set values in device code. + // + hip_kernel<<<1, 1>>>(a, b, c, d); + // + // Copy device values back to host and compare with expectations.... + // + int ha; + size_t hb; + float hc; + double hd; + (void)hipMemcpy(&ha, a, sizeof(int), hipMemcpyDeviceToHost); + (void)hipMemcpy(&hb, b, sizeof(size_t), hipMemcpyDeviceToHost); + (void)hipMemcpy(&hc, c, sizeof(float), hipMemcpyDeviceToHost); + (void)hipMemcpy(&hd, d, sizeof(double), hipMemcpyDeviceToHost); + + EXPECT_TRUE(ha == axom::numeric_limits::min()); + EXPECT_TRUE(hb == axom::numeric_limits::max()); + EXPECT_TRUE(hc == axom::numeric_limits::lowest()); + EXPECT_TRUE(hd == axom::numeric_limits::max()); } #endif From 90aed51e5a24e0b22479f387a6ebbfa9c6068737 Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Thu, 5 Oct 2023 09:41:01 -0700 Subject: [PATCH 005/592] Convert core tests to use axom::numeric_limits --- src/axom/core/tests/CMakeLists.txt | 2 +- src/axom/core/tests/core_bit_utilities.hpp | 3 ++- ...{core_NumericLimits.hpp => core_numeric_limits.hpp} | 0 src/axom/core/tests/core_serial_main.cpp | 2 +- src/axom/core/tests/core_types.hpp | 10 +++++----- src/axom/core/tests/numerics_floating_point_limits.hpp | 9 +++++---- 6 files changed, 14 insertions(+), 12 deletions(-) rename src/axom/core/tests/{core_NumericLimits.hpp => core_numeric_limits.hpp} (100%) diff --git a/src/axom/core/tests/CMakeLists.txt b/src/axom/core/tests/CMakeLists.txt index 6b8048b2ef..6829185683 100644 --- a/src/axom/core/tests/CMakeLists.txt +++ b/src/axom/core/tests/CMakeLists.txt @@ -24,7 +24,7 @@ set(core_serial_tests core_execution_space.hpp core_map.hpp core_memory_management.hpp - core_NumericLimits.hpp + core_numeric_limits.hpp core_Path.hpp core_stack_array.hpp diff --git a/src/axom/core/tests/core_bit_utilities.hpp b/src/axom/core/tests/core_bit_utilities.hpp index 0746cbd238..387464ee52 100644 --- a/src/axom/core/tests/core_bit_utilities.hpp +++ b/src/axom/core/tests/core_bit_utilities.hpp @@ -7,6 +7,7 @@ #include "axom/config.hpp" #include "axom/core/Types.hpp" +#include "axom/core/NumericLimits.hpp" #include "axom/core/utilities/Utilities.hpp" #include "axom/core/utilities/BitUtilities.hpp" @@ -22,7 +23,7 @@ T random_int() { static_assert(std::is_integral::value, "T must be an integral type"); - constexpr T max_int = std::numeric_limits::max(); + constexpr T max_int = axom::numeric_limits::max(); constexpr double max_d = static_cast(max_int); const auto val = axom::utilities::random_real(0., max_d); diff --git a/src/axom/core/tests/core_NumericLimits.hpp b/src/axom/core/tests/core_numeric_limits.hpp similarity index 100% rename from src/axom/core/tests/core_NumericLimits.hpp rename to src/axom/core/tests/core_numeric_limits.hpp diff --git a/src/axom/core/tests/core_serial_main.cpp b/src/axom/core/tests/core_serial_main.cpp index cd74813655..b64ca50e99 100644 --- a/src/axom/core/tests/core_serial_main.cpp +++ b/src/axom/core/tests/core_serial_main.cpp @@ -16,7 +16,7 @@ #include "core_execution_space.hpp" #include "core_map.hpp" #include "core_memory_management.hpp" -#include "core_NumericLimits.hpp" +#include "core_numeric_limits.hpp" #include "core_Path.hpp" #include "core_stack_array.hpp" diff --git a/src/axom/core/tests/core_types.hpp b/src/axom/core/tests/core_types.hpp index bf666e4e0e..c2340e7de0 100644 --- a/src/axom/core/tests/core_types.hpp +++ b/src/axom/core/tests/core_types.hpp @@ -7,12 +7,12 @@ #include "axom/config.hpp" #include "axom/core/Types.hpp" #include "axom/core/Macros.hpp" +#include "axom/core/NumericLimits.hpp" // gtest includes #include "gtest/gtest.h" // C/C++ includes -#include // for std::numeric_limits #include // for std::is_same, std::is_integral, etc. #ifndef AXOM_USE_MPI @@ -62,7 +62,7 @@ void check_real_type(std::size_t expected_num_bytes, MPI_Datatype expected_mpi_type) { EXPECT_TRUE(std::is_floating_point::value); - EXPECT_TRUE(std::numeric_limits::is_signed); + EXPECT_TRUE(axom::numeric_limits::is_signed); EXPECT_EQ(sizeof(RealType), expected_num_bytes); check_mpi_type(expected_num_bytes, expected_mpi_type); @@ -75,9 +75,9 @@ void check_integral_type(std::size_t expected_num_bytes, int expected_num_digits, MPI_Datatype expected_mpi_type) { - EXPECT_TRUE(std::numeric_limits::is_integer); - EXPECT_EQ(std::numeric_limits::is_signed, is_signed); - EXPECT_EQ(std::numeric_limits::digits, expected_num_digits); + EXPECT_TRUE(axom::numeric_limits::is_integer); + EXPECT_EQ(axom::numeric_limits::is_signed, is_signed); + EXPECT_EQ(axom::numeric_limits::digits, expected_num_digits); EXPECT_EQ(sizeof(IntegralType), expected_num_bytes); check_mpi_type(expected_num_bytes, expected_mpi_type); diff --git a/src/axom/core/tests/numerics_floating_point_limits.hpp b/src/axom/core/tests/numerics_floating_point_limits.hpp index b3d7996b95..237525fd4c 100644 --- a/src/axom/core/tests/numerics_floating_point_limits.hpp +++ b/src/axom/core/tests/numerics_floating_point_limits.hpp @@ -5,6 +5,7 @@ // axom includes #include "axom/core/Macros.hpp" +#include "axom/core/NumericLimits.hpp" #include "axom/core/utilities/Utilities.hpp" #include "axom/core/numerics/floating_point_limits.hpp" @@ -29,10 +30,10 @@ void check_type_limits(const std::string& typeName) const T MIN = axom::numerics::floating_point_limits::min(); const T MAX = axom::numerics::floating_point_limits::max(); - const T STD_EPS = std::numeric_limits::epsilon(); - const T STD_LOWEST = std::numeric_limits::lowest(); - const T STD_MIN = std::numeric_limits::min(); - const T STD_MAX = std::numeric_limits::max(); + const T STD_EPS = axom::numeric_limits::epsilon(); + const T STD_LOWEST = axom::numeric_limits::lowest(); + const T STD_MIN = axom::numeric_limits::min(); + const T STD_MAX = axom::numeric_limits::max(); EXPECT_TRUE(axom::utilities::isNearlyEqual(LOWEST, STD_LOWEST, EPS)); EXPECT_TRUE(axom::utilities::isNearlyEqual(MIN, STD_MIN, EPS)); From ec4e42fa557e56f249f19ecca5f22788f78dcaaf Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Thu, 5 Oct 2023 11:21:12 -0700 Subject: [PATCH 006/592] Revert type change --- src/axom/core/tests/numerics_floating_point_limits.hpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/axom/core/tests/numerics_floating_point_limits.hpp b/src/axom/core/tests/numerics_floating_point_limits.hpp index 237525fd4c..b3d7996b95 100644 --- a/src/axom/core/tests/numerics_floating_point_limits.hpp +++ b/src/axom/core/tests/numerics_floating_point_limits.hpp @@ -5,7 +5,6 @@ // axom includes #include "axom/core/Macros.hpp" -#include "axom/core/NumericLimits.hpp" #include "axom/core/utilities/Utilities.hpp" #include "axom/core/numerics/floating_point_limits.hpp" @@ -30,10 +29,10 @@ void check_type_limits(const std::string& typeName) const T MIN = axom::numerics::floating_point_limits::min(); const T MAX = axom::numerics::floating_point_limits::max(); - const T STD_EPS = axom::numeric_limits::epsilon(); - const T STD_LOWEST = axom::numeric_limits::lowest(); - const T STD_MIN = axom::numeric_limits::min(); - const T STD_MAX = axom::numeric_limits::max(); + const T STD_EPS = std::numeric_limits::epsilon(); + const T STD_LOWEST = std::numeric_limits::lowest(); + const T STD_MIN = std::numeric_limits::min(); + const T STD_MAX = std::numeric_limits::max(); EXPECT_TRUE(axom::utilities::isNearlyEqual(LOWEST, STD_LOWEST, EPS)); EXPECT_TRUE(axom::utilities::isNearlyEqual(MIN, STD_MIN, EPS)); From 7aadf4b8f1190d31b5318195c11a532831130c82 Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Thu, 5 Oct 2023 13:39:35 -0700 Subject: [PATCH 007/592] Experiment with test for device code --- src/axom/core/tests/numerics_floating_point_limits.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/axom/core/tests/numerics_floating_point_limits.hpp b/src/axom/core/tests/numerics_floating_point_limits.hpp index b3d7996b95..5daf93c8d9 100644 --- a/src/axom/core/tests/numerics_floating_point_limits.hpp +++ b/src/axom/core/tests/numerics_floating_point_limits.hpp @@ -47,5 +47,7 @@ TEST(numerics_floating_point_limits, consistency_with_standard_numeric_limits) { check_type_limits("float"); check_type_limits("double"); +#if !defined(AXOM_DEVICE_CODE) check_type_limits("long double"); +#endif } From 69272e9dfc9b1c93b83e0ad185ef74508f9f436c Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 6 Mar 2024 16:09:12 -0800 Subject: [PATCH 008/592] Move ArrayIndexer class to core. --- src/axom/{quest => core}/ArrayIndexer.hpp | 13 +++++---- src/axom/core/CMakeLists.txt | 1 + src/axom/core/tests/CMakeLists.txt | 1 + .../tests/core_array_indexer.hpp} | 27 ++++++------------- src/axom/core/tests/core_serial_main.cpp | 1 + src/axom/quest/CMakeLists.txt | 1 - src/axom/quest/detail/MarchingCubesImpl.hpp | 2 +- .../examples/quest_marching_cubes_example.cpp | 2 +- src/axom/quest/tests/CMakeLists.txt | 1 - src/axom/quest/tests/quest_mesh_view_util.cpp | 2 +- 10 files changed, 20 insertions(+), 31 deletions(-) rename src/axom/{quest => core}/ArrayIndexer.hpp (96%) rename src/axom/{quest/tests/quest_array_indexer.cpp => core/tests/core_array_indexer.hpp} (95%) diff --git a/src/axom/quest/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp similarity index 96% rename from src/axom/quest/ArrayIndexer.hpp rename to src/axom/core/ArrayIndexer.hpp index fbd53e7681..99101bb8a2 100644 --- a/src/axom/quest/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -6,7 +6,6 @@ #ifndef QUEST_ARRAYINDEXER_HPP_ #define QUEST_ARRAYINDEXER_HPP_ -#include "axom/slic.hpp" #include "axom/core/StackArray.hpp" #include "axom/core/numerics/matvecops.hpp" @@ -120,9 +119,9 @@ class ArrayIndexer ArrayStrideOrder arrayStrideOrder, int fastestStrideLength = 1) { - SLIC_ASSERT(arrayStrideOrder == ArrayStrideOrder::COLUMN || - arrayStrideOrder == ArrayStrideOrder::ROW || - (DIM == 1 && arrayStrideOrder == ArrayStrideOrder::BOTH)); + assert(arrayStrideOrder == ArrayStrideOrder::COLUMN || + arrayStrideOrder == ArrayStrideOrder::ROW || + (DIM == 1 && arrayStrideOrder == ArrayStrideOrder::BOTH)); if(arrayStrideOrder == ArrayStrideOrder::COLUMN) { for(int d = 0; d < DIM; ++d) @@ -160,7 +159,7 @@ class ArrayIndexer const axom::StackArray& shape, const axom::StackArray& slowestDirs) { - SLIC_ASSERT(isPermutation(slowestDirs)); + assert(isPermutation(slowestDirs)); m_slowestDirs = slowestDirs; m_strides[m_slowestDirs[DIM - 1]] = 1; for(int d = DIM - 2; d >= 0; --d) @@ -229,8 +228,8 @@ class ArrayIndexer const axom::StackArray& strides, ArrayStrideOrder orderPref) { - SLIC_ASSERT(orderPref == axom::ArrayStrideOrder::COLUMN || - orderPref == axom::ArrayStrideOrder::ROW); + assert(orderPref == axom::ArrayStrideOrder::COLUMN || + orderPref == axom::ArrayStrideOrder::ROW); m_strides = strides; for(int d = 0; d < DIM; ++d) diff --git a/src/axom/core/CMakeLists.txt b/src/axom/core/CMakeLists.txt index 0d45eccc89..ead99d1c10 100644 --- a/src/axom/core/CMakeLists.txt +++ b/src/axom/core/CMakeLists.txt @@ -56,6 +56,7 @@ set(core_headers ArrayBase.hpp ArrayIteratorBase.hpp ArrayView.hpp + ArrayIndexer.hpp IteratorBase.hpp Macros.hpp Map.hpp diff --git a/src/axom/core/tests/CMakeLists.txt b/src/axom/core/tests/CMakeLists.txt index c9eb08bb5c..95e7405077 100644 --- a/src/axom/core/tests/CMakeLists.txt +++ b/src/axom/core/tests/CMakeLists.txt @@ -17,6 +17,7 @@ set(core_serial_tests core_about.hpp core_array.hpp + core_array_indexer.hpp core_array_for_all.hpp core_utilities.hpp core_bit_utilities.hpp diff --git a/src/axom/quest/tests/quest_array_indexer.cpp b/src/axom/core/tests/core_array_indexer.hpp similarity index 95% rename from src/axom/quest/tests/quest_array_indexer.cpp rename to src/axom/core/tests/core_array_indexer.hpp index a84430b68d..236aad1d01 100644 --- a/src/axom/quest/tests/quest_array_indexer.cpp +++ b/src/axom/core/tests/core_array_indexer.hpp @@ -5,14 +5,14 @@ // Axom includes #include "axom/core/Array.hpp" -#include "axom/quest/ArrayIndexer.hpp" +#include "axom/core/ArrayIndexer.hpp" #include "axom/fmt.hpp" // Google test include #include "gtest/gtest.h" // Test strides and permutations. -TEST(quest_array_indexer, quest_strides_and_permutations) +TEST(core_array_indexer, core_strides_and_permutations) { { // 1D @@ -247,7 +247,7 @@ typename std::enable_if::type check_arbitrary_strides_nested_loops( axom::IndexType offset = 0; for(n = 0; n < lengths[fastestDirs[0]]; ++n) { - SLIC_INFO(axom::fmt::format("offset {} i {}", offset, i)); + // SLIC_INFO(axom::fmt::format("offset {} i {}", offset, i)); EXPECT_EQ(ai.toMultiIndex(offset), i); EXPECT_EQ(ai.toFlatIndex(i), offset); ++offset; @@ -272,7 +272,7 @@ typename std::enable_if::type check_arbitrary_strides_nested_loops( { for(n = 0; n < lengths[fastestDirs[0]]; ++n) { - SLIC_INFO(axom::fmt::format("offset {} ij {}", offset, ij)); + // SLIC_INFO(axom::fmt::format("offset {} ij {}", offset, ij)); EXPECT_EQ(ai.toMultiIndex(offset), ij); EXPECT_EQ(ai.toFlatIndex(ij), offset); ++offset; @@ -301,7 +301,7 @@ typename std::enable_if::type check_arbitrary_strides_nested_loops( { for(n = 0; n < lengths[fastestDirs[0]]; ++n) { - SLIC_INFO(axom::fmt::format("offset {} ijk {}", offset, ijk)); + // SLIC_INFO(axom::fmt::format("offset {} ijk {}", offset, ijk)); EXPECT_EQ(ai.toMultiIndex(offset), ijk); EXPECT_EQ(ai.toFlatIndex(ijk), offset); ++offset; @@ -316,9 +316,7 @@ void check_arbitrary_strides( const axom::StackArray& fastestDirs) { // fastestDirs should be a permutation. - SLIC_INFO(axom::fmt::format("Testing lengths {} with fastestDirs {}", - lengths, - fastestDirs)); + // SLIC_INFO(axom::fmt::format("Testing lengths {} with fastestDirs {}", lengths, fastestDirs)); axom::StackArray strides; axom::IndexType currentStride = 1; @@ -341,7 +339,7 @@ void check_arbitrary_strides( } // Test arbitrary strides. -TEST(quest_array_indexer, quest_arbitrary_strides) +TEST(core_array_indexer, core_arbitrary_strides) { { constexpr int DIM = 1; @@ -394,7 +392,7 @@ TEST(quest_array_indexer, quest_arbitrary_strides) } // Test column-major element offsets with Array's. -TEST(quest_array_indexer, quest_array_match) +TEST(core_array_indexer, core_array_match) { // No test for 1D. Array provides no non-trivial interface to test. @@ -432,12 +430,3 @@ TEST(quest_array_indexer, quest_array_match) } } } - -int main(int argc, char** argv) -{ - ::testing::InitGoogleTest(&argc, argv); - - int result = RUN_ALL_TESTS(); - - return result; -} diff --git a/src/axom/core/tests/core_serial_main.cpp b/src/axom/core/tests/core_serial_main.cpp index 68c93b6cfa..107bc2ef97 100644 --- a/src/axom/core/tests/core_serial_main.cpp +++ b/src/axom/core/tests/core_serial_main.cpp @@ -10,6 +10,7 @@ #include "core_about.hpp" #include "core_array.hpp" #include "core_array_for_all.hpp" +#include "core_array_indexer.hpp" #include "core_utilities.hpp" #include "core_bit_utilities.hpp" #include "core_execution_for_all.hpp" diff --git a/src/axom/quest/CMakeLists.txt b/src/axom/quest/CMakeLists.txt index 7daceb2ea3..d52d50f66c 100644 --- a/src/axom/quest/CMakeLists.txt +++ b/src/axom/quest/CMakeLists.txt @@ -59,7 +59,6 @@ set( quest_headers util/mesh_helpers.hpp MeshViewUtil.hpp - ArrayIndexer.hpp ) set( quest_sources diff --git a/src/axom/quest/detail/MarchingCubesImpl.hpp b/src/axom/quest/detail/MarchingCubesImpl.hpp index 5582b3efec..4ba02aa20d 100644 --- a/src/axom/quest/detail/MarchingCubesImpl.hpp +++ b/src/axom/quest/detail/MarchingCubesImpl.hpp @@ -13,7 +13,7 @@ #include "axom/core/execution/execution_space.hpp" #include "axom/slic/interface/slic_macros.hpp" -#include "axom/quest/ArrayIndexer.hpp" +#include "axom/core/ArrayIndexer.hpp" #include "axom/quest/MeshViewUtil.hpp" #include "axom/quest/detail/MarchingCubesSingleDomain.hpp" #include "axom/primal/geometry/Point.hpp" diff --git a/src/axom/quest/examples/quest_marching_cubes_example.cpp b/src/axom/quest/examples/quest_marching_cubes_example.cpp index fb847068c9..4a3e085a32 100644 --- a/src/axom/quest/examples/quest_marching_cubes_example.cpp +++ b/src/axom/quest/examples/quest_marching_cubes_example.cpp @@ -27,7 +27,7 @@ #include "axom/primal.hpp" #include "axom/mint/mesh/UnstructuredMesh.hpp" #include "axom/mint/execution/internal/structured_exec.hpp" -#include "axom/quest/ArrayIndexer.hpp" +#include "axom/core/ArrayIndexer.hpp" #include "axom/quest/MarchingCubes.hpp" #include "axom/quest/MeshViewUtil.hpp" #include "axom/sidre.hpp" diff --git a/src/axom/quest/tests/CMakeLists.txt b/src/axom/quest/tests/CMakeLists.txt index 95042c29d5..d450d5fa4e 100644 --- a/src/axom/quest/tests/CMakeLists.txt +++ b/src/axom/quest/tests/CMakeLists.txt @@ -15,7 +15,6 @@ set(quest_tests quest_pro_e_reader.cpp quest_stl_reader.cpp quest_vertex_weld.cpp - quest_array_indexer.cpp ) blt_list_append(TO quest_tests diff --git a/src/axom/quest/tests/quest_mesh_view_util.cpp b/src/axom/quest/tests/quest_mesh_view_util.cpp index 9769e0e5fe..813c489a4f 100644 --- a/src/axom/quest/tests/quest_mesh_view_util.cpp +++ b/src/axom/quest/tests/quest_mesh_view_util.cpp @@ -17,7 +17,7 @@ #include "axom/core.hpp" #include "axom/slic.hpp" #include "axom/primal.hpp" - #include "axom/quest/ArrayIndexer.hpp" + #include "axom/core/ArrayIndexer.hpp" #include "axom/quest/MeshViewUtil.hpp" #include "axom/core/Types.hpp" From 87aaf9f2b5af5c462fc713c8289b395dd40a771c Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 6 Mar 2024 16:36:14 -0800 Subject: [PATCH 009/592] Add core array performance example. --- src/axom/core/ArrayBase.hpp | 14 + src/axom/core/examples/CMakeLists.txt | 22 + src/axom/core/examples/core_array_perf.cpp | 544 +++++++++++++++++++++ 3 files changed, 580 insertions(+) create mode 100644 src/axom/core/examples/core_array_perf.cpp diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index 1e54da7a3d..5493316b1d 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -8,6 +8,7 @@ #include "axom/config.hpp" // for compile-time defines #include "axom/core/Macros.hpp" // for axom macros +#include "axom/core/ArrayIndexer.hpp" // for index conversion #include "axom/core/memory_management.hpp" // for memory allocation functions #include "axom/core/utilities/Utilities.hpp" // for processAbort() #include "axom/core/Types.hpp" // for IndexType definition @@ -187,7 +188,9 @@ class ArrayBase const StackArray& stride) : m_shape {shape} , m_strides {stride} + , m_indexer() { + m_indexer.initializeStrides(stride, axom::ArrayStrideOrder::ROW); validateShapeAndStride(shape, stride); } @@ -334,6 +337,12 @@ class ArrayBase return m_shape; } + /// \brief Returns the indexer of the Array + AXOM_HOST_DEVICE const ArrayIndexer& indexer() const + { + return m_indexer; + } + /*! * \brief Returns the memory strides of the Array. */ @@ -403,6 +412,9 @@ class ArrayBase { m_strides[i] = m_strides[i + 1] * m_shape[i + 1]; } + // For now, indexer just shadows stride. + // Future: indexer will provide the stides and offsets. + m_indexer.initializeStrides(m_strides, axom::ArrayStrideOrder::ROW); } /*! @@ -549,6 +561,8 @@ class ArrayBase StackArray m_shape; /// \brief Logical strides in each direction StackArray m_strides; + /// \brief For converting between multidim indices and offset. + ArrayIndexer m_indexer; }; /// \brief Array implementation specific to 1D Arrays diff --git a/src/axom/core/examples/CMakeLists.txt b/src/axom/core/examples/CMakeLists.txt index adcb21d57c..03f2b98d4e 100644 --- a/src/axom/core/examples/CMakeLists.txt +++ b/src/axom/core/examples/CMakeLists.txt @@ -61,3 +61,25 @@ if(AXOM_ENABLE_TESTS) NAME core_utilities COMMAND core_utilities_ex ${CMAKE_CURRENT_SOURCE_DIR} ) endif() + +axom_add_executable( + NAME core_array_perf_ex + SOURCES core_array_perf.cpp + OUTPUT_DIR ${EXAMPLE_OUTPUT_DIRECTORY} + DEPENDS_ON core + FOLDER axom/core/examples ) + +if(AXOM_ENABLE_TESTS) + axom_add_test( + NAME core_array_perf_1d + COMMAND core_array_perf_ex --shape 120000 ) + axom_add_test( + NAME core_array_perf_2d + COMMAND core_array_perf_ex --shape 300 400 ) + axom_add_test( + NAME core_array_perf_3d + COMMAND core_array_perf_ex --shape 30 200 20 ) + axom_add_test( + NAME core_array_perf_4d + COMMAND core_array_perf_ex --shape 50 20 20 6 ) +endif() diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp new file mode 100644 index 0000000000..1624f60614 --- /dev/null +++ b/src/axom/core/examples/core_array_perf.cpp @@ -0,0 +1,544 @@ +// Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +/*! \file core_array_perf.cpp + * \brief This example illustrates performance of array classes. + */ + +// Axom includes +#include "axom/core/StackArray.hpp" +#include "axom/core/Array.hpp" +#include "axom/core/ArrayIndexer.hpp" +#include "axom/core/execution/for_all.hpp" +#include "axom/core/execution/runtime_policy.hpp" +#include "axom/core/memory_management.hpp" +#include "axom/core/utilities/Timer.hpp" +#include "axom/core/utilities/AnnotationMacros.hpp" + +#include "axom/fmt/format.h" +#include "axom/CLI11.hpp" + +// C/C++ includes +#include +#include + +/////////////////////////////////////////////////////////////// +/// Struct to parse and store the input parameters +struct Input +{ +public: + using RuntimePolicy = axom::runtime_policy::Policy; + + // Array shape. + std::vector shape; + // Array stride order (same length as shape) + std::vector slowestDirections; + axom::ArrayStrideOrder strideOrder = axom::ArrayStrideOrder::ARBITRARY; + + RuntimePolicy policy = RuntimePolicy::seq; + + bool checkResults = false; + +private: + bool _verboseOutput {false}; + const std::map strideValidator { + {"row", int(axom::ArrayStrideOrder::ROW)}, + {"col", int(axom::ArrayStrideOrder::COLUMN)}}; + +public: + bool isVerbose() const { return _verboseOutput; } + + void parse(int argc, char** argv, axom::CLI::App& app) + { + app.add_option("-p, --policy", policy) + ->description("Set runtime policy for test") + ->capture_default_str() + ->transform( + axom::CLI::CheckedTransformer(axom::runtime_policy::s_nameToPolicy)); + + app.add_flag("-v,--verbose,!--no-verbose", _verboseOutput) + ->description("Enable/disable verbose output") + ->capture_default_str(); + + app.add_flag("-c,--check-results,!--no-check-results", checkResults) + ->description("Enable/disable checking against expected results") + ->capture_default_str(); + + app.add_option("--shape", shape)->description("Array shape")->expected(1, 4); + + auto* strideOrderOption = + app.add_option("--strideOrder", strideOrder) + ->description("Stride order (must be as long as sizes.") + ->transform(axom::CLI::CheckedTransformer(strideValidator)) + ->expected(1, 4); + + app.add_option("--slowestDirections", slowestDirections) + ->description( + "Stride directions, from slowest to fastest. Must be same length as " + "shape.") + ->excludes(strideOrderOption); + + app.get_formatter()->column_width(60); + + app.parse(argc, argv); + + if (shape.empty()) + { + std::cerr << "You must specify shape (1-4 integers)." << std::endl; + std::abort(); + } + + /* + If slowestDirections is specified, it must match length of shape. + If neither is specified, default to row-major ordering. + */ + if(!slowestDirections.empty()) + { + if (slowestDirections.size() != shape.size()) + { + std::cerr << "slowestDimension size (" << slowestDirections.size() + << ") must match shape size (" << shape.size() << ")." + << std::endl; + std::abort(); + } + } + if (slowestDirections.empty() && + strideOrder == axom::ArrayStrideOrder::ARBITRARY) + { + strideOrder = axom::ArrayStrideOrder::ROW; + } + } +}; + +Input params; + +template +std::string array_to_string(const T* dataPtr, int count) +{ + std::ostringstream os; + os << '['; + for(int i = 0; i < count; ++i) + { + os << dataPtr[i] << (i < count - 1 ? ',' : ']'); + } + return os.str(); +} + +/*! + @brief Time the sequential access of every element of an array. + + This is the fastest we expect to visit every element. +*/ +template +void runTest_sequentialAccess(axom::ArrayView& array) +{ + auto count = array.size(); + auto* ptr = array.data(); + for(axom::IndexType i = 0; i < count; ++i) + { + ptr[i] += 1; + } +} + +/*! + @brief Time the row-major access of every element of an array. +*/ +template +void runTest_rowMajorAccess(axom::ArrayView& array); + +/*! + @brief Time the column-major access of every element of an array. +*/ +template +void runTest_rowMajorAccess(axom::ArrayView& array); + +/*! + @brief Time the access of every elemenent in array in + a dynamic loop ordering. + + The dynamic order should match the sequential order, + Any performance difference is due to overhead of dynamic + nesting of the loops. +*/ +template +void runTest_dynamicAccess(axom::ArrayView& array); + +void runTest_rowMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); + const auto& shape = array.shape(); + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + array[i] += 10; + } +} + +void runTest_rowMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-2D"); + const auto& shape = array.shape(); + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + for(axom::IndexType j = 0; j < shape[1]; ++j) + { + array(i, j) += 10; + } + } +} + +void runTest_rowMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-3D"); + const auto& shape = array.shape(); + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + for(axom::IndexType j = 0; j < shape[1]; ++j) + { + for(axom::IndexType k = 0; k < shape[2]; ++k) + { + array(i, j, k) += 10; + } + } + } +} + +void runTest_rowMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-4D"); + const auto& shape = array.shape(); + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + for(axom::IndexType j = 0; j < shape[1]; ++j) + { + for(axom::IndexType k = 0; k < shape[2]; ++k) + { + for(axom::IndexType l = 0; l < shape[3]; ++l) + { + array(i, j, k, l) += 10; + } + } + } + } +} + +void runTest_columnMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); + const auto& shape = array.shape(); + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + array[i] += 100; + } +} + +void runTest_columnMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-2D"); + const auto& shape = array.shape(); + for(axom::IndexType j = 0; j < shape[1]; ++j) + { + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + array(i, j) += 100; + } + } +} + +void runTest_columnMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-3D"); + const auto& shape = array.shape(); + for(axom::IndexType k = 0; k < shape[2]; ++k) + { + for(axom::IndexType j = 0; j < shape[1]; ++j) + { + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + array(i, j, k) += 100; + } + } + } +} + +void runTest_columnMajorAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-4D"); + const auto& shape = array.shape(); + for(axom::IndexType l = 0; l < shape[3]; ++l) + { + for(axom::IndexType k = 0; k < shape[2]; ++k) + { + for(axom::IndexType j = 0; j < shape[1]; ++j) + { + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + array(i, j, k, l) += 100; + } + } + } + } +} + +void runTest_dynamicAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); + const auto& shape = array.shape(); + for(axom::IndexType i = 0; i < shape[0]; ++i) + { + array[i] += 1000; + } +} + +void runTest_dynamicAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("dynamicAccess-2D"); + const auto& shape = array.shape(); + const auto& indexer = array.indexer(); + const auto& slowestDirs = indexer.slowestDirs(); + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + const axom::StackArray ends {shape[slowestDirs[0]], + shape[slowestDirs[1]]}; + for(m = 0; m < ends[0]; ++m) + { + for(n = 0; n < ends[1]; ++n) + { + array[idx] += 1000; + } + } +} + +void runTest_dynamicAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("dynamicAccess-3D"); + const auto& shape = array.shape(); + const auto& indexer = array.indexer(); + const auto& slowestDirs = indexer.slowestDirs(); + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + const axom::StackArray ends {shape[slowestDirs[0]], + shape[slowestDirs[1]], + shape[slowestDirs[2]]}; + for(m = 0; m < ends[0]; ++m) + { + for(n = 0; n < ends[1]; ++n) + { + for(o = 0; o < ends[2]; ++o) + { + array[idx] += 1000; + } + } + } +} + +void runTest_dynamicAccess(axom::ArrayView& array) +{ + AXOM_PERF_MARK_FUNCTION("dynamicAccess-4D"); + const auto& shape = array.shape(); + const auto& indexer = array.indexer(); + const auto& slowestDirs = indexer.slowestDirs(); + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + axom::IndexType& p = idx[slowestDirs[3]]; + const axom::StackArray ends {shape[slowestDirs[0]], + shape[slowestDirs[1]], + shape[slowestDirs[2]], + shape[slowestDirs[3]]}; + for(m = 0; m < ends[0]; ++m) + { + for(n = 0; n < ends[1]; ++n) + { + for(o = 0; o < ends[2]; ++o) + { + for(p = 0; p < ends[3]; ++p) + { + array[idx] += 1000; + } + } + } + } +} + +/*! + @brief Return an array for testing, dimension DIM, + sized and ordered according to params values. +*/ +template +axom::Array makeArray() +{ + assert(DIM <= params.shape.size()); + + axom::StackArray shape; + for(int d = 0; d < DIM; ++d) + { + shape[d] = params.shape[d]; + } + + // Until indexer isused, array will have row-major order. + assert(params.slowestDirections.empty()); + assert(int(params.strideOrder) & int(axom::ArrayStrideOrder::ROW)); + + axom::ArrayIndexer indexer; + if(!params.slowestDirections.empty()) + { + axom::StackArray slowestDirections; + for(int d = 0; d < DIM; ++d) + { + slowestDirections[d] = params.slowestDirections[d]; + } + indexer.initializeShape(shape, slowestDirections); + } + else + { + indexer.initializeShape(shape, params.strideOrder); + } + + return axom::Array(shape); +} + +/*! + @brief Return an array for testing, dimension DIM, + sized and ordered according to params values. + + This method allocates a 1D array and puts a muldimensional + view on the data. The view supports arbitrary ordering. +*/ +template +void makeArray(axom::Array & ar, axom::ArrayView & view) +{ + assert(DIM <= params.shape.size()); + + axom::StackArray shape; + for(int d = 0; d < DIM; ++d) + { + shape[d] = params.shape[d]; + } + + axom::IndexType product = shape[0]; + for(int d = 1; d < DIM; ++d) + { + product *= shape[d]; + } + + ar.resize(product); + + axom::ArrayIndexer indexer; + if(!params.slowestDirections.empty()) + { + axom::StackArray slowestDirections; + for(int d = 0; d < DIM; ++d) + { + slowestDirections[d] = params.slowestDirections[d]; + } + indexer.initializeShape(shape, slowestDirections); + } + else + { + indexer.initializeShape(shape, params.strideOrder); + } + view = axom::ArrayView(ar.data(), shape, indexer.strides()); + + return; +} + +/*! + @brief Run test with array shape of the first DIM values in + params.shape. +*/ +template +void runTest_dim() +{ + // Use ArrayView to test, because Array doesn't support + // arbitrary ordering (yet). +#if 0 + axom::Array arrayMd = makeArray(); + axom::ArrayView array = arrayMd.view(); +#else + axom::Array array1D; + axom::ArrayView array; + makeArray(array1D, array); +#endif + + auto count = array.size(); + auto* ptr = array.data(); + for(axom::IndexType i = 0; i < count; ++i) + { + ptr[i] = double(i*1000000); + } + + axom::utilities::Timer sequentialTimer(false); + sequentialTimer.start(); + runTest_sequentialAccess(array); + sequentialTimer.stop(); + std::cout << "Sequential time " << sequentialTimer.elapsedTimeInSec() << " seconds, base" << std::endl; + + axom::utilities::Timer rowMajorTimer(false); + rowMajorTimer.start(); + runTest_rowMajorAccess(array); + rowMajorTimer.stop(); + std::cout << "Row-major time " << rowMajorTimer.elapsedTimeInSec() << " seconds, " + << std::setprecision(3) << rowMajorTimer.elapsedTimeInSec()/sequentialTimer.elapsedTimeInSec() << 'x' << std::endl; + + axom::utilities::Timer columnMajorTimer(false); + columnMajorTimer.start(); + runTest_columnMajorAccess(array); + columnMajorTimer.stop(); + std::cout << "Column-major time " << columnMajorTimer.elapsedTimeInSec() << " seconds, " + << std::setprecision(3) << columnMajorTimer.elapsedTimeInSec()/sequentialTimer.elapsedTimeInSec() << 'x' << std::endl; + + axom::utilities::Timer dynamicTimer(false); + dynamicTimer.start(); + runTest_dynamicAccess(array); + dynamicTimer.stop(); + std::cout << "Dynamic time " << dynamicTimer.elapsedTimeInSec() << " seconds, " + << std::setprecision(3) << dynamicTimer.elapsedTimeInSec()/sequentialTimer.elapsedTimeInSec() << 'x' << std::endl; + +} + +/*! + @brief Run test based on dimension specified in params. +*/ +void runTest() +{ + switch(params.shape.size()) + { + case 1: + runTest_dim<1>(); + break; + case 2: + runTest_dim<2>(); + break; + case 3: + runTest_dim<3>(); + break; + case 4: + runTest_dim<4>(); + break; + } +} + +int main(int argc, char** argv) +{ + axom::CLI::App app {"Driver for array indexing performace tests"}; + + try + { + params.parse(argc, argv, app); + } + catch(const axom::CLI::ParseError& e) + { + auto retval = app.exit(e); + exit(retval); + } + + runTest(); + + return 0; +} From a362df714a3129d336ad94610f0fac9ae49b9d32 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 8 Mar 2024 18:26:55 -0800 Subject: [PATCH 010/592] Add ghost width options to array performance test. --- src/axom/core/examples/core_array_perf.cpp | 176 +++++++++++++-------- 1 file changed, 113 insertions(+), 63 deletions(-) diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 1624f60614..ba99650589 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -33,6 +33,13 @@ struct Input // Array shape. std::vector shape; + axom::IndexType ghostWidth = 1; + std::vector paddedShape; + std::vector idxBegin; + std::vector idxEnd; + axom::IndexType realSize; + axom::IndexType paddedSize; + // Array stride order (same length as shape) std::vector slowestDirections; axom::ArrayStrideOrder strideOrder = axom::ArrayStrideOrder::ARBITRARY; @@ -68,6 +75,8 @@ struct Input app.add_option("--shape", shape)->description("Array shape")->expected(1, 4); + app.add_option("--ghost", ghostWidth)->description("Ghost width"); + auto* strideOrderOption = app.add_option("--strideOrder", strideOrder) ->description("Stride order (must be as long as sizes.") @@ -109,6 +118,29 @@ struct Input { strideOrder = axom::ArrayStrideOrder::ROW; } + + + // + // Dependent data + // + + paddedShape.resize(shape.size()); + idxBegin.resize(shape.size()); + idxEnd.resize(shape.size()); + for (size_t i = 0; i& array); void runTest_rowMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); - const auto& shape = array.shape(); - for(axom::IndexType i = 0; i < shape[0]; ++i) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array[i] += 10; } @@ -178,10 +211,11 @@ void runTest_rowMajorAccess(axom::ArrayView& array) void runTest_rowMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-2D"); - const auto& shape = array.shape(); - for(axom::IndexType i = 0; i < shape[0]; ++i) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType j = 0; j < shape[1]; ++j) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { array(i, j) += 10; } @@ -191,12 +225,13 @@ void runTest_rowMajorAccess(axom::ArrayView& array) void runTest_rowMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-3D"); - const auto& shape = array.shape(); - for(axom::IndexType i = 0; i < shape[0]; ++i) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType j = 0; j < shape[1]; ++j) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType k = 0; k < shape[2]; ++k) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { array(i, j, k) += 10; } @@ -207,14 +242,15 @@ void runTest_rowMajorAccess(axom::ArrayView& array) void runTest_rowMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-4D"); - const auto& shape = array.shape(); - for(axom::IndexType i = 0; i < shape[0]; ++i) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType j = 0; j < shape[1]; ++j) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType k = 0; k < shape[2]; ++k) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - for(axom::IndexType l = 0; l < shape[3]; ++l) + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) { array(i, j, k, l) += 10; } @@ -226,8 +262,9 @@ void runTest_rowMajorAccess(axom::ArrayView& array) void runTest_columnMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); - const auto& shape = array.shape(); - for(axom::IndexType i = 0; i < shape[0]; ++i) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array[i] += 100; } @@ -236,10 +273,11 @@ void runTest_columnMajorAccess(axom::ArrayView& array) void runTest_columnMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-2D"); - const auto& shape = array.shape(); - for(axom::IndexType j = 0; j < shape[1]; ++j) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType i = 0; i < shape[0]; ++i) + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array(i, j) += 100; } @@ -249,12 +287,13 @@ void runTest_columnMajorAccess(axom::ArrayView& array) void runTest_columnMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-3D"); - const auto& shape = array.shape(); - for(axom::IndexType k = 0; k < shape[2]; ++k) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - for(axom::IndexType j = 0; j < shape[1]; ++j) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType i = 0; i < shape[0]; ++i) + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array(i, j, k) += 100; } @@ -265,14 +304,15 @@ void runTest_columnMajorAccess(axom::ArrayView& array) void runTest_columnMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-4D"); - const auto& shape = array.shape(); - for(axom::IndexType l = 0; l < shape[3]; ++l) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) { - for(axom::IndexType k = 0; k < shape[2]; ++k) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - for(axom::IndexType j = 0; j < shape[1]; ++j) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType i = 0; i < shape[0]; ++i) + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array(i, j, k, l) += 100; } @@ -284,8 +324,9 @@ void runTest_columnMajorAccess(axom::ArrayView& array) void runTest_dynamicAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); - const auto& shape = array.shape(); - for(axom::IndexType i = 0; i < shape[0]; ++i) + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array[i] += 1000; } @@ -294,17 +335,20 @@ void runTest_dynamicAccess(axom::ArrayView& array) void runTest_dynamicAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-2D"); - const auto& shape = array.shape(); + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; const auto& indexer = array.indexer(); const auto& slowestDirs = indexer.slowestDirs(); + const axom::StackArray begins {idxBegin[slowestDirs[0]], + idxBegin[slowestDirs[1]]}; + const axom::StackArray ends {idxEnd[slowestDirs[0]], + idxEnd[slowestDirs[1]]}; axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; axom::IndexType& n = idx[slowestDirs[1]]; - const axom::StackArray ends {shape[slowestDirs[0]], - shape[slowestDirs[1]]}; - for(m = 0; m < ends[0]; ++m) + for(m = begins[0]; m < ends[0]; ++m) { - for(n = 0; n < ends[1]; ++n) + for(n = begins[1]; n < ends[1]; ++n) { array[idx] += 1000; } @@ -314,21 +358,25 @@ void runTest_dynamicAccess(axom::ArrayView& array) void runTest_dynamicAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-3D"); - const auto& shape = array.shape(); + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; const auto& indexer = array.indexer(); const auto& slowestDirs = indexer.slowestDirs(); + const axom::StackArray begins {idxBegin[slowestDirs[0]], + idxBegin[slowestDirs[1]], + idxBegin[slowestDirs[2]]}; + const axom::StackArray ends {idxEnd[slowestDirs[0]], + idxEnd[slowestDirs[1]], + idxEnd[slowestDirs[2]]}; axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; axom::IndexType& n = idx[slowestDirs[1]]; axom::IndexType& o = idx[slowestDirs[2]]; - const axom::StackArray ends {shape[slowestDirs[0]], - shape[slowestDirs[1]], - shape[slowestDirs[2]]}; - for(m = 0; m < ends[0]; ++m) + for(m = begins[0]; m < ends[0]; ++m) { - for(n = 0; n < ends[1]; ++n) + for(n = begins[1]; n < ends[1]; ++n) { - for(o = 0; o < ends[2]; ++o) + for(o = begins[2]; o < ends[2]; ++o) { array[idx] += 1000; } @@ -339,25 +387,30 @@ void runTest_dynamicAccess(axom::ArrayView& array) void runTest_dynamicAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-4D"); - const auto& shape = array.shape(); + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; const auto& indexer = array.indexer(); const auto& slowestDirs = indexer.slowestDirs(); + const axom::StackArray begins {idxBegin[slowestDirs[0]], + idxBegin[slowestDirs[1]], + idxBegin[slowestDirs[2]], + idxBegin[slowestDirs[3]]}; + const axom::StackArray ends {idxEnd[slowestDirs[0]], + idxEnd[slowestDirs[1]], + idxEnd[slowestDirs[2]], + idxEnd[slowestDirs[3]]}; axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; axom::IndexType& n = idx[slowestDirs[1]]; axom::IndexType& o = idx[slowestDirs[2]]; axom::IndexType& p = idx[slowestDirs[3]]; - const axom::StackArray ends {shape[slowestDirs[0]], - shape[slowestDirs[1]], - shape[slowestDirs[2]], - shape[slowestDirs[3]]}; - for(m = 0; m < ends[0]; ++m) + for(m = begins[0]; m < ends[0]; ++m) { - for(n = 0; n < ends[1]; ++n) + for(n = begins[1]; n < ends[1]; ++n) { - for(o = 0; o < ends[2]; ++o) + for(o = begins[2]; o < ends[2]; ++o) { - for(p = 0; p < ends[3]; ++p) + for(p = begins[3]; p < ends[3]; ++p) { array[idx] += 1000; } @@ -415,19 +468,13 @@ void makeArray(axom::Array & ar, axom::ArrayView & view) { assert(DIM <= params.shape.size()); - axom::StackArray shape; + axom::StackArray paddedShape; for(int d = 0; d < DIM; ++d) { - shape[d] = params.shape[d]; + paddedShape[d] = params.paddedShape[d]; } - axom::IndexType product = shape[0]; - for(int d = 1; d < DIM; ++d) - { - product *= shape[d]; - } - - ar.resize(product); + ar.resize(params.paddedSize); axom::ArrayIndexer indexer; if(!params.slowestDirections.empty()) @@ -437,13 +484,13 @@ void makeArray(axom::Array & ar, axom::ArrayView & view) { slowestDirections[d] = params.slowestDirections[d]; } - indexer.initializeShape(shape, slowestDirections); + indexer.initializeShape(paddedShape, slowestDirections); } else { - indexer.initializeShape(shape, params.strideOrder); + indexer.initializeShape(paddedShape, params.strideOrder); } - view = axom::ArrayView(ar.data(), shape, indexer.strides()); + view = axom::ArrayView(ar.data(), paddedShape, indexer.strides()); return; } @@ -466,6 +513,9 @@ void runTest_dim() makeArray(array1D, array); #endif + std::cout << "Real-to-padded size: " << params.realSize << '/' << params.paddedSize + << " = " << double(params.realSize)/params.paddedSize << std::endl; + auto count = array.size(); auto* ptr = array.data(); for(axom::IndexType i = 0; i < count; ++i) From d45dd1d976a333f9e306d6a99b1d27179024565f Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Mon, 11 Mar 2024 06:39:01 -0700 Subject: [PATCH 011/592] Add comments and reformat. --- src/axom/core/examples/core_array_perf.cpp | 67 +++++++++++++++------- 1 file changed, 46 insertions(+), 21 deletions(-) diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index ba99650589..8600601657 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -26,7 +26,7 @@ /////////////////////////////////////////////////////////////// /// Struct to parse and store the input parameters -struct Input +struct InputParams { public: using RuntimePolicy = axom::runtime_policy::Policy; @@ -93,7 +93,7 @@ struct Input app.parse(argc, argv); - if (shape.empty()) + if(shape.empty()) { std::cerr << "You must specify shape (1-4 integers)." << std::endl; std::abort(); @@ -105,7 +105,7 @@ struct Input */ if(!slowestDirections.empty()) { - if (slowestDirections.size() != shape.size()) + if(slowestDirections.size() != shape.size()) { std::cerr << "slowestDimension size (" << slowestDirections.size() << ") must match shape size (" << shape.size() << ")." @@ -113,13 +113,12 @@ struct Input std::abort(); } } - if (slowestDirections.empty() && - strideOrder == axom::ArrayStrideOrder::ARBITRARY) + if(slowestDirections.empty() && + strideOrder == axom::ArrayStrideOrder::ARBITRARY) { strideOrder = axom::ArrayStrideOrder::ROW; } - // // Dependent data // @@ -127,7 +126,7 @@ struct Input paddedShape.resize(shape.size()); idxBegin.resize(shape.size()); idxEnd.resize(shape.size()); - for (size_t i = 0; i std::string array_to_string(const T* dataPtr, int count) @@ -197,6 +196,10 @@ void runTest_rowMajorAccess(axom::ArrayView& array); template void runTest_dynamicAccess(axom::ArrayView& array); +// +// Row-major access tests +// + void runTest_rowMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); @@ -259,6 +262,10 @@ void runTest_rowMajorAccess(axom::ArrayView& array) } } +// +// Colunn-major access tests +// + void runTest_columnMajorAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); @@ -321,6 +328,10 @@ void runTest_columnMajorAccess(axom::ArrayView& array) } } +// +// Dynamic ordering access tests +// + void runTest_dynamicAccess(axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); @@ -419,6 +430,10 @@ void runTest_dynamicAccess(axom::ArrayView& array) } } +// +// Make test Array objects. +// + /*! @brief Return an array for testing, dimension DIM, sized and ordered according to params values. @@ -464,7 +479,7 @@ axom::Array makeArray() view on the data. The view supports arbitrary ordering. */ template -void makeArray(axom::Array & ar, axom::ArrayView & view) +void makeArray(axom::Array& ar, axom::ArrayView& view) { assert(DIM <= params.shape.size()); @@ -513,43 +528,53 @@ void runTest_dim() makeArray(array1D, array); #endif - std::cout << "Real-to-padded size: " << params.realSize << '/' << params.paddedSize - << " = " << double(params.realSize)/params.paddedSize << std::endl; + std::cout << "Real-to-padded size: " << params.realSize << '/' + << params.paddedSize << " = " + << double(params.realSize) / params.paddedSize << std::endl; auto count = array.size(); auto* ptr = array.data(); for(axom::IndexType i = 0; i < count; ++i) { - ptr[i] = double(i*1000000); + ptr[i] = double(i * 1000000); } axom::utilities::Timer sequentialTimer(false); sequentialTimer.start(); runTest_sequentialAccess(array); sequentialTimer.stop(); - std::cout << "Sequential time " << sequentialTimer.elapsedTimeInSec() << " seconds, base" << std::endl; + std::cout << "Sequential time " << sequentialTimer.elapsedTimeInSec() + << " seconds, base" << std::endl; axom::utilities::Timer rowMajorTimer(false); rowMajorTimer.start(); runTest_rowMajorAccess(array); rowMajorTimer.stop(); - std::cout << "Row-major time " << rowMajorTimer.elapsedTimeInSec() << " seconds, " - << std::setprecision(3) << rowMajorTimer.elapsedTimeInSec()/sequentialTimer.elapsedTimeInSec() << 'x' << std::endl; + std::cout << "Row-major time " << rowMajorTimer.elapsedTimeInSec() + << " seconds, " << std::setprecision(3) + << rowMajorTimer.elapsedTimeInSec() / + sequentialTimer.elapsedTimeInSec() + << 'x' << std::endl; axom::utilities::Timer columnMajorTimer(false); columnMajorTimer.start(); runTest_columnMajorAccess(array); columnMajorTimer.stop(); - std::cout << "Column-major time " << columnMajorTimer.elapsedTimeInSec() << " seconds, " - << std::setprecision(3) << columnMajorTimer.elapsedTimeInSec()/sequentialTimer.elapsedTimeInSec() << 'x' << std::endl; + std::cout << "Column-major time " << columnMajorTimer.elapsedTimeInSec() + << " seconds, " << std::setprecision(3) + << columnMajorTimer.elapsedTimeInSec() / + sequentialTimer.elapsedTimeInSec() + << 'x' << std::endl; axom::utilities::Timer dynamicTimer(false); dynamicTimer.start(); runTest_dynamicAccess(array); dynamicTimer.stop(); - std::cout << "Dynamic time " << dynamicTimer.elapsedTimeInSec() << " seconds, " - << std::setprecision(3) << dynamicTimer.elapsedTimeInSec()/sequentialTimer.elapsedTimeInSec() << 'x' << std::endl; - + std::cout << "Dynamic time " << dynamicTimer.elapsedTimeInSec() + << " seconds, " << std::setprecision(3) + << dynamicTimer.elapsedTimeInSec() / + sequentialTimer.elapsedTimeInSec() + << 'x' << std::endl; } /*! From a1cd74ad75aad076391a7038ec20e31359f482ac Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Mon, 11 Mar 2024 07:21:48 -0700 Subject: [PATCH 012/592] Fix error computing padded size. --- src/axom/core/examples/core_array_perf.cpp | 160 ++++++++++++++++++++- 1 file changed, 159 insertions(+), 1 deletion(-) diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 8600601657..0d2ee370f0 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -12,6 +12,7 @@ #include "axom/core/Array.hpp" #include "axom/core/ArrayIndexer.hpp" #include "axom/core/execution/for_all.hpp" +#include "axom/core/execution/nested_loop_exec.hpp" #include "axom/core/execution/runtime_policy.hpp" #include "axom/core/memory_management.hpp" #include "axom/core/utilities/Timer.hpp" @@ -138,7 +139,7 @@ struct InputParams for(size_t i = 1; i < shape.size(); ++i) { realSize *= shape[i]; - paddedSize *= paddedShape[0]; + paddedSize *= paddedShape[i]; } } }; @@ -167,10 +168,17 @@ void runTest_sequentialAccess(axom::ArrayView& array) { auto count = array.size(); auto* ptr = array.data(); +#ifdef AXOM_USE_RAJA for(axom::IndexType i = 0; i < count; ++i) { ptr[i] += 1; } +#else + for(axom::IndexType i = 0; i < count; ++i) + { + ptr[i] += 1; + } +#endif } /*! @@ -205,10 +213,17 @@ void runTest_rowMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array[i] += 10; + } +#else for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array[i] += 10; } +#endif } void runTest_rowMajorAccess(axom::ArrayView& array) @@ -216,6 +231,15 @@ void runTest_rowMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("rowMajorAccess-2D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + { + array(i, j) += 10; + } + } +#else for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) @@ -223,6 +247,7 @@ void runTest_rowMajorAccess(axom::ArrayView& array) array(i, j) += 10; } } +#endif } void runTest_rowMajorAccess(axom::ArrayView& array) @@ -230,6 +255,18 @@ void runTest_rowMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("rowMajorAccess-3D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + { + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + { + array(i, j, k) += 10; + } + } + } +#else for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) @@ -240,6 +277,7 @@ void runTest_rowMajorAccess(axom::ArrayView& array) } } } +#endif } void runTest_rowMajorAccess(axom::ArrayView& array) @@ -247,6 +285,21 @@ void runTest_rowMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("rowMajorAccess-4D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + { + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + { + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + { + array(i, j, k, l) += 10; + } + } + } + } +#else for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) @@ -260,6 +313,7 @@ void runTest_rowMajorAccess(axom::ArrayView& array) } } } +#endif } // @@ -271,10 +325,17 @@ void runTest_columnMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array[i] += 100; } +#else + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array[i] += 100; + } +#endif } void runTest_columnMajorAccess(axom::ArrayView& array) @@ -282,6 +343,7 @@ void runTest_columnMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("columnMajorAccess-2D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) @@ -289,6 +351,15 @@ void runTest_columnMajorAccess(axom::ArrayView& array) array(i, j) += 100; } } +#else + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + { + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array(i, j) += 100; + } + } +#endif } void runTest_columnMajorAccess(axom::ArrayView& array) @@ -296,6 +367,18 @@ void runTest_columnMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("columnMajorAccess-3D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + { + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + { + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array(i, j, k) += 100; + } + } + } +#else for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) @@ -306,6 +389,7 @@ void runTest_columnMajorAccess(axom::ArrayView& array) } } } +#endif } void runTest_columnMajorAccess(axom::ArrayView& array) @@ -313,6 +397,21 @@ void runTest_columnMajorAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("columnMajorAccess-4D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + { + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + { + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + { + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array(i, j, k, l) += 100; + } + } + } + } +#else for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) { for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) @@ -326,6 +425,7 @@ void runTest_columnMajorAccess(axom::ArrayView& array) } } } +#endif } // @@ -337,10 +437,17 @@ void runTest_dynamicAccess(axom::ArrayView& array) AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { array[i] += 1000; } +#else + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array[i] += 1000; + } +#endif } void runTest_dynamicAccess(axom::ArrayView& array) @@ -354,6 +461,18 @@ void runTest_dynamicAccess(axom::ArrayView& array) idxBegin[slowestDirs[1]]}; const axom::StackArray ends {idxEnd[slowestDirs[0]], idxEnd[slowestDirs[1]]}; +#ifdef AXOM_USE_RAJA + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + for(m = begins[0]; m < ends[0]; ++m) + { + for(n = begins[1]; n < ends[1]; ++n) + { + array[idx] += 1000; + } + } +#else axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; axom::IndexType& n = idx[slowestDirs[1]]; @@ -364,6 +483,7 @@ void runTest_dynamicAccess(axom::ArrayView& array) array[idx] += 1000; } } +#endif } void runTest_dynamicAccess(axom::ArrayView& array) @@ -379,6 +499,7 @@ void runTest_dynamicAccess(axom::ArrayView& array) const axom::StackArray ends {idxEnd[slowestDirs[0]], idxEnd[slowestDirs[1]], idxEnd[slowestDirs[2]]}; +#ifdef AXOM_USE_RAJA axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; axom::IndexType& n = idx[slowestDirs[1]]; @@ -393,6 +514,22 @@ void runTest_dynamicAccess(axom::ArrayView& array) } } } +#else + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + for(m = begins[0]; m < ends[0]; ++m) + { + for(n = begins[1]; n < ends[1]; ++n) + { + for(o = begins[2]; o < ends[2]; ++o) + { + array[idx] += 1000; + } + } + } +#endif } void runTest_dynamicAccess(axom::ArrayView& array) @@ -410,6 +547,26 @@ void runTest_dynamicAccess(axom::ArrayView& array) idxEnd[slowestDirs[1]], idxEnd[slowestDirs[2]], idxEnd[slowestDirs[3]]}; +#ifdef AXOM_USE_RAJA + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + axom::IndexType& p = idx[slowestDirs[3]]; + for(m = begins[0]; m < ends[0]; ++m) + { + for(n = begins[1]; n < ends[1]; ++n) + { + for(o = begins[2]; o < ends[2]; ++o) + { + for(p = begins[3]; p < ends[3]; ++p) + { + array[idx] += 1000; + } + } + } + } +#else axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; axom::IndexType& n = idx[slowestDirs[1]]; @@ -428,6 +585,7 @@ void runTest_dynamicAccess(axom::ArrayView& array) } } } +#endif } // From c8f70e5e31bb60b19f28081a78c25d3232be68b1 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Mon, 11 Mar 2024 12:08:59 -0700 Subject: [PATCH 013/592] Move mint::structured_exec to axom::nested_for_exec. The code has general use outside of mint. --- src/axom/core/CMakeLists.txt | 1 + src/axom/core/examples/core_array_perf.cpp | 2 +- .../execution/nested_for_exec.hpp} | 24 ++++++++----------- src/axom/mint/CMakeLists.txt | 1 - .../mint/execution/internal/for_all_cells.hpp | 6 ++--- .../mint/execution/internal/for_all_faces.hpp | 12 +++++----- .../mint/execution/internal/for_all_nodes.hpp | 6 ++--- src/axom/quest/detail/MarchingCubesImpl.hpp | 6 ++--- src/axom/quest/detail/MeshTester_detail.hpp | 1 - .../examples/quest_marching_cubes_example.cpp | 1 - src/docs/sphinx/dev_guide/gpu_porting.rst | 2 +- src/tools/mesh_tester.cpp | 4 ++-- 12 files changed, 30 insertions(+), 36 deletions(-) rename src/axom/{mint/execution/internal/structured_exec.hpp => core/execution/nested_for_exec.hpp} (95%) diff --git a/src/axom/core/CMakeLists.txt b/src/axom/core/CMakeLists.txt index ead99d1c10..84784f7a74 100644 --- a/src/axom/core/CMakeLists.txt +++ b/src/axom/core/CMakeLists.txt @@ -69,6 +69,7 @@ set(core_headers ## execution execution/execution_space.hpp execution/for_all.hpp + execution/nested_for_exec.hpp execution/runtime_policy.hpp execution/synchronize.hpp diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 0d2ee370f0..02babca9ab 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -12,7 +12,7 @@ #include "axom/core/Array.hpp" #include "axom/core/ArrayIndexer.hpp" #include "axom/core/execution/for_all.hpp" -#include "axom/core/execution/nested_loop_exec.hpp" +#include "axom/core/execution/nested_for_exec.hpp" #include "axom/core/execution/runtime_policy.hpp" #include "axom/core/memory_management.hpp" #include "axom/core/utilities/Timer.hpp" diff --git a/src/axom/mint/execution/internal/structured_exec.hpp b/src/axom/core/execution/nested_for_exec.hpp similarity index 95% rename from src/axom/mint/execution/internal/structured_exec.hpp rename to src/axom/core/execution/nested_for_exec.hpp index 909793bd6c..741335c0e8 100644 --- a/src/axom/mint/execution/internal/structured_exec.hpp +++ b/src/axom/core/execution/nested_for_exec.hpp @@ -3,8 +3,8 @@ // // SPDX-License-Identifier: (BSD-3-Clause) -#ifndef AXOM_MINT_STRUCTURED_EXEC_HPP_ -#define AXOM_MINT_STRUCTURED_EXEC_HPP_ +#ifndef AXOM_CORE_STRUCTURED_EXEC_HPP_ +#define AXOM_CORE_STRUCTURED_EXEC_HPP_ #include "axom/core/execution/execution_space.hpp" @@ -31,12 +31,10 @@ namespace axom { -namespace mint -{ namespace internal { template -struct structured_exec +struct nested_for_exec { using loop2d_policy = void; using loop3d_policy = void; @@ -44,7 +42,7 @@ struct structured_exec //--------------------------------------------------------| SEQ_EXEC |---------- template <> -struct structured_exec +struct nested_for_exec { #ifdef AXOM_USE_RAJA /* clang-format off */ @@ -87,7 +85,7 @@ struct structured_exec //--------------------------------------------------------| OMP_EXEC |---------- #if defined(AXOM_USE_OPENMP) && defined(AXOM_USE_RAJA) template <> -struct structured_exec +struct nested_for_exec { /* clang-format off */ @@ -137,7 +135,7 @@ constexpr int TILE_SIZE_Z = 4; #if defined(AXOM_USE_CUDA) && defined(AXOM_USE_RAJA) && defined(AXOM_USE_UMPIRE) template -struct structured_exec> +struct nested_for_exec> { /* clang-format off */ @@ -177,7 +175,7 @@ struct structured_exec> }; template -struct structured_exec> +struct nested_for_exec> { /* clang-format off */ @@ -222,7 +220,7 @@ struct structured_exec> #if defined(AXOM_USE_HIP) && defined(AXOM_USE_RAJA) && defined(AXOM_USE_UMPIRE) template -struct structured_exec> +struct nested_for_exec> { /* clang-format off */ @@ -262,7 +260,7 @@ struct structured_exec> }; template -struct structured_exec> +struct nested_for_exec> { /* clang-format off */ @@ -305,8 +303,6 @@ struct structured_exec> } /* namespace internal */ -} /* namespace mint */ - } /* namespace axom */ -#endif /* AXOM_MINT_STRUCTURED_EXEC_HPP_ */ +#endif /* AXOM_CORE_STRUCTURED_EXEC_HPP_ */ diff --git a/src/axom/mint/CMakeLists.txt b/src/axom/mint/CMakeLists.txt index 36ea73cb71..bc8d49d77d 100644 --- a/src/axom/mint/CMakeLists.txt +++ b/src/axom/mint/CMakeLists.txt @@ -40,7 +40,6 @@ set( mint_headers execution/internal/for_all_nodes.hpp execution/internal/for_all_faces.hpp execution/internal/helpers.hpp - execution/internal/structured_exec.hpp ## FEM classes fem/FEBasis.hpp diff --git a/src/axom/mint/execution/internal/for_all_cells.hpp b/src/axom/mint/execution/internal/for_all_cells.hpp index da0df50032..a14bbb9799 100644 --- a/src/axom/mint/execution/internal/for_all_cells.hpp +++ b/src/axom/mint/execution/internal/for_all_cells.hpp @@ -22,7 +22,7 @@ #include "axom/mint/mesh/CurvilinearMesh.hpp" // for CurvilinearMesh #include "axom/mint/mesh/UnstructuredMesh.hpp" // for UnstructuredMesh #include "axom/mint/execution/internal/helpers.hpp" -#include "axom/mint/execution/internal/structured_exec.hpp" +#include "axom/core/execution/nested_for_exec.hpp" #include "axom/core/StackArray.hpp" // for axom::StackArray #include "axom/core/numerics/Matrix.hpp" // for Matrix @@ -71,7 +71,7 @@ inline void for_all_cells_impl(xargs::ij, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename structured_exec::loop2d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), @@ -130,7 +130,7 @@ inline void for_all_cells_impl(xargs::ijk, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename structured_exec::loop3d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), diff --git a/src/axom/mint/execution/internal/for_all_faces.hpp b/src/axom/mint/execution/internal/for_all_faces.hpp index b1a4482857..c7e6b69db2 100644 --- a/src/axom/mint/execution/internal/for_all_faces.hpp +++ b/src/axom/mint/execution/internal/for_all_faces.hpp @@ -20,7 +20,7 @@ #include "axom/mint/mesh/RectilinearMesh.hpp" // for RectilinearMesh #include "axom/mint/mesh/CurvilinearMesh.hpp" // for CurvilinearMesh #include "axom/mint/execution/internal/helpers.hpp" // for for_all_coords -#include "axom/mint/execution/internal/structured_exec.hpp" +#include "axom/core/execution/nested_for_exec.hpp" #include "axom/core/numerics/Matrix.hpp" // for Matrix @@ -51,7 +51,7 @@ inline void for_all_I_faces(xargs::ij, const StructuredMesh& m, KernelType&& ker RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename structured_exec::loop2d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), AXOM_LAMBDA(IndexType i, IndexType j) { @@ -96,7 +96,7 @@ inline void for_all_I_faces(xargs::ijk, const StructuredMesh& m, KernelType&& ke RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename structured_exec::loop3d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), AXOM_LAMBDA(IndexType i, IndexType j, IndexType k) { @@ -142,7 +142,7 @@ inline void for_all_J_faces(xargs::ij, const StructuredMesh& m, KernelType&& ker RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename structured_exec::loop2d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), AXOM_LAMBDA(IndexType i, IndexType j) { @@ -188,7 +188,7 @@ inline void for_all_J_faces(xargs::ijk, const StructuredMesh& m, KernelType&& ke RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename structured_exec::loop3d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), AXOM_LAMBDA(IndexType i, IndexType j, IndexType k) { @@ -240,7 +240,7 @@ inline void for_all_K_faces(xargs::ijk, const StructuredMesh& m, KernelType&& ke RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename structured_exec::loop3d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), AXOM_LAMBDA(IndexType i, IndexType j, IndexType k) { diff --git a/src/axom/mint/execution/internal/for_all_nodes.hpp b/src/axom/mint/execution/internal/for_all_nodes.hpp index d8162a6248..d40639f613 100644 --- a/src/axom/mint/execution/internal/for_all_nodes.hpp +++ b/src/axom/mint/execution/internal/for_all_nodes.hpp @@ -18,7 +18,7 @@ #include "axom/mint/mesh/RectilinearMesh.hpp" // for mint::RectilinearMesh #include "axom/mint/mesh/StructuredMesh.hpp" // for mint::StructuredMesh #include "axom/mint/mesh/UniformMesh.hpp" // for mint::UniformMesh -#include "axom/mint/execution/internal/structured_exec.hpp" +#include "axom/core/execution/nested_for_exec.hpp" #include "axom/core/StackArray.hpp" // for axom::StackArray @@ -65,7 +65,7 @@ inline void for_all_nodes_impl(xargs::ij, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename structured_exec::loop2d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), @@ -126,7 +126,7 @@ inline void for_all_nodes_impl(xargs::ijk, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename structured_exec::loop3d_policy; + using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), diff --git a/src/axom/quest/detail/MarchingCubesImpl.hpp b/src/axom/quest/detail/MarchingCubesImpl.hpp index 4ba02aa20d..ed34134649 100644 --- a/src/axom/quest/detail/MarchingCubesImpl.hpp +++ b/src/axom/quest/detail/MarchingCubesImpl.hpp @@ -18,7 +18,7 @@ #include "axom/quest/detail/MarchingCubesSingleDomain.hpp" #include "axom/primal/geometry/Point.hpp" #include "axom/primal/constants.hpp" -#include "axom/mint/execution/internal/structured_exec.hpp" +#include "axom/core/execution/nested_for_exec.hpp" #include "axom/fmt.hpp" namespace axom @@ -191,7 +191,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase RAJA::RangeSegment jRange(0, m_bShape[1]); RAJA::RangeSegment iRange(0, m_bShape[0]); using EXEC_POL = - typename axom::mint::internal::structured_exec::loop2d_policy; + typename axom::internal::nested_for_exec::loop2d_policy; if(int(order) & int(axom::ArrayStrideOrder::COLUMN)) { RAJA::kernel( @@ -245,7 +245,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase RAJA::RangeSegment jRange(0, m_bShape[1]); RAJA::RangeSegment iRange(0, m_bShape[0]); using EXEC_POL = - typename axom::mint::internal::structured_exec::loop3d_policy; + typename axom::internal::nested_for_exec::loop3d_policy; if(int(order) & int(axom::ArrayStrideOrder::COLUMN)) { RAJA::kernel( diff --git a/src/axom/quest/detail/MeshTester_detail.hpp b/src/axom/quest/detail/MeshTester_detail.hpp index 2a453138ee..18af756c8f 100644 --- a/src/axom/quest/detail/MeshTester_detail.hpp +++ b/src/axom/quest/detail/MeshTester_detail.hpp @@ -16,7 +16,6 @@ // RAJA includes #if defined(AXOM_USE_RAJA) #include "RAJA/RAJA.hpp" - #include "axom/mint/execution/internal/structured_exec.hpp" #endif // Acceleration data structure includes diff --git a/src/axom/quest/examples/quest_marching_cubes_example.cpp b/src/axom/quest/examples/quest_marching_cubes_example.cpp index 4a3e085a32..3e22624631 100644 --- a/src/axom/quest/examples/quest_marching_cubes_example.cpp +++ b/src/axom/quest/examples/quest_marching_cubes_example.cpp @@ -26,7 +26,6 @@ #include "axom/slic.hpp" #include "axom/primal.hpp" #include "axom/mint/mesh/UnstructuredMesh.hpp" -#include "axom/mint/execution/internal/structured_exec.hpp" #include "axom/core/ArrayIndexer.hpp" #include "axom/quest/MarchingCubes.hpp" #include "axom/quest/MeshViewUtil.hpp" diff --git a/src/docs/sphinx/dev_guide/gpu_porting.rst b/src/docs/sphinx/dev_guide/gpu_porting.rst index cf0ffaca9f..a5257f3bd8 100644 --- a/src/docs/sphinx/dev_guide/gpu_porting.rst +++ b/src/docs/sphinx/dev_guide/gpu_porting.rst @@ -254,7 +254,7 @@ Each execution space provides: The :doc:`Mint <../../../axom/mint/docs/sphinx/index>` component also provides a set of nested execution policies located at -`axom/mint/execution/internal/structured_exec.hpp `_ +`axom/axom/execution/nested_for_exec.hpp `_ to be used with ``RAJA::kernel`` e.g. for iterating over mint meshes. diff --git a/src/tools/mesh_tester.cpp b/src/tools/mesh_tester.cpp index c045a27645..78e69b7265 100644 --- a/src/tools/mesh_tester.cpp +++ b/src/tools/mesh_tester.cpp @@ -32,7 +32,7 @@ #endif // RAJA policies -#include "axom/mint/execution/internal/structured_exec.hpp" +#include "axom/core/execution/nested_for_exec.hpp" using seq_exec = axom::SEQ_EXEC; @@ -434,7 +434,7 @@ std::vector> naiveIntersectionAlgorithm( RAJA::RangeSegment col_range(0, ncells); using KERNEL_POL = - typename axom::mint::internal::structured_exec::loop2d_policy; + typename axom::internal::nested_for_exec::loop2d_policy; using REDUCE_POL = typename axom::execution_space::reduce_policy; using ATOMIC_POL = typename axom::execution_space::atomic_policy; From 81620263b49ab7e7545a3c944cfc528a97d7e9e0 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Mon, 11 Mar 2024 12:09:53 -0700 Subject: [PATCH 014/592] Implement nested loops with RAJA. --- src/axom/core/examples/CMakeLists.txt | 2 +- src/axom/core/examples/core_array_perf.cpp | 985 ++++++++++++--------- src/axom/core/execution/runtime_policy.hpp | 10 + 3 files changed, 560 insertions(+), 437 deletions(-) diff --git a/src/axom/core/examples/CMakeLists.txt b/src/axom/core/examples/CMakeLists.txt index 03f2b98d4e..f79f203617 100644 --- a/src/axom/core/examples/CMakeLists.txt +++ b/src/axom/core/examples/CMakeLists.txt @@ -81,5 +81,5 @@ if(AXOM_ENABLE_TESTS) COMMAND core_array_perf_ex --shape 30 200 20 ) axom_add_test( NAME core_array_perf_4d - COMMAND core_array_perf_ex --shape 50 20 20 6 ) + COMMAND core_array_perf_ex --shape 50 20 30 6 ) endif() diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 02babca9ab..8af536a006 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -45,9 +45,7 @@ struct InputParams std::vector slowestDirections; axom::ArrayStrideOrder strideOrder = axom::ArrayStrideOrder::ARBITRARY; - RuntimePolicy policy = RuntimePolicy::seq; - - bool checkResults = false; + RuntimePolicy runtimePolicy = RuntimePolicy::seq; private: bool _verboseOutput {false}; @@ -60,7 +58,7 @@ struct InputParams void parse(int argc, char** argv, axom::CLI::App& app) { - app.add_option("-p, --policy", policy) + app.add_option("-p, --policy", runtimePolicy) ->description("Set runtime policy for test") ->capture_default_str() ->transform( @@ -70,10 +68,6 @@ struct InputParams ->description("Enable/disable verbose output") ->capture_default_str(); - app.add_flag("-c,--check-results,!--no-check-results", checkResults) - ->description("Enable/disable checking against expected results") - ->capture_default_str(); - app.add_option("--shape", shape)->description("Array shape")->expected(1, 4); app.add_option("--ghost", ghostWidth)->description("Ghost width"); @@ -158,602 +152,695 @@ std::string array_to_string(const T* dataPtr, int count) return os.str(); } -/*! +template +class ArrayIndexerPerfTester +{ +public: + using Element_t = std::uint64_t; + const Element_t m_baseFactor = 1000000; + Element_t m_testAccumulation = 0; + const Element_t sequentiaTestAdd = 1; + const Element_t rowTestAdd = 10; + const Element_t columnTestAdd = 100; + const Element_t dynamicTestAdd = 1000; + + /*! @brief Time the sequential access of every element of an array. This is the fastest we expect to visit every element. */ -template -void runTest_sequentialAccess(axom::ArrayView& array) -{ - auto count = array.size(); - auto* ptr = array.data(); -#ifdef AXOM_USE_RAJA - for(axom::IndexType i = 0; i < count; ++i) + void runTest_sequentialAccess(axom::ArrayView& array) { - ptr[i] += 1; - } + auto testAdd = sequentiaTestAdd; + m_testAccumulation += testAdd; + auto count = array.size(); + auto* ptr = array.data(); +#ifdef AXOM_USE_RAJA + axom::for_all( + 0, + count, + AXOM_LAMBDA(axom::IndexType i) { ptr[i] += testAdd; }); #else - for(axom::IndexType i = 0; i < count; ++i) - { - ptr[i] += 1; - } + for(axom::IndexType i = 0; i < count; ++i) + { + ptr[i] += testAdd; + } #endif -} - -/*! - @brief Time the row-major access of every element of an array. -*/ -template -void runTest_rowMajorAccess(axom::ArrayView& array); - -/*! - @brief Time the column-major access of every element of an array. -*/ -template -void runTest_rowMajorAccess(axom::ArrayView& array); + } -/*! - @brief Time the access of every elemenent in array in - a dynamic loop ordering. + /*! + Methods to time the access of every element of an array. - The dynamic order should match the sequential order, - Any performance difference is due to overhead of dynamic - nesting of the loops. + Multidimensional loops are capable of skipping ghost + layers, but the sequential loop used for the baseline + performance doesn't have logic to skip them. */ -template -void runTest_dynamicAccess(axom::ArrayView& array); -// -// Row-major access tests -// + // + // Row-major access tests + // -void runTest_rowMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - array[i] += 10; - } -#else - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + template + typename std::enable_if::type runTest_rowMajorAccess( + axom::ArrayView& array) { - array[i] += 10; - } -#endif -} + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); + auto testAdd = rowTestAdd; + m_testAccumulation += testAdd; -void runTest_rowMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("rowMajorAccess-2D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; #ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) - { - array(i, j) += 10; - } - } + axom::for_all( + idxBegin[0], + idxEnd[0], + AXOM_LAMBDA(axom::IndexType i) { array[i] += testAdd; }); #else - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - array(i, j) += 10; + array[i] += testAdd; } - } #endif -} + } -void runTest_rowMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("rowMajorAccess-3D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + template + typename std::enable_if::type runTest_rowMajorAccess( + axom::ArrayView& array) { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-2D"); + auto testAdd = rowTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + using EXEC_POL = + typename axom::internal::nested_for_exec::loop2d_policy; + RAJA::RangeSegment iRange(idxBegin[0], idxEnd[0]); + RAJA::RangeSegment jRange(idxBegin[1], idxEnd[1]); + RAJA::kernel( + RAJA::make_tuple(jRange, iRange), + AXOM_LAMBDA(axom::IndexType j, axom::IndexType i) { + array(i, j) += testAdd; + }); +#else + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - array(i, j, k) += 10; + array(i, j) += testAdd; } } +#endif } -#else - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + + template + typename std::enable_if::type runTest_rowMajorAccess( + axom::ArrayView& array) { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-3D"); + auto testAdd = rowTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + using EXEC_POL = + typename axom::internal::nested_for_exec::loop3d_policy; + RAJA::RangeSegment iRange(idxBegin[0], idxEnd[0]); + RAJA::RangeSegment jRange(idxBegin[1], idxEnd[1]); + RAJA::RangeSegment kRange(idxBegin[2], idxEnd[2]); + RAJA::kernel( + RAJA::make_tuple(kRange, jRange, iRange), + AXOM_LAMBDA(axom::IndexType k, axom::IndexType j, axom::IndexType i) { + array(i, j, k) += testAdd; + }); +#else + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - array(i, j, k) += 10; + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + { + array(i, j, k) += testAdd; + } } } - } #endif -} + } -void runTest_rowMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("rowMajorAccess-4D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + template + typename std::enable_if::type runTest_rowMajorAccess( + axom::ArrayView& array) { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + AXOM_PERF_MARK_FUNCTION("rowMajorAccess-4D"); + auto testAdd = rowTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - array(i, j, k, l) += 10; + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + { + array(i, j, k, l) += testAdd; + } } } } - } #else - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - array(i, j, k, l) += 10; + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + { + array(i, j, k, l) += testAdd; + } } } } - } #endif -} + } -// -// Colunn-major access tests -// + // + // Colunn-major access tests + // -void runTest_columnMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - array[i] += 100; - } -#else - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + template + typename std::enable_if::type runTest_columnMajorAccess( + axom::ArrayView& array) { - array[i] += 100; - } -#endif -} + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); + auto testAdd = columnTestAdd; + m_testAccumulation += testAdd; -void runTest_columnMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("columnMajorAccess-2D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; #ifdef AXOM_USE_RAJA - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) - { - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - array(i, j) += 100; - } - } + axom::for_all( + idxBegin[0], + idxEnd[0], + AXOM_LAMBDA(axom::IndexType i) { array[i] += testAdd; }); #else - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) - { for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - array(i, j) += 100; + array[i] += testAdd; } - } #endif -} + } -void runTest_columnMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("columnMajorAccess-3D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + template + typename std::enable_if::type runTest_columnMajorAccess( + axom::ArrayView& array) { + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-2D"); + auto testAdd = columnTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + using EXEC_POL = + typename axom::internal::nested_for_exec::loop2d_policy; + RAJA::RangeSegment iRange(idxBegin[0], idxEnd[0]); + RAJA::RangeSegment jRange(idxBegin[1], idxEnd[1]); + RAJA::kernel( + RAJA::make_tuple(iRange, jRange), + AXOM_LAMBDA(axom::IndexType i, axom::IndexType j) { + array(i, j) += testAdd; + }); +#else for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - array(i, j, k) += 100; + array(i, j) += testAdd; } } +#endif } -#else - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + + template + typename std::enable_if::type runTest_columnMajorAccess( + axom::ArrayView& array) { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-3D"); + auto testAdd = columnTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + using EXEC_POL = + typename axom::internal::nested_for_exec::loop3d_policy; + RAJA::RangeSegment iRange(idxBegin[0], idxEnd[0]); + RAJA::RangeSegment jRange(idxBegin[1], idxEnd[1]); + RAJA::RangeSegment kRange(idxBegin[2], idxEnd[2]); + RAJA::kernel( + RAJA::make_tuple(iRange, jRange, kRange), + AXOM_LAMBDA(axom::IndexType i, axom::IndexType j, axom::IndexType k) { + array(i, j, k) += testAdd; + }); +#else + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - array(i, j, k) += 100; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array(i, j, k) += testAdd; + } } } - } #endif -} + } -void runTest_columnMajorAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("columnMajorAccess-4D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) + template + typename std::enable_if::type runTest_columnMajorAccess( + axom::ArrayView& array) { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + AXOM_PERF_MARK_FUNCTION("columnMajorAccess-4D"); + auto testAdd = columnTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; +#ifdef AXOM_USE_RAJA + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - array(i, j, k, l) += 100; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array(i, j, k, l) += testAdd; + } } } } - } #else - for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) - { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) + for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) + for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) { - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) { - array(i, j, k, l) += 100; + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + { + array(i, j, k, l) += testAdd; + } } } } - } #endif -} + } -// -// Dynamic ordering access tests -// + // + // Dynamic ordering access tests -void runTest_dynamicAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; -#ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - array[i] += 1000; - } -#else - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) + // The dynamic order should match the optimal order, + // Any performance difference is due to overhead of dynamic + // nesting of the loops. + // + + template + typename std::enable_if::type runTest_dynamicAccess( + axom::ArrayView& array) { - array[i] += 1000; - } -#endif -} + AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); + auto testAdd = dynamicTestAdd; + m_testAccumulation += testAdd; -void runTest_dynamicAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("dynamicAccess-2D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; - const auto& indexer = array.indexer(); - const auto& slowestDirs = indexer.slowestDirs(); - const axom::StackArray begins {idxBegin[slowestDirs[0]], - idxBegin[slowestDirs[1]]}; - const axom::StackArray ends {idxEnd[slowestDirs[0]], - idxEnd[slowestDirs[1]]}; + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; #ifdef AXOM_USE_RAJA - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) - { - array[idx] += 1000; - } - } + axom::for_all( + idxBegin[0], + idxEnd[0], + AXOM_LAMBDA(axom::IndexType i) { array[i] += testAdd; }); #else - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) + for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { - array[idx] += 1000; + array[i] += testAdd; } - } #endif -} + } -void runTest_dynamicAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("dynamicAccess-3D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; - const auto& indexer = array.indexer(); - const auto& slowestDirs = indexer.slowestDirs(); - const axom::StackArray begins {idxBegin[slowestDirs[0]], - idxBegin[slowestDirs[1]], - idxBegin[slowestDirs[2]]}; - const axom::StackArray ends {idxEnd[slowestDirs[0]], - idxEnd[slowestDirs[1]], - idxEnd[slowestDirs[2]]}; + template + typename std::enable_if::type runTest_dynamicAccess( + axom::ArrayView& array) + { + AXOM_PERF_MARK_FUNCTION("dynamicAccess-2D"); + auto testAdd = dynamicTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + const auto& indexer = array.indexer(); + const auto& slowestDirs = indexer.slowestDirs(); + axom::StackArray invSlowestDirs; + for(int i = 0; i < DIM; ++i) invSlowestDirs[slowestDirs[i]] = i; + const axom::StackArray begins { + idxBegin[slowestDirs[0]], + idxBegin[slowestDirs[1]]}; + const axom::StackArray ends {idxEnd[slowestDirs[0]], + idxEnd[slowestDirs[1]]}; #ifdef AXOM_USE_RAJA - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - axom::IndexType& o = idx[slowestDirs[2]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) + using EXEC_POL = + typename axom::internal::nested_for_exec::loop2d_policy; + RAJA::RangeSegment mRange(begins[0], ends[0]); + RAJA::RangeSegment nRange(begins[1], ends[1]); + RAJA::kernel( + RAJA::make_tuple(nRange, mRange), + AXOM_LAMBDA(axom::IndexType n, axom::IndexType m) { + axom::StackArray idx {m, n}; + auto i = idx[invSlowestDirs[0]]; + auto j = idx[invSlowestDirs[1]]; + array(i, j) += testAdd; + }); +#else + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + for(m = begins[0]; m < ends[0]; ++m) { - for(o = begins[2]; o < ends[2]; ++o) + for(n = begins[1]; n < ends[1]; ++n) { - array[idx] += 1000; + array[idx] += testAdd; } } +#endif } + + template + typename std::enable_if::type runTest_dynamicAccess( + axom::ArrayView& array) + { + AXOM_PERF_MARK_FUNCTION("dynamicAccess-3D"); + auto testAdd = dynamicTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + const auto& indexer = array.indexer(); + const auto& slowestDirs = indexer.slowestDirs(); + axom::StackArray invSlowestDirs; + for(int i = 0; i < DIM; ++i) invSlowestDirs[slowestDirs[i]] = i; + const axom::StackArray begins { + idxBegin[slowestDirs[0]], + idxBegin[slowestDirs[1]], + idxBegin[slowestDirs[2]]}; + const axom::StackArray ends {idxEnd[slowestDirs[0]], + idxEnd[slowestDirs[1]], + idxEnd[slowestDirs[2]]}; +#ifdef AXOM_USE_RAJA + using EXEC_POL = + typename axom::internal::nested_for_exec::loop3d_policy; + RAJA::RangeSegment mRange(begins[0], ends[0]); + RAJA::RangeSegment nRange(begins[1], ends[1]); + RAJA::RangeSegment oRange(begins[2], ends[2]); + RAJA::kernel( + RAJA::make_tuple(oRange, nRange, mRange), + AXOM_LAMBDA(axom::IndexType o, axom::IndexType n, axom::IndexType m) { + axom::StackArray idx {m, n, o}; + auto i = idx[invSlowestDirs[0]]; + auto j = idx[invSlowestDirs[1]]; + auto k = idx[invSlowestDirs[2]]; + array(i, j, k) += testAdd; + }); #else - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - axom::IndexType& o = idx[slowestDirs[2]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + for(m = begins[0]; m < ends[0]; ++m) { - for(o = begins[2]; o < ends[2]; ++o) + for(n = begins[1]; n < ends[1]; ++n) { - array[idx] += 1000; + for(o = begins[2]; o < ends[2]; ++o) + { + array[idx] += testAdd; + } } } - } #endif -} + } -void runTest_dynamicAccess(axom::ArrayView& array) -{ - AXOM_PERF_MARK_FUNCTION("dynamicAccess-4D"); - const auto idxBegin = params.idxBegin; - const auto idxEnd = params.idxEnd; - const auto& indexer = array.indexer(); - const auto& slowestDirs = indexer.slowestDirs(); - const axom::StackArray begins {idxBegin[slowestDirs[0]], - idxBegin[slowestDirs[1]], - idxBegin[slowestDirs[2]], - idxBegin[slowestDirs[3]]}; - const axom::StackArray ends {idxEnd[slowestDirs[0]], - idxEnd[slowestDirs[1]], - idxEnd[slowestDirs[2]], - idxEnd[slowestDirs[3]]}; + template + typename std::enable_if::type runTest_dynamicAccess( + axom::ArrayView& array) + { + AXOM_PERF_MARK_FUNCTION("dynamicAccess-4D"); + auto testAdd = dynamicTestAdd; + m_testAccumulation += testAdd; + + const auto idxBegin = params.idxBegin; + const auto idxEnd = params.idxEnd; + const auto& indexer = array.indexer(); + const auto& slowestDirs = indexer.slowestDirs(); + const axom::StackArray begins { + idxBegin[slowestDirs[0]], + idxBegin[slowestDirs[1]], + idxBegin[slowestDirs[2]], + idxBegin[slowestDirs[3]]}; + const axom::StackArray ends {idxEnd[slowestDirs[0]], + idxEnd[slowestDirs[1]], + idxEnd[slowestDirs[2]], + idxEnd[slowestDirs[3]]}; #ifdef AXOM_USE_RAJA - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - axom::IndexType& o = idx[slowestDirs[2]]; - axom::IndexType& p = idx[slowestDirs[3]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + axom::IndexType& p = idx[slowestDirs[3]]; + for(m = begins[0]; m < ends[0]; ++m) { - for(o = begins[2]; o < ends[2]; ++o) + for(n = begins[1]; n < ends[1]; ++n) { - for(p = begins[3]; p < ends[3]; ++p) + for(o = begins[2]; o < ends[2]; ++o) { - array[idx] += 1000; + for(p = begins[3]; p < ends[3]; ++p) + { + array[idx] += testAdd; + } } } } - } #else - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - axom::IndexType& o = idx[slowestDirs[2]]; - axom::IndexType& p = idx[slowestDirs[3]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) + axom::StackArray idx; + axom::IndexType& m = idx[slowestDirs[0]]; + axom::IndexType& n = idx[slowestDirs[1]]; + axom::IndexType& o = idx[slowestDirs[2]]; + axom::IndexType& p = idx[slowestDirs[3]]; + for(m = begins[0]; m < ends[0]; ++m) { - for(o = begins[2]; o < ends[2]; ++o) + for(n = begins[1]; n < ends[1]; ++n) { - for(p = begins[3]; p < ends[3]; ++p) + for(o = begins[2]; o < ends[2]; ++o) { - array[idx] += 1000; + for(p = begins[3]; p < ends[3]; ++p) + { + array[idx] += testAdd; + } } } } - } #endif -} + } -// -// Make test Array objects. -// + // + // Make test Array objects. + // -/*! + /*! @brief Return an array for testing, dimension DIM, sized and ordered according to params values. */ -template -axom::Array makeArray() -{ - assert(DIM <= params.shape.size()); - - axom::StackArray shape; - for(int d = 0; d < DIM; ++d) + axom::Array makeArray() { - shape[d] = params.shape[d]; - } + assert(DIM <= params.shape.size()); - // Until indexer isused, array will have row-major order. - assert(params.slowestDirections.empty()); - assert(int(params.strideOrder) & int(axom::ArrayStrideOrder::ROW)); - - axom::ArrayIndexer indexer; - if(!params.slowestDirections.empty()) - { - axom::StackArray slowestDirections; + axom::StackArray shape; for(int d = 0; d < DIM; ++d) { - slowestDirections[d] = params.slowestDirections[d]; + shape[d] = params.shape[d]; } - indexer.initializeShape(shape, slowestDirections); - } - else - { - indexer.initializeShape(shape, params.strideOrder); - } - return axom::Array(shape); -} + // Until indexer isused, array will have row-major order. + assert(params.slowestDirections.empty()); + assert(int(params.strideOrder) & int(axom::ArrayStrideOrder::ROW)); -/*! + axom::ArrayIndexer indexer; + if(!params.slowestDirections.empty()) + { + axom::StackArray slowestDirections; + for(int d = 0; d < DIM; ++d) + { + slowestDirections[d] = params.slowestDirections[d]; + } + indexer.initializeShape(shape, slowestDirections); + } + else + { + indexer.initializeShape(shape, params.strideOrder); + } + + return axom::Array(shape); + } + + /*! @brief Return an array for testing, dimension DIM, sized and ordered according to params values. This method allocates a 1D array and puts a muldimensional view on the data. The view supports arbitrary ordering. */ -template -void makeArray(axom::Array& ar, axom::ArrayView& view) -{ - assert(DIM <= params.shape.size()); - - axom::StackArray paddedShape; - for(int d = 0; d < DIM; ++d) + void makeArray(axom::Array& ar, axom::ArrayView& view) { - paddedShape[d] = params.paddedShape[d]; - } - - ar.resize(params.paddedSize); + assert(DIM <= params.shape.size()); - axom::ArrayIndexer indexer; - if(!params.slowestDirections.empty()) - { - axom::StackArray slowestDirections; + axom::StackArray paddedShape; for(int d = 0; d < DIM; ++d) { - slowestDirections[d] = params.slowestDirections[d]; + paddedShape[d] = params.paddedShape[d]; } - indexer.initializeShape(paddedShape, slowestDirections); - } - else - { - indexer.initializeShape(paddedShape, params.strideOrder); - } - view = axom::ArrayView(ar.data(), paddedShape, indexer.strides()); - return; -} + ar.resize(params.paddedSize); -/*! + axom::ArrayIndexer indexer; + if(!params.slowestDirections.empty()) + { + axom::StackArray slowestDirections; + for(int d = 0; d < DIM; ++d) + { + slowestDirections[d] = params.slowestDirections[d]; + } + indexer.initializeShape(paddedShape, slowestDirections); + } + else + { + indexer.initializeShape(paddedShape, params.strideOrder); + } + view = + axom::ArrayView(ar.data(), paddedShape, indexer.strides()); + + return; + } + + /*! @brief Run test with array shape of the first DIM values in params.shape. */ -template -void runTest_dim() -{ - // Use ArrayView to test, because Array doesn't support - // arbitrary ordering (yet). + void runTest_dim() + { + // Use ArrayView to test, because Array doesn't support + // arbitrary ordering (yet). #if 0 - axom::Array arrayMd = makeArray(); - axom::ArrayView array = arrayMd.view(); + axom::Array arrayMd = makeArray(); + axom::ArrayView array = arrayMd.view(); #else - axom::Array array1D; - axom::ArrayView array; - makeArray(array1D, array); + axom::Array array1D; + axom::ArrayView array; + makeArray(array1D, array); #endif - std::cout << "Real-to-padded size: " << params.realSize << '/' - << params.paddedSize << " = " - << double(params.realSize) / params.paddedSize << std::endl; + std::cout << "Real-to-padded size: " << params.realSize << '/' + << params.paddedSize << " = " + << double(params.realSize) / params.paddedSize << std::endl; - auto count = array.size(); - auto* ptr = array.data(); - for(axom::IndexType i = 0; i < count; ++i) - { - ptr[i] = double(i * 1000000); + auto count = array.size(); + auto* ptr = array.data(); + for(axom::IndexType i = 0; i < count; ++i) + { + ptr[i] = Element_t(i * m_baseFactor); + } + + axom::utilities::Timer sequentialTimer(false); + sequentialTimer.start(); + runTest_sequentialAccess(array); + sequentialTimer.stop(); + std::cout << "Sequential time " << sequentialTimer.elapsedTimeInSec() + << " seconds, base" << std::endl; + + axom::utilities::Timer rowMajorTimer(false); + rowMajorTimer.start(); + runTest_rowMajorAccess(array); + rowMajorTimer.stop(); + std::cout << "Row-major time " << rowMajorTimer.elapsedTimeInSec() + << " seconds, " << std::setprecision(3) + << rowMajorTimer.elapsedTimeInSec() / + sequentialTimer.elapsedTimeInSec() + << 'x' << std::endl; + + axom::utilities::Timer columnMajorTimer(false); + columnMajorTimer.start(); + runTest_columnMajorAccess(array); + columnMajorTimer.stop(); + std::cout << "Column-major time " << columnMajorTimer.elapsedTimeInSec() + << " seconds, " << std::setprecision(3) + << columnMajorTimer.elapsedTimeInSec() / + sequentialTimer.elapsedTimeInSec() + << 'x' << std::endl; + + axom::utilities::Timer dynamicTimer(false); + dynamicTimer.start(); + runTest_dynamicAccess(array); + dynamicTimer.stop(); + std::cout << "Dynamic time " << dynamicTimer.elapsedTimeInSec() + << " seconds, " << std::setprecision(3) + << dynamicTimer.elapsedTimeInSec() / + sequentialTimer.elapsedTimeInSec() + << 'x' << std::endl; + + // Verify that the elements are touched the correct number of times. + axom::IndexType matchCount = 0; + for(axom::IndexType i = 0; i < count; ++i) + { + matchCount += (ptr[i] == Element_t(i * m_baseFactor) + m_testAccumulation); + } + if(matchCount != params.realSize) + { + std::cerr << "Unexpected error in tests: counted match (" << matchCount + << ") != expected (" << params.realSize << ")" << std::endl; + } } - axom::utilities::Timer sequentialTimer(false); - sequentialTimer.start(); - runTest_sequentialAccess(array); - sequentialTimer.stop(); - std::cout << "Sequential time " << sequentialTimer.elapsedTimeInSec() - << " seconds, base" << std::endl; - - axom::utilities::Timer rowMajorTimer(false); - rowMajorTimer.start(); - runTest_rowMajorAccess(array); - rowMajorTimer.stop(); - std::cout << "Row-major time " << rowMajorTimer.elapsedTimeInSec() - << " seconds, " << std::setprecision(3) - << rowMajorTimer.elapsedTimeInSec() / - sequentialTimer.elapsedTimeInSec() - << 'x' << std::endl; - - axom::utilities::Timer columnMajorTimer(false); - columnMajorTimer.start(); - runTest_columnMajorAccess(array); - columnMajorTimer.stop(); - std::cout << "Column-major time " << columnMajorTimer.elapsedTimeInSec() - << " seconds, " << std::setprecision(3) - << columnMajorTimer.elapsedTimeInSec() / - sequentialTimer.elapsedTimeInSec() - << 'x' << std::endl; - - axom::utilities::Timer dynamicTimer(false); - dynamicTimer.start(); - runTest_dynamicAccess(array); - dynamicTimer.stop(); - std::cout << "Dynamic time " << dynamicTimer.elapsedTimeInSec() - << " seconds, " << std::setprecision(3) - << dynamicTimer.elapsedTimeInSec() / - sequentialTimer.elapsedTimeInSec() - << 'x' << std::endl; -} +}; // class ArrayIndexerPerfTester /*! @brief Run test based on dimension specified in params. */ +template void runTest() { - switch(params.shape.size()) + if(params.shape.size() == 1) + { + ArrayIndexerPerfTester<1, ExecSpace> tester1D; + tester1D.runTest_dim(); + } + else if(params.shape.size() == 2) + { + ArrayIndexerPerfTester<2, ExecSpace> tester2D; + tester2D.runTest_dim(); + } + else if(params.shape.size() == 3) { - case 1: - runTest_dim<1>(); - break; - case 2: - runTest_dim<2>(); - break; - case 3: - runTest_dim<3>(); - break; - case 4: - runTest_dim<4>(); - break; + ArrayIndexerPerfTester<3, ExecSpace> tester3D; + tester3D.runTest_dim(); + } + else if(params.shape.size() == 4) + { + ArrayIndexerPerfTester<4, ExecSpace> tester4D; + tester4D.runTest_dim(); } } @@ -771,7 +858,33 @@ int main(int argc, char** argv) exit(retval); } - runTest(); + using RuntimePolicy = axom::runtime_policy::Policy; + + std::cout << "Testing runtimePolicy " + << axom::runtime_policy::policyToName(params.runtimePolicy) + << std::endl; + if(params.runtimePolicy == RuntimePolicy::seq) + { + runTest(); + } +#ifdef AXOM_RUNTIME_POLICY_USE_OPENMP + else if(params.runtimePolicy == RuntimePolicy::omp) + { + runTest(); + } +#endif +#ifdef AXOM_RUNTIME_POLICY_USE_CUDA + else if(params.runtimePolicy == RuntimePolicy::cuda) + { + runTest>(); + } +#endif +#ifdef AXOM_RUNTIME_POLICY_USE_HIP + else if(params.runtimePolicy == RuntimePolicy::hip) + { + runTest>(); + } +#endif return 0; } diff --git a/src/axom/core/execution/runtime_policy.hpp b/src/axom/core/execution/runtime_policy.hpp index 401cc82fdf..445bb538ff 100644 --- a/src/axom/core/execution/runtime_policy.hpp +++ b/src/axom/core/execution/runtime_policy.hpp @@ -108,6 +108,16 @@ enum class Policy }; // clang-format on +inline Policy nameToPolicy(const std::string &name) +{ + return s_nameToPolicy.find(name)->second; +} + +inline std::string policyToName(Policy policy) +{ + return s_policyToName.find(policy)->second; +} + /// Utility function to allow formating a Policy static inline auto format_as(Policy pol) { return axom::fmt::underlying(pol); } From 2c95fdcb9d8229d6cfbdca7c3cfd94c3e3c275b6 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Tue, 12 Mar 2024 07:59:13 -0700 Subject: [PATCH 015/592] Flat indexing is a better term than sequential. --- src/axom/core/examples/core_array_perf.cpp | 48 +++++++++++----------- 1 file changed, 24 insertions(+), 24 deletions(-) diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 8af536a006..c21adbc9ba 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -165,11 +165,11 @@ class ArrayIndexerPerfTester const Element_t dynamicTestAdd = 1000; /*! - @brief Time the sequential access of every element of an array. + @brief Time the flat-index access of every element of an array. - This is the fastest we expect to visit every element. -*/ - void runTest_sequentialAccess(axom::ArrayView& array) + This is the fastest we expect to visit every element. + */ + void runTest_flatAccess(axom::ArrayView& array) { auto testAdd = sequentiaTestAdd; m_testAccumulation += testAdd; @@ -192,7 +192,7 @@ class ArrayIndexerPerfTester Methods to time the access of every element of an array. Multidimensional loops are capable of skipping ghost - layers, but the sequential loop used for the baseline + layers, but the flat loop used for the baseline performance doesn't have logic to skip them. */ @@ -662,9 +662,9 @@ class ArrayIndexerPerfTester // /*! - @brief Return an array for testing, dimension DIM, - sized and ordered according to params values. -*/ + @brief Return an array for testing, dimension DIM, + sized and ordered according to params values. + */ axom::Array makeArray() { assert(DIM <= params.shape.size()); @@ -698,12 +698,12 @@ class ArrayIndexerPerfTester } /*! - @brief Return an array for testing, dimension DIM, - sized and ordered according to params values. + @brief Return an array for testing, dimension DIM, + sized and ordered according to params values. - This method allocates a 1D array and puts a muldimensional - view on the data. The view supports arbitrary ordering. -*/ + This method allocates a 1D array and puts a muldimensional + view on the data. The view supports arbitrary ordering. + */ void makeArray(axom::Array& ar, axom::ArrayView& view) { assert(DIM <= params.shape.size()); @@ -737,9 +737,9 @@ class ArrayIndexerPerfTester } /*! - @brief Run test with array shape of the first DIM values in - params.shape. -*/ + @brief Run test with array shape of the first DIM values in + params.shape. + */ void runTest_dim() { // Use ArrayView to test, because Array doesn't support @@ -764,11 +764,11 @@ class ArrayIndexerPerfTester ptr[i] = Element_t(i * m_baseFactor); } - axom::utilities::Timer sequentialTimer(false); - sequentialTimer.start(); - runTest_sequentialAccess(array); - sequentialTimer.stop(); - std::cout << "Sequential time " << sequentialTimer.elapsedTimeInSec() + axom::utilities::Timer flatTimer(false); + flatTimer.start(); + runTest_flatAccess(array); + flatTimer.stop(); + std::cout << "Sequential time " << flatTimer.elapsedTimeInSec() << " seconds, base" << std::endl; axom::utilities::Timer rowMajorTimer(false); @@ -778,7 +778,7 @@ class ArrayIndexerPerfTester std::cout << "Row-major time " << rowMajorTimer.elapsedTimeInSec() << " seconds, " << std::setprecision(3) << rowMajorTimer.elapsedTimeInSec() / - sequentialTimer.elapsedTimeInSec() + flatTimer.elapsedTimeInSec() << 'x' << std::endl; axom::utilities::Timer columnMajorTimer(false); @@ -788,7 +788,7 @@ class ArrayIndexerPerfTester std::cout << "Column-major time " << columnMajorTimer.elapsedTimeInSec() << " seconds, " << std::setprecision(3) << columnMajorTimer.elapsedTimeInSec() / - sequentialTimer.elapsedTimeInSec() + flatTimer.elapsedTimeInSec() << 'x' << std::endl; axom::utilities::Timer dynamicTimer(false); @@ -798,7 +798,7 @@ class ArrayIndexerPerfTester std::cout << "Dynamic time " << dynamicTimer.elapsedTimeInSec() << " seconds, " << std::setprecision(3) << dynamicTimer.elapsedTimeInSec() / - sequentialTimer.elapsedTimeInSec() + flatTimer.elapsedTimeInSec() << 'x' << std::endl; // Verify that the elements are touched the correct number of times. From 9f2ecfd5a91af0d8994f37350fb7fd6aab63a5ba Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Mon, 18 Mar 2024 13:25:48 -0700 Subject: [PATCH 016/592] Add content describing contributions from outside of LLNL org --- src/docs/sphinx/dev_guide/dev_summary.rst | 91 +++++++++++++++++++++ src/docs/sphinx/dev_guide/pull_requests.rst | 3 +- 2 files changed, 92 insertions(+), 2 deletions(-) diff --git a/src/docs/sphinx/dev_guide/dev_summary.rst b/src/docs/sphinx/dev_guide/dev_summary.rst index 7185a659a9..924d590142 100644 --- a/src/docs/sphinx/dev_guide/dev_summary.rst +++ b/src/docs/sphinx/dev_guide/dev_summary.rst @@ -72,6 +72,97 @@ See :ref:`pullrequest-label` for a description of our review process and how we use pull requests. +====================================================== +Contributors and Project Access +====================================================== + +Axom maintains three levels of project access on it GitHub project: + + * **Core team members.** Individuals on the core Axom team are frequent + Axom contributors and participate regularly in project meetings, + discussions, and other project activities. They are members of + the LLNL GitHub organization and the ``axom`` GitHub team. Their + project privileges include the ability to create branches in the repository, + push code changes to the Axom repo, make PRs, and merge them when they are + approved and all checks have passed. + * **Regular contributors.** Individuals, who are not on the core Axom team, + but are members of the LLNL GitHub organization and are involved in some + aspects of Axom development are considered regular contributors. They are + members of the ``axom-contrib`` GitHub team. Their project privileges + include the ability to create branches in the repository, push code changes + to the Axom repo, and make PRs. However, they may not merge PRs and must + coordinate with the core team to have their work included in the develop + branch. This is mainly due to the way GitHub structures its project + access levels. + * **Everyone else.** Anyone with a GitHub account is welcome to contribute + to Axom. Individuals outside of the two groups described above, and + specifically not a member of LLNL GitHub organization, can make PRs + in the Axom project, but must do so from a branch on a *fork* of + the Axom repo. Thus, the process of reviewing and merging contributions + involves additional steps which we describe here. + +-------------------------- +Forking the repository +-------------------------- + +The requirement for individuals outside of the LLNL GitHub organization +to contribute on a fork of the repo is due to policies enforced +by the LLNL organization on GitHub (in which the Axom project resides) and the +Livermore Computing (LC) organization (in which we run our GitLab CI testing). +Fortunately, you may still contribute to Axom by `forking the Axom repo +`_. Forking creates a copy of the Axom +repository that you own. You can make changes on your local copy and push them +your fork on GitHub. When you are ready to have your Axom contribution reviewed +ad added to the Axom project, you may create a pull request in the Axom project. + +-------------------------------------------------- +Accepting a pull request from a forked repository +-------------------------------------------------- + +Due to LLNL security policies, some Axom pull requests cannot be run through +all Axom CI checks. The Livermore Computing (LC) Center GitLab systems +restrict which GitHub PRs may run automatically through its CI test pipelines. +For example, a PR made from branch on a forked repository will not trigger +GitLab CI checks. GitLab CI on LC platforms will be run only on PRs that are +made from branches in the GitHub Axom repository. + +.. note:: **The following process for accepting PR contributions from a fork + of the Axom repo must be executed by a member of the Axom team:** + + To facilitate testing contributions in PRs from forked repositories, + we maintain a script to pull a PR branch from a forked repo into the + Axom repo. First, identify the number of the PR, which appears at + the top of a PR. Then, run a script from the top-level Axom + directory:: + + $ ./scripts/make_local_branch_from_fork_pr -b + + If successful, this will create a branch in your local copy of the + Axom repo labeled ``pr-from-fork/`` and you will be on that + local branch in your checkout space. To verify this, you can run + the following command after you run the script:: + + $ git branch + + You will see the new branch in the listing of branches and the branch + you are on will be starred. + + You can push the new branch to the Axom repo on GitHub:: + + $ git push git@github.com:LLNL/axom.git + + and make a PR for the new branch. It is good practice to reference + the original PR in the description of the new PR to track the + original PR discussion and reviews. + + All CI checks will be triggered to run on the new PR made in the + Axom repo. When everything passes and the PR is approved, it may + be merged. When it is merged, the original PR from the forked repo + will be closed and marked as merged unless it is referenced + elsewhere, such as in a GitHub issue. If this is the case, then the + original PR (from the forked repo) must be closed manually. + + ====================================================== Testing and Code Health ====================================================== diff --git a/src/docs/sphinx/dev_guide/pull_requests.rst b/src/docs/sphinx/dev_guide/pull_requests.rst index e26ca82d2d..726b34fd5d 100644 --- a/src/docs/sphinx/dev_guide/pull_requests.rst +++ b/src/docs/sphinx/dev_guide/pull_requests.rst @@ -15,7 +15,7 @@ must be tested, documented, reviewed, and accepted. Creating a pull request on the Axom Github project to merge a branch into develop or main initiates the test and review processes. All required build configurations and tests must pass for a pull request to be approved. Also, new tests -(unit, integration, etc.) must be created that exercise any new functionality +(unit, integration, etc.) must be created to exercise any new functionality that is introduced. This will be assessed by reviewers of each pull request. See :ref:`createpr-label` for details about creating pull requests. @@ -36,7 +36,6 @@ develop and main branches should be scrutinized in other ways and using other code health tools we use. See :ref:`github-label` for more information about using our continuous integration tools. - ======================= Pull Request Summary ======================= From d03e07cbf85c2af27e7c0daef838b93726e3ef87 Mon Sep 17 00:00:00 2001 From: Rich Hornung Date: Tue, 19 Mar 2024 11:04:58 -0700 Subject: [PATCH 017/592] Fixes from PR reviews --- src/docs/sphinx/dev_guide/dev_summary.rst | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/docs/sphinx/dev_guide/dev_summary.rst b/src/docs/sphinx/dev_guide/dev_summary.rst index 924d590142..64aed34305 100644 --- a/src/docs/sphinx/dev_guide/dev_summary.rst +++ b/src/docs/sphinx/dev_guide/dev_summary.rst @@ -112,8 +112,9 @@ Livermore Computing (LC) organization (in which we run our GitLab CI testing). Fortunately, you may still contribute to Axom by `forking the Axom repo `_. Forking creates a copy of the Axom repository that you own. You can make changes on your local copy and push them -your fork on GitHub. When you are ready to have your Axom contribution reviewed -ad added to the Axom project, you may create a pull request in the Axom project. +to your fork on GitHub. When you are ready to have your Axom contribution +reviewed and added to the Axom project, you may create a pull request in the +Axom project. -------------------------------------------------- Accepting a pull request from a forked repository From 6d95213a24d4eed5d9659bcb75a761c5e80064f3 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 20 Mar 2024 08:00:23 -0700 Subject: [PATCH 018/592] Silence a warning. --- src/axom/core/ArrayIndexer.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index 99101bb8a2..e59a6c5849 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -293,7 +293,7 @@ class ArrayIndexer } for(int d = 0; d < DIM; ++d) { - if(v[d] < 0 || v[d] >= DIM) + if(v[d] >= DIM) { return false; // Out of range. } From 2c3faf8b5db64d0e182cbab680ea06cb93643c14 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 20 Mar 2024 16:37:57 -0700 Subject: [PATCH 019/592] Extend test to non-SEQ_EXEC executions. --- src/axom/core/examples/CMakeLists.txt | 35 ++- src/axom/core/examples/core_array_perf.cpp | 246 +++++++++++++-------- 2 files changed, 178 insertions(+), 103 deletions(-) diff --git a/src/axom/core/examples/CMakeLists.txt b/src/axom/core/examples/CMakeLists.txt index f79f203617..928edaf658 100644 --- a/src/axom/core/examples/CMakeLists.txt +++ b/src/axom/core/examples/CMakeLists.txt @@ -70,16 +70,27 @@ axom_add_executable( FOLDER axom/core/examples ) if(AXOM_ENABLE_TESTS) - axom_add_test( - NAME core_array_perf_1d - COMMAND core_array_perf_ex --shape 120000 ) - axom_add_test( - NAME core_array_perf_2d - COMMAND core_array_perf_ex --shape 300 400 ) - axom_add_test( - NAME core_array_perf_3d - COMMAND core_array_perf_ex --shape 30 200 20 ) - axom_add_test( - NAME core_array_perf_4d - COMMAND core_array_perf_ex --shape 50 20 30 6 ) + # Run the marching cubes example on N ranks for each enabled policy + set(_policies "seq") + if(RAJA_FOUND) + blt_list_append(TO _policies ELEMENTS "omp" IF AXOM_ENABLE_OPENMP) + blt_list_append(TO _policies ELEMENTS "cuda" IF AXOM_ENABLE_CUDA) + blt_list_append(TO _policies ELEMENTS "hip" IF AXOM_ENABLE_HIP) + endif() + foreach(_pol ${_policies}) + axom_add_test( + NAME "core_array_perf_1d_${_pol}" + COMMAND core_array_perf_ex --policy ${_pol} --shape 1200000 -r 10) + axom_add_test( + NAME "core_array_perf_2d_${_pol}" + COMMAND core_array_perf_ex --policy ${_pol} --shape 1000 1200 -r 10) + axom_add_test( + NAME "core_array_perf_3d_${_pol}" + COMMAND core_array_perf_ex --policy ${_pol} --shape 100 100 120 -r 10) + if(NOT RAJA_FOUND) + axom_add_test( + NAME "core_array_perf_4d_${_pol}" + COMMAND core_array_perf_ex --policy ${_pol} --shape 50 20 30 6 ) + endif() + endforeach() endif() diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index c21adbc9ba..f6d24fc0e4 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -47,6 +47,8 @@ struct InputParams RuntimePolicy runtimePolicy = RuntimePolicy::seq; + axom::IndexType repCount = 10; + private: bool _verboseOutput {false}; const std::map strideValidator { @@ -68,9 +70,11 @@ struct InputParams ->description("Enable/disable verbose output") ->capture_default_str(); - app.add_option("--shape", shape)->description("Array shape")->expected(1, 4); + app.add_option("-s, --shape", shape)->description("Array shape")->expected(1, 4); + + app.add_option("-g, --ghost", ghostWidth)->description("Ghost width"); - app.add_option("--ghost", ghostWidth)->description("Ghost width"); + app.add_option("-r, --repCount", repCount)->description("Number of repetitions to run"); auto* strideOrderOption = app.add_option("--strideOrder", strideOrder) @@ -152,6 +156,36 @@ std::string array_to_string(const T* dataPtr, int count) return os.str(); } +//!@brief Return allocator id suitable for the given runtime policy. +int allocatorIdFromPolicy(axom::runtime_policy::Policy policy) +{ + AXOM_UNUSED_VAR(policy); +#if defined(AXOM_USE_UMPIRE) + int allocatorID = policy == axom::runtime_policy::Policy::seq + ? axom::detail::getAllocatorID() + : +#if defined(AXOM_RUNTIME_POLICY_USE_OPENMP) + policy == axom::runtime_policy::Policy::omp + ? axom::detail::getAllocatorID() + : +#endif +#if defined(AXOM_RUNTIME_POLICY_USE_CUDA) + policy == axom::runtime_policy::Policy::cuda + ? axom::detail::getAllocatorID() + : +#endif +#if defined(AXOM_RUNTIME_POLICY_USE_HIP) + policy == axom::runtime_policy::Policy::hip + ? axom::detail::getAllocatorID() + : +#endif + axom::INVALID_ALLOCATOR_ID; +#else + int allocatorID = axom::getDefaultAllocatorID(); +#endif + return allocatorID; +} + template class ArrayIndexerPerfTester { @@ -159,19 +193,33 @@ class ArrayIndexerPerfTester using Element_t = std::uint64_t; const Element_t m_baseFactor = 1000000; Element_t m_testAccumulation = 0; - const Element_t sequentiaTestAdd = 1; - const Element_t rowTestAdd = 10; - const Element_t columnTestAdd = 100; - const Element_t dynamicTestAdd = 1000; + const Element_t m_flatTestAdd = 1; + const Element_t m_rowTestAdd = 10; + const Element_t m_columnTestAdd = 100; + const Element_t m_dynamicTestAdd = 1000; + + int m_allocatorId; + + ArrayIndexerPerfTester () + { + m_allocatorId = allocatorIdFromPolicy(params.runtimePolicy); +#ifdef AXOM_USE_UMPIRE + umpire::ResourceManager& rm = umpire::ResourceManager::getInstance(); + umpire::Allocator allocator = rm.getAllocator(m_allocatorId); + std::cout << "Allocator id " << m_allocatorId << ", using Umpire memory space " << allocator.getName() << std::endl; +#else + std::cout << "Allocator id " << m_allocatorId << ", using default memory space" << std::endl; +#endif + } /*! - @brief Time the flat-index access of every element of an array. + @brief Time the pointer access of every element of an array. This is the fastest we expect to visit every element. */ - void runTest_flatAccess(axom::ArrayView& array) + void runTest_pointerAccess(axom::ArrayView& array) { - auto testAdd = sequentiaTestAdd; + auto testAdd = m_flatTestAdd; m_testAccumulation += testAdd; auto count = array.size(); auto* ptr = array.data(); @@ -188,6 +236,29 @@ class ArrayIndexerPerfTester #endif } + /*! + @brief Time the flat-index access of every element of an array. + + Compared to runtest_flatAccess, this includes the flatIndex overhead. + */ + void runTest_flatAccess(axom::ArrayView& array) + { + auto testAdd = m_flatTestAdd; + m_testAccumulation += testAdd; + auto count = array.size(); +#ifdef AXOM_USE_RAJA + axom::for_all( + 0, + count, + AXOM_LAMBDA(axom::IndexType i) { array.flatIndex(i) += testAdd; }); +#else + for(axom::IndexType i = 0; i < count; ++i) + { + array.flatIndex(i) += testAdd; + } +#endif + } + /*! Methods to time the access of every element of an array. @@ -205,7 +276,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-1D"); - auto testAdd = rowTestAdd; + auto testAdd = m_rowTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -228,7 +299,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-2D"); - auto testAdd = rowTestAdd; + auto testAdd = m_rowTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -259,7 +330,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-3D"); - auto testAdd = rowTestAdd; + auto testAdd = m_rowTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -294,25 +365,17 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("rowMajorAccess-4D"); - auto testAdd = rowTestAdd; + auto testAdd = m_rowTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; #ifdef AXOM_USE_RAJA - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) - { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) - { - for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) - { - array(i, j, k, l) += testAdd; - } - } - } - } + AXOM_UNUSED_VAR(array); + AXOM_UNUSED_VAR(idxBegin); + AXOM_UNUSED_VAR(idxEnd); + std::cerr << "Cannot run higher than 3D with RAJA." << std::endl; + std::abort(); #else for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) { @@ -339,7 +402,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-1D"); - auto testAdd = columnTestAdd; + auto testAdd = m_columnTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -362,7 +425,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-2D"); - auto testAdd = columnTestAdd; + auto testAdd = m_columnTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -393,7 +456,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-3D"); - auto testAdd = columnTestAdd; + auto testAdd = m_columnTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -428,25 +491,17 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("columnMajorAccess-4D"); - auto testAdd = columnTestAdd; + auto testAdd = m_columnTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; const auto idxEnd = params.idxEnd; #ifdef AXOM_USE_RAJA - for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) - { - for(axom::IndexType k = idxBegin[2]; k < idxEnd[2]; ++k) - { - for(axom::IndexType j = idxBegin[1]; j < idxEnd[1]; ++j) - { - for(axom::IndexType i = idxBegin[0]; i < idxEnd[0]; ++i) - { - array(i, j, k, l) += testAdd; - } - } - } - } + AXOM_UNUSED_VAR(array); + AXOM_UNUSED_VAR(idxBegin); + AXOM_UNUSED_VAR(idxEnd); + std::cerr << "Cannot run higher than 3D with RAJA." << std::endl; + std::abort(); #else for(axom::IndexType l = idxBegin[3]; l < idxEnd[3]; ++l) { @@ -477,7 +532,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-1D"); - auto testAdd = dynamicTestAdd; + auto testAdd = m_dynamicTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -500,7 +555,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-2D"); - auto testAdd = dynamicTestAdd; + auto testAdd = m_dynamicTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -546,7 +601,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-3D"); - auto testAdd = dynamicTestAdd; + auto testAdd = m_dynamicTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -600,7 +655,7 @@ class ArrayIndexerPerfTester axom::ArrayView& array) { AXOM_PERF_MARK_FUNCTION("dynamicAccess-4D"); - auto testAdd = dynamicTestAdd; + auto testAdd = m_dynamicTestAdd; m_testAccumulation += testAdd; const auto idxBegin = params.idxBegin; @@ -617,24 +672,11 @@ class ArrayIndexerPerfTester idxEnd[slowestDirs[2]], idxEnd[slowestDirs[3]]}; #ifdef AXOM_USE_RAJA - axom::StackArray idx; - axom::IndexType& m = idx[slowestDirs[0]]; - axom::IndexType& n = idx[slowestDirs[1]]; - axom::IndexType& o = idx[slowestDirs[2]]; - axom::IndexType& p = idx[slowestDirs[3]]; - for(m = begins[0]; m < ends[0]; ++m) - { - for(n = begins[1]; n < ends[1]; ++n) - { - for(o = begins[2]; o < ends[2]; ++o) - { - for(p = begins[3]; p < ends[3]; ++p) - { - array[idx] += testAdd; - } - } - } - } + AXOM_UNUSED_VAR(array); + AXOM_UNUSED_VAR(begins); + AXOM_UNUSED_VAR(ends); + std::cerr << "Cannot run higher than 3D with RAJA." << std::endl; + std::abort(); #else axom::StackArray idx; axom::IndexType& m = idx[slowestDirs[0]]; @@ -694,7 +736,7 @@ class ArrayIndexerPerfTester indexer.initializeShape(shape, params.strideOrder); } - return axom::Array(shape); + return axom::Array(shape, m_allocatorId); } /*! @@ -708,14 +750,15 @@ class ArrayIndexerPerfTester { assert(DIM <= params.shape.size()); + ar = axom::Array(params.paddedSize, params.paddedSize, m_allocatorId); + // ar.resize(params.paddedSize); + axom::StackArray paddedShape; for(int d = 0; d < DIM; ++d) { paddedShape[d] = params.paddedShape[d]; } - ar.resize(params.paddedSize); - axom::ArrayIndexer indexer; if(!params.slowestDirections.empty()) { @@ -745,8 +788,8 @@ class ArrayIndexerPerfTester // Use ArrayView to test, because Array doesn't support // arbitrary ordering (yet). #if 0 - axom::Array arrayMd = makeArray(); - axom::ArrayView array = arrayMd.view(); + axom::Array arrayMd = makeArray(); + axom::ArrayView array = arrayMd.view(); #else axom::Array array1D; axom::ArrayView array; @@ -758,54 +801,70 @@ class ArrayIndexerPerfTester << double(params.realSize) / params.paddedSize << std::endl; auto count = array.size(); - auto* ptr = array.data(); - for(axom::IndexType i = 0; i < count; ++i) - { - ptr[i] = Element_t(i * m_baseFactor); - } + auto baseFactor = m_baseFactor; + axom::for_all(count, AXOM_LAMBDA(axom::IndexType i) { + array.flatIndex(i) = Element_t(i * baseFactor); + }); axom::utilities::Timer flatTimer(false); flatTimer.start(); - runTest_flatAccess(array); + for (int r = 0; r::memory_space>(); + axom::Array hostArray(array1D, hostAllocatorId); axom::IndexType matchCount = 0; for(axom::IndexType i = 0; i < count; ++i) { - matchCount += (ptr[i] == Element_t(i * m_baseFactor) + m_testAccumulation); + matchCount += (hostArray[i] == Element_t(i * m_baseFactor) + m_testAccumulation); } if(matchCount != params.realSize) { @@ -818,6 +877,9 @@ class ArrayIndexerPerfTester /*! @brief Run test based on dimension specified in params. + + On devices, we skip DIM > 3. We don't have the RAJA set-up for + higher dimensions. */ template void runTest() @@ -837,7 +899,7 @@ void runTest() ArrayIndexerPerfTester<3, ExecSpace> tester3D; tester3D.runTest_dim(); } - else if(params.shape.size() == 4) + else if(params.shape.size() == 4 && !axom::execution_space::onDevice()) { ArrayIndexerPerfTester<4, ExecSpace> tester4D; tester4D.runTest_dim(); @@ -864,6 +926,8 @@ int main(int argc, char** argv) << axom::runtime_policy::policyToName(params.runtimePolicy) << std::endl; + std::cout << "Repetition count: " << params.repCount << std::endl; + if(params.runtimePolicy == RuntimePolicy::seq) { runTest(); From fb8ec96cf3c4532b19b007fa69a09515da017dce Mon Sep 17 00:00:00 2001 From: Chris White Date: Thu, 21 Mar 2024 13:46:49 -0700 Subject: [PATCH 020/592] use tee instead of reading the outputted log to the screen after it runs --- scripts/llnl_scripts/llnl_lc_build_tools.py | 77 ++++++++------------- 1 file changed, 30 insertions(+), 47 deletions(-) diff --git a/scripts/llnl_scripts/llnl_lc_build_tools.py b/scripts/llnl_scripts/llnl_lc_build_tools.py index dae857189f..c27a280ac6 100755 --- a/scripts/llnl_scripts/llnl_lc_build_tools.py +++ b/scripts/llnl_scripts/llnl_lc_build_tools.py @@ -211,13 +211,14 @@ def build_and_test_host_config(test_root, host_config, cfg_output_file = pjoin(test_root,"output.log.%s.configure.txt" % host_config_root) print("[starting configure of %s]" % host_config) print("[log file: %s]" % cfg_output_file) - res = sexe("%s config-build.py -bp %s -ip %s -bt %s -hc %s %s" % (sys.executable, build_dir, install_dir, build_type, host_config, extra_cmake_options), - output_file = cfg_output_file, - echo=True) - - if report_to_stdout: - with open(cfg_output_file, 'r', encoding='utf8') as build_out: - print(build_out.read()) + cmd = "{0} config-build.py -bp {1} -ip {2} -bt {3} -hc {4} {5} | tee {6}".format(sys.executable, + build_dir, + install_dir, + build_type, + host_config, + extra_cmake_options, + cfg_output_file) + res = sexe(cmd, echo=True) if res != 0: print("[ERROR: Configure for host-config: %s failed]\n" % host_config) @@ -231,13 +232,8 @@ def build_and_test_host_config(test_root, host_config, bld_output_file = pjoin(build_dir,"output.log.make.txt") print("[starting build]") print("[log file: %s]" % bld_output_file) - res = sexe("cd %s && make -j 16 VERBOSE=1 " % build_dir, - output_file = bld_output_file, - echo=True) - - if report_to_stdout: - with open(bld_output_file, 'r', encoding='utf8') as build_out: - print(build_out.read()) + cmd = "cd {0} && make -j 16 VERBOSE=1 | tee {1}".format(build_dir, bld_output_file) + res = sexe(cmd, echo=True) if res != 0: print("[ERROR: Build for host-config: %s failed]\n" % host_config) @@ -249,15 +245,10 @@ def build_and_test_host_config(test_root, host_config, print("[log file: %s]" % tst_output_file) parallel_test = "" if test_serial else "-j16" - tst_cmd = "cd %s && make CTEST_OUTPUT_ON_FAILURE=1 test ARGS=\"--no-compress-output -T Test -VV %s\"" % (build_dir, parallel_test) - - res = sexe(tst_cmd, - output_file = tst_output_file, - echo=True) - - if report_to_stdout: - with open(tst_output_file, 'r', encoding='utf8') as test_out: - print(test_out.read()) + tst_cmd = "cd {0} && make CTEST_OUTPUT_ON_FAILURE=1 test ARGS=\"--no-compress-output -T Test -VV {1}\" | tee {2}".format(build_dir, + parallel_test, + tst_output_file) + res = sexe(tst_cmd, echo=True) # Convert CTest output to JUnit, do not overwrite previous res print("[Checking to see if xsltproc exists...]") @@ -284,26 +275,20 @@ def build_and_test_host_config(test_root, host_config, print("[starting docs generation]") print("[log file: %s]" % docs_output_file) - res = sexe("cd %s && make -j16 docs " % build_dir, - output_file = docs_output_file, - echo=True) - - if report_to_stdout: - with open(docs_output_file, 'r', encoding='utf8') as docs_out: - print(docs_out.read()) + docs_cmd = "cd {0} && make -j16 docs | tee {1}".format(build_dir, docs_output_file) + res = sexe(docs_cmd, echo=True) if res != 0: print("[ERROR: Docs generation for host-config: %s failed]\n\n" % host_config) return res # install the code - inst_output_file = pjoin(build_dir,"output.log.make.install.txt") + install_output_file = pjoin(build_dir,"output.log.make.install.txt") print("[starting install]") - print("[log file: %s]" % inst_output_file) + print("[log file: %s]" % install_output_file) - res = sexe("cd %s && make -j16 install " % build_dir, - output_file = inst_output_file, - echo=True) + install_cmd = "cd {0} && make -j16 install | tee {1}".format(build_dir, install_output_file) + res = sexe(install_cmd, echo=True) if res != 0: print("[ERROR: Install for host-config: %s failed]\n\n" % host_config) @@ -333,17 +318,16 @@ def build_and_test_host_config(test_root, host_config, "mkdir build", "cd build", """echo "[Configuring '{}' example]" """.format("using-with-cmake"), - "cmake -C ../host-config.cmake ..", + "cmake -C ../host-config.cmake .. | tee -a {0}".format(install_example_output_file), """echo "[Building '{}' example]" """.format("using-with-cmake"), - "make ", + "make | tee -a {0}".format(install_example_output_file), """echo "[Running '{}' example]" """.format("using-with-cmake"), - "./example", + "./example | tee -a {0}".format(install_example_output_file), """echo "[Done]" """ ] - res = sexe(" && ".join(example_commands), - output_file = install_example_output_file, - echo=True) + cmd = " && ".join(example_commands) + res = sexe(cmd, echo=True) if res != 0: print("[ERROR: Installed 'using-with-cmake' example for host-config: %s failed]\n\n" % host_config) @@ -362,17 +346,16 @@ def build_and_test_host_config(test_root, host_config, "mkdir build", "cd build", """echo "[Configuring '{}' example]" """.format("using-with-blt"), - "cmake -C ../host-config.cmake ..", + "cmake -C ../host-config.cmake .. | tee -a {0}".format(install_example_output_file), """echo "[Building '{}' example]" """.format("using-with-blt"), - "make ", + "make | tee -a {0}".format(install_example_output_file), """echo "[Running '{}' example]" """.format("using-with-blt"), - "./bin/example", + "./bin/example | tee -a {0}".format(install_example_output_file), """echo "[Done]" """ ] - res = sexe(" && ".join(example_commands), - output_file = install_example_output_file, - echo=True) + cmd = " && ".join(example_commands) + res = sexe(cmd, echo=True) if res != 0: print("[ERROR: Installed 'using-with-blt' example for host-config: %s failed]\n\n" % host_config) From 37cab4f20b52b47f8643b43845d2036bd2ecca98 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Thu, 21 Mar 2024 22:32:38 -0700 Subject: [PATCH 021/592] Name, output and comment changes. --- src/axom/core/examples/core_array_perf.cpp | 75 +++++++++++++--------- 1 file changed, 43 insertions(+), 32 deletions(-) diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index f6d24fc0e4..2b68ecc326 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -22,6 +22,7 @@ #include "axom/CLI11.hpp" // C/C++ includes +#include #include #include @@ -42,8 +43,8 @@ struct InputParams axom::IndexType paddedSize; // Array stride order (same length as shape) - std::vector slowestDirections; - axom::ArrayStrideOrder strideOrder = axom::ArrayStrideOrder::ARBITRARY; + std::vector dataSlowestDirections; + axom::ArrayStrideOrder dataOrder = axom::ArrayStrideOrder::ARBITRARY; RuntimePolicy runtimePolicy = RuntimePolicy::seq; @@ -76,17 +77,17 @@ struct InputParams app.add_option("-r, --repCount", repCount)->description("Number of repetitions to run"); - auto* strideOrderOption = - app.add_option("--strideOrder", strideOrder) - ->description("Stride order (must be as long as sizes.") + auto* dataOrderOption = + app.add_option("--dataOrder", dataOrder) + ->description("Stride order of array data.") ->transform(axom::CLI::CheckedTransformer(strideValidator)) ->expected(1, 4); - app.add_option("--slowestDirections", slowestDirections) + app.add_option("--dataSlowestDirections", dataSlowestDirections) ->description( - "Stride directions, from slowest to fastest. Must be same length as " - "shape.") - ->excludes(strideOrderOption); + "Array data stride directions, from slowest to fastest." + " Must be same length as shape.") + ->excludes(dataOrderOption); app.get_formatter()->column_width(60); @@ -99,23 +100,23 @@ struct InputParams } /* - If slowestDirections is specified, it must match length of shape. + If dataSlowestDirections is specified, it must match length of shape. If neither is specified, default to row-major ordering. */ - if(!slowestDirections.empty()) + if(!dataSlowestDirections.empty()) { - if(slowestDirections.size() != shape.size()) + if(dataSlowestDirections.size() != shape.size()) { - std::cerr << "slowestDimension size (" << slowestDirections.size() + std::cerr << "slowestDimension size (" << dataSlowestDirections.size() << ") must match shape size (" << shape.size() << ")." << std::endl; std::abort(); } } - if(slowestDirections.empty() && - strideOrder == axom::ArrayStrideOrder::ARBITRARY) + if(dataSlowestDirections.empty() && + dataOrder == axom::ArrayStrideOrder::ARBITRARY) { - strideOrder = axom::ArrayStrideOrder::ROW; + dataOrder = axom::ArrayStrideOrder::ROW; } // @@ -206,9 +207,9 @@ class ArrayIndexerPerfTester #ifdef AXOM_USE_UMPIRE umpire::ResourceManager& rm = umpire::ResourceManager::getInstance(); umpire::Allocator allocator = rm.getAllocator(m_allocatorId); - std::cout << "Allocator id " << m_allocatorId << ", using Umpire memory space " << allocator.getName() << std::endl; + std::cout << "Allocator id: " << m_allocatorId << ", Umpire memory space " << allocator.getName() << std::endl; #else - std::cout << "Allocator id " << m_allocatorId << ", using default memory space" << std::endl; + std::cout << "Allocator id: " << m_allocatorId << ", default memory space" << std::endl; #endif } @@ -718,22 +719,22 @@ class ArrayIndexerPerfTester } // Until indexer isused, array will have row-major order. - assert(params.slowestDirections.empty()); - assert(int(params.strideOrder) & int(axom::ArrayStrideOrder::ROW)); + assert(params.dataSlowestDirections.empty()); + assert(int(params.dataOrder) & int(axom::ArrayStrideOrder::ROW)); axom::ArrayIndexer indexer; - if(!params.slowestDirections.empty()) + if(!params.dataSlowestDirections.empty()) { - axom::StackArray slowestDirections; + axom::StackArray dataSlowestDirections; for(int d = 0; d < DIM; ++d) { - slowestDirections[d] = params.slowestDirections[d]; + dataSlowestDirections[d] = params.dataSlowestDirections[d]; } - indexer.initializeShape(shape, slowestDirections); + indexer.initializeShape(shape, dataSlowestDirections); } else { - indexer.initializeShape(shape, params.strideOrder); + indexer.initializeShape(shape, params.dataOrder); } return axom::Array(shape, m_allocatorId); @@ -760,18 +761,18 @@ class ArrayIndexerPerfTester } axom::ArrayIndexer indexer; - if(!params.slowestDirections.empty()) + if(!params.dataSlowestDirections.empty()) { - axom::StackArray slowestDirections; + axom::StackArray dataSlowestDirections; for(int d = 0; d < DIM; ++d) { - slowestDirections[d] = params.slowestDirections[d]; + dataSlowestDirections[d] = params.dataSlowestDirections[d]; } - indexer.initializeShape(paddedShape, slowestDirections); + indexer.initializeShape(paddedShape, dataSlowestDirections); } else { - indexer.initializeShape(paddedShape, params.strideOrder); + indexer.initializeShape(paddedShape, params.dataOrder); } view = axom::ArrayView(ar.data(), paddedShape, indexer.strides()); @@ -821,7 +822,7 @@ class ArrayIndexerPerfTester for (int r = 0; r Date: Fri, 22 Mar 2024 07:36:57 -0700 Subject: [PATCH 022/592] Changes to comments, guard macro name and small clean-up. --- src/axom/core/ArrayIndexer.hpp | 49 +++++++++++++++++----------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index e59a6c5849..274d52ef8f 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -3,8 +3,8 @@ // // SPDX-License-Identifier: (BSD-3-Clause) -#ifndef QUEST_ARRAYINDEXER_HPP_ -#define QUEST_ARRAYINDEXER_HPP_ +#ifndef AXOM_ARRAYINDEXER_HPP_ +#define AXOM_ARRAYINDEXER_HPP_ #include "axom/core/StackArray.hpp" #include "axom/core/numerics/matvecops.hpp" @@ -17,9 +17,9 @@ namespace axom /*! @brief Indicator for stride ordering. - Multidimensional array data can be in row-major order, column-major order, - or some arbitrarily permuted order. Row and column major ordering are the - same thing if the array is 1D. + Multidimensional array data can be in row-major order, column-major + order, or some arbitrarily permuted order. Row- and column-major + ordering are the same if the array is 1D. */ enum class ArrayStrideOrder : int { @@ -30,7 +30,7 @@ enum class ArrayStrideOrder : int }; /*! - @brief Indexing into a multidimensional structured array. + @brief For indexing multidimensional arrays. Supports row-major and column-major ordering and arbitrary permutations of the ordering. @@ -38,15 +38,12 @@ enum class ArrayStrideOrder : int template class ArrayIndexer { - axom::StackArray m_strides; - axom::StackArray m_slowestDirs; - public: /*! @brief Constructor for row- or column-major indexing. @param [in] shape Shape of the array - @param [in] arrayStrideOrder A order indicator from - ArrayStrideOrder. + @param [in] arrayStrideOrder An order indicator, + not ArrayStrideOrder::ARBITRARY. @param [in] fastestStrideLength Stride in the fastest direction. */ @@ -110,10 +107,10 @@ class ArrayIndexer /*! @brief Initialize for row- or column-major indexing. @param [in] shape Shape of the array - @param [in] arrayStrideOrder An order indicator from - ArrayStrideOrder. + @param [in] arrayStrideOrder An order indicator, + not ArrayStrideOrder::ARBITRARY. @param [in] fastestStrideLength Stride in the fastest - direction. + chnaging direction. */ inline AXOM_HOST_DEVICE void initializeShape(const axom::StackArray& shape, ArrayStrideOrder arrayStrideOrder, @@ -122,6 +119,8 @@ class ArrayIndexer assert(arrayStrideOrder == ArrayStrideOrder::COLUMN || arrayStrideOrder == ArrayStrideOrder::ROW || (DIM == 1 && arrayStrideOrder == ArrayStrideOrder::BOTH)); + assert(fastestStrideLength > 0); + if(arrayStrideOrder == ArrayStrideOrder::COLUMN) { for(int d = 0; d < DIM; ++d) @@ -188,13 +187,13 @@ class ArrayIndexer /*! @brief Initialize for arbitrary-stride indexing. - @param [i] strides Strides. Must be unique when DIM > 1. - If not satisfied, you must use one of the other initializers. + @param [i] strides Strides. Values must be unique. + If not unique, use one of the other initializers. */ inline AXOM_HOST_DEVICE void initializeStrides( const axom::StackArray& strides) { - if(DIM > 1 && !stridesAreUnique(strides)) + if(!stridesAreUnique(strides)) { #if !defined(AXOM_DEVICE_CODE) std::ostringstream os; @@ -221,8 +220,9 @@ class ArrayIndexer with ordering preference for non-unique strides. @param [i] strides Strides. - @param [i] orderPref Ordering preference value - (from ArrayStrideOrder) if strides are non-unique. + @param [i] orderPref ArrayStrideOrder::ROW or + ArrayStrideOrder::COLUMN, to use where strides + are non-unique. */ inline AXOM_HOST_DEVICE void initializeStrides( const axom::StackArray& strides, @@ -243,10 +243,7 @@ class ArrayIndexer { if(m_strides[m_slowestDirs[s]] < m_strides[m_slowestDirs[d]]) { - // Swap values. - auto tmp = m_slowestDirs[s]; - m_slowestDirs[s] = m_slowestDirs[d]; - m_slowestDirs[d] = tmp; + std::swap(m_slowestDirs[s], m_slowestDirs[d]); } } } @@ -363,8 +360,12 @@ class ArrayIndexer os << ')'; return os; } + +private: + axom::StackArray m_strides; + axom::StackArray m_slowestDirs; }; } // end namespace axom -#endif // QUEST_ARRAYINDEXER_HPP_ +#endif // AXOM_ARRAYINDEXER_HPP_ From 40ea3528a9a12f36f8a5a1799816f27198834876 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 07:38:29 -0700 Subject: [PATCH 023/592] Fix another row-vs-column mix-up. --- src/axom/core/ArrayIndexer.hpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index 274d52ef8f..cc5f30cfb9 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -212,7 +212,7 @@ class ArrayIndexer } // 2nd argument doesn't matter because strides are unique. - initializeStrides(strides, axom::ArrayStrideOrder::COLUMN); + initializeStrides(strides, axom::ArrayStrideOrder::ROW); } /*! @@ -235,7 +235,7 @@ class ArrayIndexer for(int d = 0; d < DIM; ++d) { m_slowestDirs[d] = - orderPref == axom::ArrayStrideOrder::COLUMN ? d : DIM - 1 - d; + orderPref == axom::ArrayStrideOrder::ROW ? d : DIM - 1 - d; } for(int s = 0; s < DIM; ++s) { From 0bf1e20755a8c99c717ad5dd8dcec34bee30e812 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 07:41:29 -0700 Subject: [PATCH 024/592] Move ArrayIndexer index type argument to end and give it a default. --- src/axom/core/ArrayBase.hpp | 4 +- src/axom/core/ArrayIndexer.hpp | 6 +- src/axom/core/examples/core_array_perf.cpp | 4 +- src/axom/core/tests/core_array_indexer.hpp | 56 +++++++++---------- src/axom/quest/detail/MarchingCubesImpl.hpp | 8 +-- .../examples/quest_marching_cubes_example.cpp | 10 ++-- 6 files changed, 44 insertions(+), 44 deletions(-) diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index 5493316b1d..eec94296fe 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -338,7 +338,7 @@ class ArrayBase } /// \brief Returns the indexer of the Array - AXOM_HOST_DEVICE const ArrayIndexer& indexer() const + AXOM_HOST_DEVICE const ArrayIndexer& indexer() const { return m_indexer; } @@ -562,7 +562,7 @@ class ArrayBase /// \brief Logical strides in each direction StackArray m_strides; /// \brief For converting between multidim indices and offset. - ArrayIndexer m_indexer; + ArrayIndexer m_indexer; }; /// \brief Array implementation specific to 1D Arrays diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index cc5f30cfb9..dedc993013 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -35,7 +35,7 @@ enum class ArrayStrideOrder : int Supports row-major and column-major ordering and arbitrary permutations of the ordering. */ -template +template class ArrayIndexer { public: @@ -76,7 +76,7 @@ class ArrayIndexer from. */ ArrayIndexer(const axom::StackArray& shape, - const axom::ArrayIndexer& orderSource) + const axom::ArrayIndexer& orderSource) { initializeShape(shape, orderSource); } @@ -179,7 +179,7 @@ class ArrayIndexer */ inline AXOM_HOST_DEVICE void initializeShape( const axom::StackArray& shape, - const axom::ArrayIndexer& orderSource) + const axom::ArrayIndexer& orderSource) { initializeShape(shape, orderSource.slowestDirs()); } diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 2b68ecc326..f4562d0755 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -722,7 +722,7 @@ class ArrayIndexerPerfTester assert(params.dataSlowestDirections.empty()); assert(int(params.dataOrder) & int(axom::ArrayStrideOrder::ROW)); - axom::ArrayIndexer indexer; + axom::ArrayIndexer indexer; if(!params.dataSlowestDirections.empty()) { axom::StackArray dataSlowestDirections; @@ -760,7 +760,7 @@ class ArrayIndexerPerfTester paddedShape[d] = params.paddedShape[d]; } - axom::ArrayIndexer indexer; + axom::ArrayIndexer indexer; if(!params.dataSlowestDirections.empty()) { axom::StackArray dataSlowestDirections; diff --git a/src/axom/core/tests/core_array_indexer.hpp b/src/axom/core/tests/core_array_indexer.hpp index 236aad1d01..8bfb2c9db0 100644 --- a/src/axom/core/tests/core_array_indexer.hpp +++ b/src/axom/core/tests/core_array_indexer.hpp @@ -19,7 +19,7 @@ TEST(core_array_indexer, core_strides_and_permutations) constexpr int DIM = 1; axom::StackArray lengths {2}; - axom::ArrayIndexer colIndexer( + axom::ArrayIndexer colIndexer( lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(colIndexer.getStrideOrder(), axom::ArrayStrideOrder::BOTH); @@ -32,9 +32,9 @@ TEST(core_array_indexer, core_strides_and_permutations) } EXPECT_TRUE( colIndexer == - (axom::ArrayIndexer(lengths, colSlowestDirs))); + (axom::ArrayIndexer(lengths, colSlowestDirs))); - axom::ArrayIndexer rowIndexer( + axom::ArrayIndexer rowIndexer( lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(rowIndexer.getStrideOrder(), axom::ArrayStrideOrder::BOTH); @@ -47,14 +47,14 @@ TEST(core_array_indexer, core_strides_and_permutations) } EXPECT_TRUE( rowIndexer == - (axom::ArrayIndexer(lengths, rowSlowestDirs))); + (axom::ArrayIndexer(lengths, rowSlowestDirs))); } { // 2D constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::ArrayIndexer colIndexer( + axom::ArrayIndexer colIndexer( lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(colIndexer.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); @@ -66,7 +66,7 @@ TEST(core_array_indexer, core_strides_and_permutations) EXPECT_EQ(colIndexer.strides()[d], colStrides[d]); } - axom::ArrayIndexer rowIndexer( + axom::ArrayIndexer rowIndexer( lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(rowIndexer.getStrideOrder(), axom::ArrayStrideOrder::ROW); @@ -83,7 +83,7 @@ TEST(core_array_indexer, core_strides_and_permutations) constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; - axom::ArrayIndexer colIndexer( + axom::ArrayIndexer colIndexer( lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(colIndexer.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); @@ -95,7 +95,7 @@ TEST(core_array_indexer, core_strides_and_permutations) EXPECT_EQ(colIndexer.strides()[d], colStrides[d]); } - axom::ArrayIndexer rowIndexer( + axom::ArrayIndexer rowIndexer( lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(rowIndexer.getStrideOrder(), axom::ArrayStrideOrder::ROW); @@ -116,8 +116,8 @@ TEST(quest_array_indexer, quest_row_major_offset) // 1D constexpr int DIM = 1; axom::StackArray lengths {3}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::ROW); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::BOTH); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -132,8 +132,8 @@ TEST(quest_array_indexer, quest_row_major_offset) // 2D constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::ROW); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::ROW); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -150,8 +150,8 @@ TEST(quest_array_indexer, quest_row_major_offset) { // 3D axom::StackArray lengths {5, 3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer<3> ai(lengths, + axom::ArrayStrideOrder::ROW); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::ROW); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -177,8 +177,8 @@ TEST(quest_array_indexer, quest_col_major_offset) // 1D constexpr int DIM = 1; axom::StackArray lengths {3}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::BOTH); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -193,8 +193,8 @@ TEST(quest_array_indexer, quest_col_major_offset) // 2D constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); axom::IndexType offset = 0; for(int j = 0; j < lengths[1]; ++j) @@ -212,8 +212,8 @@ TEST(quest_array_indexer, quest_col_major_offset) // 3D constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); axom::IndexType offset = 0; for(int k = 0; k < lengths[2]; ++k) @@ -236,7 +236,7 @@ template typename std::enable_if::type check_arbitrary_strides_nested_loops( const axom::StackArray& lengths, const axom::StackArray& fastestDirs, - const axom::ArrayIndexer& ai) + const axom::ArrayIndexer& ai) { /* We address the array with natural indices, but arange the @@ -258,7 +258,7 @@ template typename std::enable_if::type check_arbitrary_strides_nested_loops( const axom::StackArray& lengths, const axom::StackArray& fastestDirs, - const axom::ArrayIndexer& ai) + const axom::ArrayIndexer& ai) { /* We address the array with natural indices, but arange the @@ -284,7 +284,7 @@ template typename std::enable_if::type check_arbitrary_strides_nested_loops( const axom::StackArray& lengths, const axom::StackArray& fastestDirs, - const axom::ArrayIndexer& ai) + const axom::ArrayIndexer& ai) { /* We address the array with natural indices, but arange the @@ -327,7 +327,7 @@ void check_arbitrary_strides( currentStride *= lengths[currentDir]; } - axom::ArrayIndexer ai(strides); + axom::ArrayIndexer ai(strides); const auto slowestDirs = ai.slowestDirs(); for(int d = 0; d < DIM; ++d) @@ -400,8 +400,8 @@ TEST(core_array_indexer, core_array_match) constexpr int DIM = 2; axom::StackArray lengths {3, 2}; axom::Array a(lengths); - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::ROW); for(axom::IndexType i = 0; i < lengths[0]; ++i) { for(axom::IndexType j = 0; j < lengths[1]; ++j) @@ -415,8 +415,8 @@ TEST(core_array_indexer, core_array_match) constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; axom::Array a(lengths); - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, + axom::ArrayStrideOrder::ROW); for(axom::IndexType i = 0; i < lengths[0]; ++i) { for(axom::IndexType j = 0; j < lengths[1]; ++j) diff --git a/src/axom/quest/detail/MarchingCubesImpl.hpp b/src/axom/quest/detail/MarchingCubesImpl.hpp index ed34134649..2564cbfd78 100644 --- a/src/axom/quest/detail/MarchingCubesImpl.hpp +++ b/src/axom/quest/detail/MarchingCubesImpl.hpp @@ -47,7 +47,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase public: using Point = axom::primal::Point; using MIdx = axom::StackArray; - using Indexer = axom::ArrayIndexer; + using Indexer = axom::ArrayIndexer; using FacetIdType = int; using LoopPolicy = typename execution_space::loop_policy; using ReducePolicy = typename execution_space::reduce_policy; @@ -644,12 +644,12 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase struct ComputeFacets_Util { double contourVal; - axom::ArrayIndexer indexer; + axom::ArrayIndexer indexer; axom::ArrayView fcnView; axom::StackArray, DIM> coordsViews; ComputeFacets_Util( double contourVal_, - const axom::ArrayIndexer& parentIndexer_, + const axom::ArrayIndexer& parentIndexer_, const axom::ArrayView& fcnView_, const axom::StackArray, DIM> coordsViews_) @@ -943,7 +943,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase the order, we put caseIds in a 1D array and construct a multidim view with the ordering we want. */ - axom::ArrayIndexer m_caseIdsIndexer; + axom::ArrayIndexer m_caseIdsIndexer; // Array references refer to shared Arrays in MarchingCubes. diff --git a/src/axom/quest/examples/quest_marching_cubes_example.cpp b/src/axom/quest/examples/quest_marching_cubes_example.cpp index 3e22624631..388117bacd 100644 --- a/src/axom/quest/examples/quest_marching_cubes_example.cpp +++ b/src/axom/quest/examples/quest_marching_cubes_example.cpp @@ -1175,14 +1175,14 @@ struct ContourTestBase } // Indexers to translate between flat and multidim indices. - axom::Array> indexers(domainCount); + axom::Array> indexers(domainCount); for(int d = 0; d < domainCount; ++d) { axom::StackArray domShape; computationalMesh.domainLengths(d, domShape); indexers[d].initializeShape( domShape, - axom::ArrayIndexer(allCoordsViews[d][0].strides()) + axom::ArrayIndexer(allCoordsViews[d][0].strides()) .slowestDirs()); } @@ -1316,7 +1316,7 @@ struct ContourTestBase */ axom::Array> fcnViews( domainCount); - axom::Array> cellIndexers( + axom::Array> cellIndexers( domainCount); axom::Array> hasContours(domainCount); for(axom::IndexType domId = 0; domId < domainCount; ++domId) @@ -1375,9 +1375,9 @@ struct ContourTestBase strategy.functionName(), false); - axom::ArrayIndexer cellIndexer( + axom::ArrayIndexer cellIndexer( domLengths, - axom::ArrayIndexer(fcnView.strides())); + axom::ArrayIndexer(fcnView.strides())); axom::StackArray parentCellIdx = cellIndexer.toMultiIndex(parentCellId); From c5c27cb66ccb0c7340b86b2ce708779e71df8e21 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 08:10:58 -0700 Subject: [PATCH 025/592] Autoformat. --- src/axom/core/ArrayIndexer.hpp | 2 +- src/axom/core/examples/core_array_perf.cpp | 107 ++++++++++-------- src/axom/core/tests/core_array_indexer.hpp | 56 +++------ .../mint/execution/internal/for_all_cells.hpp | 6 +- .../mint/execution/internal/for_all_faces.hpp | 15 ++- .../mint/execution/internal/for_all_nodes.hpp | 6 +- .../examples/quest_marching_cubes_example.cpp | 6 +- 7 files changed, 94 insertions(+), 104 deletions(-) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index dedc993013..258b4233f7 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -35,7 +35,7 @@ enum class ArrayStrideOrder : int Supports row-major and column-major ordering and arbitrary permutations of the ordering. */ -template +template class ArrayIndexer { public: diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index f4562d0755..a6937ee114 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -75,7 +75,8 @@ struct InputParams app.add_option("-g, --ghost", ghostWidth)->description("Ghost width"); - app.add_option("-r, --repCount", repCount)->description("Number of repetitions to run"); + app.add_option("-r, --repCount", repCount) + ->description("Number of repetitions to run"); auto* dataOrderOption = app.add_option("--dataOrder", dataOrder) @@ -165,22 +166,22 @@ int allocatorIdFromPolicy(axom::runtime_policy::Policy policy) int allocatorID = policy == axom::runtime_policy::Policy::seq ? axom::detail::getAllocatorID() : -#if defined(AXOM_RUNTIME_POLICY_USE_OPENMP) + #if defined(AXOM_RUNTIME_POLICY_USE_OPENMP) policy == axom::runtime_policy::Policy::omp - ? axom::detail::getAllocatorID() - : -#endif -#if defined(AXOM_RUNTIME_POLICY_USE_CUDA) - policy == axom::runtime_policy::Policy::cuda - ? axom::detail::getAllocatorID() - : -#endif -#if defined(AXOM_RUNTIME_POLICY_USE_HIP) - policy == axom::runtime_policy::Policy::hip - ? axom::detail::getAllocatorID() - : -#endif - axom::INVALID_ALLOCATOR_ID; + ? axom::detail::getAllocatorID() + : + #endif + #if defined(AXOM_RUNTIME_POLICY_USE_CUDA) + policy == axom::runtime_policy::Policy::cuda + ? axom::detail::getAllocatorID() + : + #endif + #if defined(AXOM_RUNTIME_POLICY_USE_HIP) + policy == axom::runtime_policy::Policy::hip + ? axom::detail::getAllocatorID() + : + #endif + axom::INVALID_ALLOCATOR_ID; #else int allocatorID = axom::getDefaultAllocatorID(); #endif @@ -201,15 +202,17 @@ class ArrayIndexerPerfTester int m_allocatorId; - ArrayIndexerPerfTester () + ArrayIndexerPerfTester() { m_allocatorId = allocatorIdFromPolicy(params.runtimePolicy); #ifdef AXOM_USE_UMPIRE umpire::ResourceManager& rm = umpire::ResourceManager::getInstance(); umpire::Allocator allocator = rm.getAllocator(m_allocatorId); - std::cout << "Allocator id: " << m_allocatorId << ", Umpire memory space " << allocator.getName() << std::endl; + std::cout << "Allocator id: " << m_allocatorId << ", Umpire memory space " + << allocator.getName() << std::endl; #else - std::cout << "Allocator id: " << m_allocatorId << ", default memory space" << std::endl; + std::cout << "Allocator id: " << m_allocatorId << ", default memory space" + << std::endl; #endif } @@ -751,7 +754,8 @@ class ArrayIndexerPerfTester { assert(DIM <= params.shape.size()); - ar = axom::Array(params.paddedSize, params.paddedSize, m_allocatorId); + ar = + axom::Array(params.paddedSize, params.paddedSize, m_allocatorId); // ar.resize(params.paddedSize); axom::StackArray paddedShape; @@ -803,69 +807,69 @@ class ArrayIndexerPerfTester auto count = array.size(); auto baseFactor = m_baseFactor; - axom::for_all(count, AXOM_LAMBDA(axom::IndexType i) { + axom::for_all( + count, + AXOM_LAMBDA(axom::IndexType i) { array.flatIndex(i) = Element_t(i * baseFactor); }); axom::utilities::Timer flatTimer(false); flatTimer.start(); - for (int r = 0; r::memory_space>(); + auto hostAllocatorId = axom::detail::getAllocatorID< + axom::execution_space::memory_space>(); axom::Array hostArray(array1D, hostAllocatorId); axom::IndexType matchCount = 0; for(axom::IndexType i = 0; i < count; ++i) { - matchCount += (hostArray[i] == Element_t(i * m_baseFactor) + m_testAccumulation); + matchCount += + (hostArray[i] == Element_t(i * m_baseFactor) + m_testAccumulation); } if(matchCount != params.realSize) { @@ -900,7 +904,8 @@ void runTest() ArrayIndexerPerfTester<3, ExecSpace> tester3D; tester3D.runTest_dim(); } - else if(params.shape.size() == 4 && !axom::execution_space::onDevice()) + else if(params.shape.size() == 4 && + !axom::execution_space::onDevice()) { ArrayIndexerPerfTester<4, ExecSpace> tester4D; tester4D.runTest_dim(); @@ -931,10 +936,12 @@ int main(int argc, char** argv) << axom::runtime_policy::policyToName(params.runtimePolicy) << std::endl; - std::cout << "Array shape: " << array_to_string(params.shape.data(), params.shape.size()) + std::cout << "Array shape: " + << array_to_string(params.shape.data(), params.shape.size()) << std::endl; - std::cout << "Data order: " << (params.dataOrder == axom::ArrayStrideOrder::ROW ? "row" : "col") + std::cout << "Data order: " + << (params.dataOrder == axom::ArrayStrideOrder::ROW ? "row" : "col") << std::endl; std::cout << "Repetition count: " << params.repCount << std::endl; diff --git a/src/axom/core/tests/core_array_indexer.hpp b/src/axom/core/tests/core_array_indexer.hpp index 8bfb2c9db0..7e2f99b8c7 100644 --- a/src/axom/core/tests/core_array_indexer.hpp +++ b/src/axom/core/tests/core_array_indexer.hpp @@ -19,9 +19,7 @@ TEST(core_array_indexer, core_strides_and_permutations) constexpr int DIM = 1; axom::StackArray lengths {2}; - axom::ArrayIndexer colIndexer( - lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer colIndexer(lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(colIndexer.getStrideOrder(), axom::ArrayStrideOrder::BOTH); axom::StackArray colSlowestDirs {0}; axom::StackArray colStrides {1}; @@ -30,13 +28,9 @@ TEST(core_array_indexer, core_strides_and_permutations) EXPECT_EQ(colIndexer.slowestDirs()[d], colSlowestDirs[d]); EXPECT_EQ(colIndexer.strides()[d], colStrides[d]); } - EXPECT_TRUE( - colIndexer == - (axom::ArrayIndexer(lengths, colSlowestDirs))); + EXPECT_TRUE(colIndexer == (axom::ArrayIndexer(lengths, colSlowestDirs))); - axom::ArrayIndexer rowIndexer( - lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer rowIndexer(lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(rowIndexer.getStrideOrder(), axom::ArrayStrideOrder::BOTH); axom::StackArray rowSlowestDirs {0}; axom::StackArray rowStrides {1}; @@ -45,18 +39,14 @@ TEST(core_array_indexer, core_strides_and_permutations) EXPECT_EQ(rowIndexer.slowestDirs()[d], rowSlowestDirs[d]); EXPECT_EQ(rowIndexer.strides()[d], rowStrides[d]); } - EXPECT_TRUE( - rowIndexer == - (axom::ArrayIndexer(lengths, rowSlowestDirs))); + EXPECT_TRUE(rowIndexer == (axom::ArrayIndexer(lengths, rowSlowestDirs))); } { // 2D constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::ArrayIndexer colIndexer( - lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer colIndexer(lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(colIndexer.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); axom::StackArray colSlowestDirs {1, 0}; axom::StackArray colStrides {1, 3}; @@ -66,9 +56,7 @@ TEST(core_array_indexer, core_strides_and_permutations) EXPECT_EQ(colIndexer.strides()[d], colStrides[d]); } - axom::ArrayIndexer rowIndexer( - lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer rowIndexer(lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(rowIndexer.getStrideOrder(), axom::ArrayStrideOrder::ROW); axom::StackArray rowSlowestDirs {0, 1}; axom::StackArray rowStrides {2, 1}; @@ -83,9 +71,7 @@ TEST(core_array_indexer, core_strides_and_permutations) constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; - axom::ArrayIndexer colIndexer( - lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer colIndexer(lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(colIndexer.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); axom::StackArray colSlowestDirs {2, 1, 0}; axom::StackArray colStrides {1, 5, 15}; @@ -95,9 +81,7 @@ TEST(core_array_indexer, core_strides_and_permutations) EXPECT_EQ(colIndexer.strides()[d], colStrides[d]); } - axom::ArrayIndexer rowIndexer( - lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer rowIndexer(lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(rowIndexer.getStrideOrder(), axom::ArrayStrideOrder::ROW); axom::StackArray rowSlowestDirs {0, 1, 2}; axom::StackArray rowStrides {6, 2, 1}; @@ -116,8 +100,7 @@ TEST(quest_array_indexer, quest_row_major_offset) // 1D constexpr int DIM = 1; axom::StackArray lengths {3}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::BOTH); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -132,8 +115,7 @@ TEST(quest_array_indexer, quest_row_major_offset) // 2D constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::ROW); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -150,8 +132,7 @@ TEST(quest_array_indexer, quest_row_major_offset) { // 3D axom::StackArray lengths {5, 3, 2}; - axom::ArrayIndexer<3> ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer<3> ai(lengths, axom::ArrayStrideOrder::ROW); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::ROW); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -177,8 +158,7 @@ TEST(quest_array_indexer, quest_col_major_offset) // 1D constexpr int DIM = 1; axom::StackArray lengths {3}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::BOTH); axom::IndexType offset = 0; for(int i = 0; i < lengths[0]; ++i) @@ -193,8 +173,7 @@ TEST(quest_array_indexer, quest_col_major_offset) // 2D constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); axom::IndexType offset = 0; for(int j = 0; j < lengths[1]; ++j) @@ -212,8 +191,7 @@ TEST(quest_array_indexer, quest_col_major_offset) // 3D constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::COLUMN); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::COLUMN); EXPECT_EQ(ai.getStrideOrder(), axom::ArrayStrideOrder::COLUMN); axom::IndexType offset = 0; for(int k = 0; k < lengths[2]; ++k) @@ -400,8 +378,7 @@ TEST(core_array_indexer, core_array_match) constexpr int DIM = 2; axom::StackArray lengths {3, 2}; axom::Array a(lengths); - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::ROW); for(axom::IndexType i = 0; i < lengths[0]; ++i) { for(axom::IndexType j = 0; j < lengths[1]; ++j) @@ -415,8 +392,7 @@ TEST(core_array_indexer, core_array_match) constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; axom::Array a(lengths); - axom::ArrayIndexer ai(lengths, - axom::ArrayStrideOrder::ROW); + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::ROW); for(axom::IndexType i = 0; i < lengths[0]; ++i) { for(axom::IndexType j = 0; j < lengths[1]; ++j) diff --git a/src/axom/mint/execution/internal/for_all_cells.hpp b/src/axom/mint/execution/internal/for_all_cells.hpp index a14bbb9799..1d3e37ab90 100644 --- a/src/axom/mint/execution/internal/for_all_cells.hpp +++ b/src/axom/mint/execution/internal/for_all_cells.hpp @@ -71,7 +71,8 @@ inline void for_all_cells_impl(xargs::ij, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), @@ -130,7 +131,8 @@ inline void for_all_cells_impl(xargs::ijk, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), diff --git a/src/axom/mint/execution/internal/for_all_faces.hpp b/src/axom/mint/execution/internal/for_all_faces.hpp index c7e6b69db2..3c8a92c093 100644 --- a/src/axom/mint/execution/internal/for_all_faces.hpp +++ b/src/axom/mint/execution/internal/for_all_faces.hpp @@ -51,7 +51,8 @@ inline void for_all_I_faces(xargs::ij, const StructuredMesh& m, KernelType&& ker RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), AXOM_LAMBDA(IndexType i, IndexType j) { @@ -96,7 +97,8 @@ inline void for_all_I_faces(xargs::ijk, const StructuredMesh& m, KernelType&& ke RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), AXOM_LAMBDA(IndexType i, IndexType j, IndexType k) { @@ -142,7 +144,8 @@ inline void for_all_J_faces(xargs::ij, const StructuredMesh& m, KernelType&& ker RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), AXOM_LAMBDA(IndexType i, IndexType j) { @@ -188,7 +191,8 @@ inline void for_all_J_faces(xargs::ijk, const StructuredMesh& m, KernelType&& ke RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), AXOM_LAMBDA(IndexType i, IndexType j, IndexType k) { @@ -240,7 +244,8 @@ inline void for_all_K_faces(xargs::ijk, const StructuredMesh& m, KernelType&& ke RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), AXOM_LAMBDA(IndexType i, IndexType j, IndexType k) { diff --git a/src/axom/mint/execution/internal/for_all_nodes.hpp b/src/axom/mint/execution/internal/for_all_nodes.hpp index d40639f613..08601a659b 100644 --- a/src/axom/mint/execution/internal/for_all_nodes.hpp +++ b/src/axom/mint/execution/internal/for_all_nodes.hpp @@ -65,7 +65,8 @@ inline void for_all_nodes_impl(xargs::ij, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); - using exec_pol = typename axom::internal::nested_for_exec::loop2d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop2d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range), @@ -126,7 +127,8 @@ inline void for_all_nodes_impl(xargs::ijk, RAJA::RangeSegment i_range(0, Ni); RAJA::RangeSegment j_range(0, Nj); RAJA::RangeSegment k_range(0, Nk); - using exec_pol = typename axom::internal::nested_for_exec::loop3d_policy; + using exec_pol = + typename axom::internal::nested_for_exec::loop3d_policy; RAJA::kernel( RAJA::make_tuple(i_range, j_range, k_range), diff --git a/src/axom/quest/examples/quest_marching_cubes_example.cpp b/src/axom/quest/examples/quest_marching_cubes_example.cpp index 388117bacd..5733189353 100644 --- a/src/axom/quest/examples/quest_marching_cubes_example.cpp +++ b/src/axom/quest/examples/quest_marching_cubes_example.cpp @@ -1182,8 +1182,7 @@ struct ContourTestBase computationalMesh.domainLengths(d, domShape); indexers[d].initializeShape( domShape, - axom::ArrayIndexer(allCoordsViews[d][0].strides()) - .slowestDirs()); + axom::ArrayIndexer(allCoordsViews[d][0].strides()).slowestDirs()); } auto elementGreaterThan = [](const axom::primal::Vector& a, @@ -1316,8 +1315,7 @@ struct ContourTestBase */ axom::Array> fcnViews( domainCount); - axom::Array> cellIndexers( - domainCount); + axom::Array> cellIndexers(domainCount); axom::Array> hasContours(domainCount); for(axom::IndexType domId = 0; domId < domainCount; ++domId) { From a48cdb83c0e75e8d7b3f5b3c1b63acd5e7bd5ad3 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 14:55:30 -0700 Subject: [PATCH 026/592] Support non-unit fastest stride. --- src/axom/core/ArrayIndexer.hpp | 31 +++++++++++++++++++++++++++---- 1 file changed, 27 insertions(+), 4 deletions(-) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index 258b4233f7..4bc2bb9152 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -60,11 +60,14 @@ class ArrayIndexer @param [in] slowestDirs permutation vector, where slowestDirs[0] is the slowest direction and slowestDirs[DIM-1] is the fastest. + @param [in] fastestStrideLength Stride in the fastest + direction. */ ArrayIndexer(const axom::StackArray& shape, - const axom::StackArray& slowestDirs) + const axom::StackArray& slowestDirs, + int fastestStrideLength = 1) { - initializeShape(shape, slowestDirs); + initializeShape(shape, slowestDirs, fastestStrideLength); } /*! @@ -104,6 +107,23 @@ class ArrayIndexer */ ArrayIndexer() = default; + /*! + @brief Construct indexer for empty shape and the given stride order. + + The expected use case is when a stride order is known but the + shape is to be determined. Initialize the indexer with its own + slowestDirs() to preserve ordering as its shape changes. + */ + ArrayIndexer(ArrayStrideOrder arrayStrideOrder) + { + axom::StackArray shape; + for (int d = 0; d < DIM; ++d) + { + shape[d] = 0; + } + initializeShape(shape, arrayStrideOrder); + } + /*! @brief Initialize for row- or column-major indexing. @param [in] shape Shape of the array @@ -153,14 +173,17 @@ class ArrayIndexer @param [in] slowestDirs permutation vector, where slowestDirs[0] is the slowest direction and slowestDirs[DIM-1] is the fastest. + @param [in] fastestStrideLength Stride in the fastest + direction. */ inline AXOM_HOST_DEVICE void initializeShape( const axom::StackArray& shape, - const axom::StackArray& slowestDirs) + const axom::StackArray& slowestDirs, + int fastestStrideLength = 1) { assert(isPermutation(slowestDirs)); m_slowestDirs = slowestDirs; - m_strides[m_slowestDirs[DIM - 1]] = 1; + m_strides[m_slowestDirs[DIM - 1]] = fastestStrideLength; for(int d = DIM - 2; d >= 0; --d) { int dir = m_slowestDirs[d]; From 21943043e329183be0e5beea6a7a61479fe87b06 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 16:37:33 -0700 Subject: [PATCH 027/592] Stop using m_strides and completely rely on m_indexer. --- src/axom/core/ArrayBase.hpp | 85 +++++++++++++++++++++++-------------- 1 file changed, 54 insertions(+), 31 deletions(-) diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index eec94296fe..5aa405458e 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -157,7 +157,10 @@ class ArrayBase constexpr static int Dims = DIM; - AXOM_HOST_DEVICE ArrayBase() : m_shape {} + //! @brief Construct row-major, unitnitialized array. + AXOM_HOST_DEVICE ArrayBase() + : m_shape() + , m_indexer(ArrayStrideOrder::ROW) { m_strides[DIM - 1] = 1; updateStrides(); @@ -173,9 +176,10 @@ class ArrayBase AXOM_HOST_DEVICE ArrayBase(const StackArray& shape, int min_stride = 1) : m_shape {shape} + , m_indexer(shape, ArrayStrideOrder::ROW) { m_strides[DIM - 1] = min_stride; - updateStrides(); + updateStrides(min_stride); } /*! @@ -191,6 +195,7 @@ class ArrayBase , m_indexer() { m_indexer.initializeStrides(stride, axom::ArrayStrideOrder::ROW); + m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; validateShapeAndStride(shape, stride); } @@ -206,7 +211,10 @@ class ArrayBase const ArrayBase::type, DIM, OtherArrayType>& other) : m_shape(other.shape()) , m_strides(other.strides()) - { } + , m_indexer(other.indexer()) + { + m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + } /// \overload template @@ -214,7 +222,10 @@ class ArrayBase const ArrayBase::type, DIM, OtherArrayType>& other) : m_shape(other.shape()) , m_strides(other.strides()) - { } + , m_indexer(other.indexer()) + { + m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + } /*! * \brief Dimension-aware accessor; with N=DIM indices, returns a reference @@ -329,6 +340,8 @@ class ArrayBase { std::swap(m_shape, other.m_shape); std::swap(m_strides, other.m_strides); + std::swap(m_indexer, other.m_indexer); + std::swap(m_minStride, other.m_minStride); } /// \brief Returns the dimensions of the Array @@ -348,7 +361,7 @@ class ArrayBase */ AXOM_HOST_DEVICE const StackArray& strides() const { - return m_strides; + return m_indexer.strides(); } /*! @@ -356,12 +369,18 @@ class ArrayBase */ AXOM_HOST_DEVICE IndexType minStride() const { - IndexType minStride = m_strides[0]; - for(int dim = 1; dim < DIM; dim++) - { - minStride = axom::utilities::min(minStride, m_strides[dim]); - } - return minStride; + /* + For some reason, using the #else block slows down flatIndex() for + CUDA and HIP, though it doesn't seem tricky to optimize. As a + work around, we store the value in m_minStrides and update it + when m_indexer changes. + */ +#if 1 + return m_minStride; +#else + auto fastestDir = m_indexer.slowestDirs()[DIM - 1]; + return m_indexer.strides()[ fastestDir ]; +#endif } protected: @@ -388,6 +407,8 @@ class ArrayBase #endif m_shape = shape; m_strides = stride; + m_indexer.initializeStrides(stride); + m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; } /*! @@ -396,7 +417,10 @@ class ArrayBase * This is used when resizing/reallocating; it wouldn't make sense to have a * capacity of 3 in the array described above. */ - IndexType blockSize() const { return m_strides[0]; } + IndexType blockSize() const { + auto slowestDir = m_indexer.slowestDirs()[0]; + return m_indexer.strides()[slowestDir]; + } /*! * \brief Updates the internal striding information to a row-major format @@ -404,17 +428,11 @@ class ArrayBase * In the future, this class will support different striding schemes (e.g., column-major) * and/or user-provided striding */ - AXOM_HOST_DEVICE void updateStrides() + AXOM_HOST_DEVICE void updateStrides(int min_stride = 1) { - // Row-major - // Note that the fastest stride is not updated. It's unaffected by shape. - for(int i = static_cast(DIM) - 2; i >= 0; i--) - { - m_strides[i] = m_strides[i + 1] * m_shape[i + 1]; - } - // For now, indexer just shadows stride. - // Future: indexer will provide the stides and offsets. - m_indexer.initializeStrides(m_strides, axom::ArrayStrideOrder::ROW); + // Update m_indexer strides while preserving stride order. + m_indexer.initializeShape(m_shape, m_indexer.slowestDirs(), min_stride); + m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; } /*! @@ -451,7 +469,7 @@ class ArrayBase //// \brief Memory offset to get to the given multidimensional index. AXOM_HOST_DEVICE IndexType offset(const StackArray& idx) const { - return numerics::dot_product((const IndexType*)idx, m_strides.begin(), DIM); + return m_indexer.toFlatIndex(idx); } /*! @@ -462,21 +480,24 @@ class ArrayBase */ AXOM_HOST_DEVICE IndexType memorySize() const { - IndexType maxSize = 0; - for(int dim = 0; dim < DIM; dim++) - { - maxSize = axom::utilities::max(maxSize, m_strides[dim] * m_shape[dim]); - } - return maxSize; + auto slowestDir = m_indexer.slowestDirs()[0]; + return m_indexer.strides()[ slowestDir ] * m_shape[ slowestDir ]; } - /// \brief Memory offset to a slice at the given lower-dimensional index. + /*! + \brief Memory offset to a slice at the given lower-dimensional index. + + Allowed only for row-major arrays. + + @pre indexer().getStrideOrder() & ArrayStrideOrder::ROW == true + */ template AXOM_HOST_DEVICE IndexType offset(const StackArray& idx) const { static_assert(UDim <= DIM, "Index dimensions cannot be larger than array dimensions"); - return numerics::dot_product(idx.begin(), m_strides.begin(), UDim); + assert( indexer().getStrideOrder() & ArrayStrideOrder::ROW ); + return numerics::dot_product(idx.begin(), m_indexer.strides().begin(), UDim); } /// \name Internal bounds-checking routines @@ -563,6 +584,8 @@ class ArrayBase StackArray m_strides; /// \brief For converting between multidim indices and offset. ArrayIndexer m_indexer; + /// \brief Cached value for optimization. @see minStride() + IndexType m_minStride; }; /// \brief Array implementation specific to 1D Arrays From 17b1404a973f4217dcbf3cc647c24ae8c05f6cbd Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 16:53:49 -0700 Subject: [PATCH 028/592] Remove m_strides. --- src/axom/core/ArrayBase.hpp | 9 --------- 1 file changed, 9 deletions(-) diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index 5aa405458e..c5198be299 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -162,7 +162,6 @@ class ArrayBase : m_shape() , m_indexer(ArrayStrideOrder::ROW) { - m_strides[DIM - 1] = 1; updateStrides(); } @@ -178,7 +177,6 @@ class ArrayBase : m_shape {shape} , m_indexer(shape, ArrayStrideOrder::ROW) { - m_strides[DIM - 1] = min_stride; updateStrides(min_stride); } @@ -191,7 +189,6 @@ class ArrayBase AXOM_HOST_DEVICE ArrayBase(const StackArray& shape, const StackArray& stride) : m_shape {shape} - , m_strides {stride} , m_indexer() { m_indexer.initializeStrides(stride, axom::ArrayStrideOrder::ROW); @@ -210,7 +207,6 @@ class ArrayBase ArrayBase( const ArrayBase::type, DIM, OtherArrayType>& other) : m_shape(other.shape()) - , m_strides(other.strides()) , m_indexer(other.indexer()) { m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; @@ -221,7 +217,6 @@ class ArrayBase ArrayBase( const ArrayBase::type, DIM, OtherArrayType>& other) : m_shape(other.shape()) - , m_strides(other.strides()) , m_indexer(other.indexer()) { m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; @@ -339,7 +334,6 @@ class ArrayBase void swap(ArrayBase& other) { std::swap(m_shape, other.m_shape); - std::swap(m_strides, other.m_strides); std::swap(m_indexer, other.m_indexer); std::swap(m_minStride, other.m_minStride); } @@ -406,7 +400,6 @@ class ArrayBase validateShapeAndStride(shape, stride); #endif m_shape = shape; - m_strides = stride; m_indexer.initializeStrides(stride); m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; } @@ -580,8 +573,6 @@ class ArrayBase protected: /// \brief The extent in each direction StackArray m_shape; - /// \brief Logical strides in each direction - StackArray m_strides; /// \brief For converting between multidim indices and offset. ArrayIndexer m_indexer; /// \brief Cached value for optimization. @see minStride() From fa791864cfeba7eb9d8d1826be92a5f5d41f3bc9 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Fri, 22 Mar 2024 17:21:02 -0700 Subject: [PATCH 029/592] Autoformat. --- src/axom/core/ArrayBase.hpp | 25 ++++++++++++------------- src/axom/core/ArrayIndexer.hpp | 2 +- 2 files changed, 13 insertions(+), 14 deletions(-) diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index c5198be299..bf23ac0f2f 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -158,9 +158,7 @@ class ArrayBase constexpr static int Dims = DIM; //! @brief Construct row-major, unitnitialized array. - AXOM_HOST_DEVICE ArrayBase() - : m_shape() - , m_indexer(ArrayStrideOrder::ROW) + AXOM_HOST_DEVICE ArrayBase() : m_shape(), m_indexer(ArrayStrideOrder::ROW) { updateStrides(); } @@ -192,7 +190,7 @@ class ArrayBase , m_indexer() { m_indexer.initializeStrides(stride, axom::ArrayStrideOrder::ROW); - m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; validateShapeAndStride(shape, stride); } @@ -209,7 +207,7 @@ class ArrayBase : m_shape(other.shape()) , m_indexer(other.indexer()) { - m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; } /// \overload @@ -219,7 +217,7 @@ class ArrayBase : m_shape(other.shape()) , m_indexer(other.indexer()) { - m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; } /*! @@ -363,7 +361,7 @@ class ArrayBase */ AXOM_HOST_DEVICE IndexType minStride() const { - /* + /* For some reason, using the #else block slows down flatIndex() for CUDA and HIP, though it doesn't seem tricky to optimize. As a work around, we store the value in m_minStrides and update it @@ -373,7 +371,7 @@ class ArrayBase return m_minStride; #else auto fastestDir = m_indexer.slowestDirs()[DIM - 1]; - return m_indexer.strides()[ fastestDir ]; + return m_indexer.strides()[fastestDir]; #endif } @@ -401,7 +399,7 @@ class ArrayBase #endif m_shape = shape; m_indexer.initializeStrides(stride); - m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; } /*! @@ -410,7 +408,8 @@ class ArrayBase * This is used when resizing/reallocating; it wouldn't make sense to have a * capacity of 3 in the array described above. */ - IndexType blockSize() const { + IndexType blockSize() const + { auto slowestDir = m_indexer.slowestDirs()[0]; return m_indexer.strides()[slowestDir]; } @@ -425,7 +424,7 @@ class ArrayBase { // Update m_indexer strides while preserving stride order. m_indexer.initializeShape(m_shape, m_indexer.slowestDirs(), min_stride); - m_minStride = m_indexer.strides()[ m_indexer.slowestDirs()[DIM - 1] ]; + m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; } /*! @@ -474,7 +473,7 @@ class ArrayBase AXOM_HOST_DEVICE IndexType memorySize() const { auto slowestDir = m_indexer.slowestDirs()[0]; - return m_indexer.strides()[ slowestDir ] * m_shape[ slowestDir ]; + return m_indexer.strides()[slowestDir] * m_shape[slowestDir]; } /*! @@ -489,7 +488,7 @@ class ArrayBase { static_assert(UDim <= DIM, "Index dimensions cannot be larger than array dimensions"); - assert( indexer().getStrideOrder() & ArrayStrideOrder::ROW ); + assert(indexer().getStrideOrder() & ArrayStrideOrder::ROW); return numerics::dot_product(idx.begin(), m_indexer.strides().begin(), UDim); } diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index 4bc2bb9152..b5ea1d6082 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -117,7 +117,7 @@ class ArrayIndexer ArrayIndexer(ArrayStrideOrder arrayStrideOrder) { axom::StackArray shape; - for (int d = 0; d < DIM; ++d) + for(int d = 0; d < DIM; ++d) { shape[d] = 0; } From f21c3308482d4455a9141d0fa4b8e8163e4f1cf8 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Sat, 23 Mar 2024 07:44:46 -0700 Subject: [PATCH 030/592] Fix failure on non-Unix machines. --- src/axom/core/examples/core_array_perf.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index a6937ee114..7c50cedb15 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -15,6 +15,7 @@ #include "axom/core/execution/nested_for_exec.hpp" #include "axom/core/execution/runtime_policy.hpp" #include "axom/core/memory_management.hpp" +#include "axom/core/utilities/System.hpp" #include "axom/core/utilities/Timer.hpp" #include "axom/core/utilities/AnnotationMacros.hpp" @@ -22,7 +23,6 @@ #include "axom/CLI11.hpp" // C/C++ includes -#include #include #include @@ -926,8 +926,7 @@ int main(int argc, char** argv) exit(retval); } - char hostname[50]; - gethostname(hostname, 50); + auto hostname = axom::utilities::getHostName(); std::cout << "Host: " << hostname << std::endl; using RuntimePolicy = axom::runtime_policy::Policy; From 423280f270f53e183b5c9677aaad21e62c5b635d Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Sat, 23 Mar 2024 19:43:30 -0700 Subject: [PATCH 031/592] Add Array constructor taking indexer, and use it in the perf test. This replaces the work-around that makes 1D arrays and multidimensional ArrayView for the tests. --- src/axom/core/Array.hpp | 33 +++++++++- src/axom/core/ArrayBase.hpp | 57 ++++++++++------- src/axom/core/ArrayIndexer.hpp | 24 +++++++ src/axom/core/examples/core_array_perf.cpp | 73 +++++++++------------- 4 files changed, 120 insertions(+), 67 deletions(-) diff --git a/src/axom/core/Array.hpp b/src/axom/core/Array.hpp index 3ff2ddb3f0..aa674ea87f 100644 --- a/src/axom/core/Array.hpp +++ b/src/axom/core/Array.hpp @@ -7,6 +7,7 @@ #define AXOM_ARRAY_HPP_ #include "axom/config.hpp" +#include "axom/core/ArrayIndexer.hpp" #include "axom/core/Macros.hpp" #include "axom/core/utilities/Utilities.hpp" #include "axom/core/Types.hpp" @@ -60,10 +61,13 @@ struct ArrayTraits> * * The Array class mirrors std::vector, with future support for GPUs * in-development. The class's multidimensional array functionality roughly - mirrors the multidimensional array support provided by numpy's ndarray. - * + * mirrors the multidimensional array support provided by numpy's ndarray. + * * \see https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html - * + * + * Some constructors and initializers accomodate data ordering specifications. + * Unless otherwise specified, data storage defaults to row-major. + * * This class is meant to be a drop-in replacement for std::vector. * However, it differs in its memory management and construction semantics. * Specifically, we do not require axom::Array to initialize/construct @@ -161,6 +165,15 @@ class Array : public ArrayBase> Array(const axom::StackArray& shape, int allocator_id = axom::detail::getAllocatorID()); + /*! + \brief Construct Array with an ArrayIndexer to specify data ordering. + + \pre indexer.fastestStrideLength() == 1 + */ + Array(const axom::StackArray& shape, + const axom::ArrayIndexer& indexer, + int allocator_id = axom::detail::getAllocatorID()); + /*! * \brief Generic constructor for an Array of arbitrary dimension * @@ -931,6 +944,20 @@ Array::Array(const axom::StackArray& shape, false); } +//------------------------------------------------------------------------------ +template +Array::Array(const axom::StackArray& shape, + const axom::ArrayIndexer& indexer, + int allocator_id) + : ArrayBase>(shape, indexer) + , m_allocator_id(allocator_id) +{ + assert(indexer.fastestStrideLength() == 1); + initialize(detail::packProduct(shape.m_data), + detail::packProduct(shape.m_data), + false); +} + //------------------------------------------------------------------------------ template template diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index bf23ac0f2f..c08bbada83 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -178,6 +178,22 @@ class ArrayBase updateStrides(min_stride); } + /*! + * \brief Parameterized constructor that sets up the array shape, + * with an indexer to specify data ordering. + * + * \param [in] shape Array size in each direction. + * \param [in] indexer Info on how data is laid out in memory. + */ + AXOM_HOST_DEVICE ArrayBase(const StackArray& shape, + const ArrayIndexer& indexer) + : m_shape {shape} + , m_indexer(indexer) + , m_minStride(m_indexer.fastestStrideLength()) + { + assert(indexer.fitsShape(shape)); // Ensure compatible shape and strides. + } + /*! * \brief Parameterized constructor that sets up the array shape and stride. * @@ -189,8 +205,8 @@ class ArrayBase : m_shape {shape} , m_indexer() { - m_indexer.initializeStrides(stride, axom::ArrayStrideOrder::ROW); - m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; + m_indexer.initializeStrides(stride, ArrayStrideOrder::ROW); + m_minStride = m_indexer.fastestStrideLength(); validateShapeAndStride(shape, stride); } @@ -207,7 +223,7 @@ class ArrayBase : m_shape(other.shape()) , m_indexer(other.indexer()) { - m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; + m_minStride = m_indexer.fastestStrideLength(); } /// \overload @@ -217,7 +233,7 @@ class ArrayBase : m_shape(other.shape()) , m_indexer(other.indexer()) { - m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; + m_minStride = m_indexer.fastestStrideLength(); } /*! @@ -359,21 +375,7 @@ class ArrayBase /*! * \brief Returns the minimum stride between adjacent items. */ - AXOM_HOST_DEVICE IndexType minStride() const - { - /* - For some reason, using the #else block slows down flatIndex() for - CUDA and HIP, though it doesn't seem tricky to optimize. As a - work around, we store the value in m_minStrides and update it - when m_indexer changes. - */ -#if 1 - return m_minStride; -#else - auto fastestDir = m_indexer.slowestDirs()[DIM - 1]; - return m_indexer.strides()[fastestDir]; -#endif - } + AXOM_HOST_DEVICE inline IndexType minStride() const { return m_minStride; } protected: /// \brief Set the shape @@ -399,7 +401,7 @@ class ArrayBase #endif m_shape = shape; m_indexer.initializeStrides(stride); - m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; + m_minStride = m_indexer.fastestStrideLength(); } /*! @@ -424,7 +426,7 @@ class ArrayBase { // Update m_indexer strides while preserving stride order. m_indexer.initializeShape(m_shape, m_indexer.slowestDirs(), min_stride); - m_minStride = m_indexer.strides()[m_indexer.slowestDirs()[DIM - 1]]; + m_minStride = m_indexer.fastestStrideLength(); } /*! @@ -574,7 +576,13 @@ class ArrayBase StackArray m_shape; /// \brief For converting between multidim indices and offset. ArrayIndexer m_indexer; - /// \brief Cached value for optimization. @see minStride() + /*! \brief Cached value for optimization. @see minStride() + + For some reason, computing min stride in minStride() slows down + flatIndex() for CUDA and HIP, even though it doesn't seem tricky + to optimize. As a work around, we cache the value in m_minStrides + and update it when m_indexer changes. BTNG, March 2024. + */ IndexType m_minStride; }; @@ -606,6 +614,11 @@ class ArrayBase : m_stride(stride[0]) { } + AXOM_HOST_DEVICE ArrayBase(const StackArray&, + const ArrayIndexer<1>& indexer) + : m_stride(indexer.strides()[0]) + { } + // Empty implementation because no member data template ArrayBase(const ArrayBase::type, 1, OtherArrayType>&) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index b5ea1d6082..6ab91c9a0d 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -302,6 +302,12 @@ class ArrayIndexer return m_strides; } + //!@brief Stride length in fastest direction. + inline AXOM_HOST_DEVICE axom::IndexType fastestStrideLength() const + { + return m_strides[m_slowestDirs[DIM - 1]]; + } + //!@brief Whether a StackArray represents a permutation. bool isPermutation(const axom::StackArray& v) { @@ -326,6 +332,24 @@ class ArrayIndexer return true; } + /*! + @brief Whether object's fit with a given array shape. + + This object can index arrays with the given shape if + the index ordering and fastest stride also match the + array's data ordering and fastest stride. + */ + bool fitsShape(const axom::StackArray& shape) const + { + bool fits = true; + for(int d = DIM - 1; d > 0; --d) + { + fits &= m_strides[m_slowestDirs[d]] * shape[m_slowestDirs[d]] == + m_strides[m_slowestDirs[d - 1]]; + } + return fits; + } + /*! @brief Get the stride order (row- or column-major, or something else). diff --git a/src/axom/core/examples/core_array_perf.cpp b/src/axom/core/examples/core_array_perf.cpp index 7c50cedb15..40e60cd6cd 100644 --- a/src/axom/core/examples/core_array_perf.cpp +++ b/src/axom/core/examples/core_array_perf.cpp @@ -708,24 +708,16 @@ class ArrayIndexerPerfTester // /*! - @brief Return an array for testing, dimension DIM, - sized and ordered according to params values. + @brief Make ArrayIndexer based on command line parameters. */ - axom::Array makeArray() + void getPaddedShapeAndIndexer(axom::StackArray& paddedShape, + axom::ArrayIndexer& indexer) { - assert(DIM <= params.shape.size()); - - axom::StackArray shape; for(int d = 0; d < DIM; ++d) { - shape[d] = params.shape[d]; + paddedShape[d] = params.paddedShape[d]; } - // Until indexer isused, array will have row-major order. - assert(params.dataSlowestDirections.empty()); - assert(int(params.dataOrder) & int(axom::ArrayStrideOrder::ROW)); - - axom::ArrayIndexer indexer; if(!params.dataSlowestDirections.empty()) { axom::StackArray dataSlowestDirections; @@ -733,14 +725,27 @@ class ArrayIndexerPerfTester { dataSlowestDirections[d] = params.dataSlowestDirections[d]; } - indexer.initializeShape(shape, dataSlowestDirections); + indexer.initializeShape(paddedShape, dataSlowestDirections); } else { - indexer.initializeShape(shape, params.dataOrder); + indexer.initializeShape(paddedShape, params.dataOrder); } + } - return axom::Array(shape, m_allocatorId); + /*! + @brief Return an array for testing, dimension DIM, + sized and ordered according to params values. + */ + axom::Array makeArray() + { + assert(DIM <= params.shape.size()); + + axom::StackArray paddedShape; + axom::ArrayIndexer indexer; + getPaddedShapeAndIndexer(paddedShape, indexer); + + return axom::Array(paddedShape, indexer, m_allocatorId); } /*! @@ -754,34 +759,14 @@ class ArrayIndexerPerfTester { assert(DIM <= params.shape.size()); - ar = - axom::Array(params.paddedSize, params.paddedSize, m_allocatorId); - // ar.resize(params.paddedSize); - axom::StackArray paddedShape; - for(int d = 0; d < DIM; ++d) - { - paddedShape[d] = params.paddedShape[d]; - } - axom::ArrayIndexer indexer; - if(!params.dataSlowestDirections.empty()) - { - axom::StackArray dataSlowestDirections; - for(int d = 0; d < DIM; ++d) - { - dataSlowestDirections[d] = params.dataSlowestDirections[d]; - } - indexer.initializeShape(paddedShape, dataSlowestDirections); - } - else - { - indexer.initializeShape(paddedShape, params.dataOrder); - } + getPaddedShapeAndIndexer(paddedShape, indexer); + + ar = + axom::Array(params.paddedSize, params.paddedSize, m_allocatorId); view = axom::ArrayView(ar.data(), paddedShape, indexer.strides()); - - return; } /*! @@ -792,7 +777,7 @@ class ArrayIndexerPerfTester { // Use ArrayView to test, because Array doesn't support // arbitrary ordering (yet). -#if 0 +#if 1 axom::Array arrayMd = makeArray(); axom::ArrayView array = arrayMd.view(); #else @@ -864,12 +849,16 @@ class ArrayIndexerPerfTester // (Bring the data to the host so this test doesn't rely on RAJA.) auto hostAllocatorId = axom::detail::getAllocatorID< axom::execution_space::memory_space>(); +#if 1 + axom::Array hostArray(array, hostAllocatorId); +#else axom::Array hostArray(array1D, hostAllocatorId); +#endif axom::IndexType matchCount = 0; for(axom::IndexType i = 0; i < count; ++i) { - matchCount += - (hostArray[i] == Element_t(i * m_baseFactor) + m_testAccumulation); + matchCount += (hostArray.flatIndex(i) == + Element_t(i * m_baseFactor) + m_testAccumulation); } if(matchCount != params.realSize) { From f49b0727364386563049860dd698b64d36593691 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Sun, 24 Mar 2024 06:52:45 -0700 Subject: [PATCH 032/592] Add test and doxygen comments for new Array constructor. --- src/axom/core/Array.hpp | 14 ++++++- src/axom/core/tests/core_array_indexer.hpp | 49 ++++++++++++++++++++-- 2 files changed, 58 insertions(+), 5 deletions(-) diff --git a/src/axom/core/Array.hpp b/src/axom/core/Array.hpp index aa674ea87f..36bb29ada2 100644 --- a/src/axom/core/Array.hpp +++ b/src/axom/core/Array.hpp @@ -65,7 +65,7 @@ struct ArrayTraits> * * \see https://numpy.org/doc/stable/reference/generated/numpy.ndarray.html * - * Some constructors and initializers accomodate data ordering specifications. + * Some interfaces accomodate data ordering specifications. * Unless otherwise specified, data storage defaults to row-major. * * This class is meant to be a drop-in replacement for std::vector. @@ -166,9 +166,19 @@ class Array : public ArrayBase> int allocator_id = axom::detail::getAllocatorID()); /*! - \brief Construct Array with an ArrayIndexer to specify data ordering. + \brief Construct Array with data ordering specifications. \pre indexer.fastestStrideLength() == 1 + + Example of column-major Array: + Array ar( + shape, + ArrayIndexer{shape, ArrayStrideOrder::COLUMN}); + + Example of Array where j is fastest and k is slowest: + Array<3, int> ar( + shape, + ArrayIndexer{shape, {2, 0, 1}}); */ Array(const axom::StackArray& shape, const axom::ArrayIndexer& indexer, diff --git a/src/axom/core/tests/core_array_indexer.hpp b/src/axom/core/tests/core_array_indexer.hpp index 7e2f99b8c7..986056fef5 100644 --- a/src/axom/core/tests/core_array_indexer.hpp +++ b/src/axom/core/tests/core_array_indexer.hpp @@ -369,7 +369,7 @@ TEST(core_array_indexer, core_arbitrary_strides) } } -// Test column-major element offsets with Array's. +// Test row- and column-major element offsets with Array's. TEST(core_array_indexer, core_array_match) { // No test for 1D. Array provides no non-trivial interface to test. @@ -377,13 +377,33 @@ TEST(core_array_indexer, core_array_match) { constexpr int DIM = 2; axom::StackArray lengths {3, 2}; - axom::Array a(lengths); axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::ROW); + axom::Array a(lengths, ai); + axom::IndexType sequenceNum = 0; for(axom::IndexType i = 0; i < lengths[0]; ++i) { for(axom::IndexType j = 0; j < lengths[1]; ++j) { axom::StackArray indices {i, j}; + EXPECT_EQ(ai.toFlatIndex(indices), sequenceNum); + ++sequenceNum; + EXPECT_EQ(&a(i, j), &a.flatIndex(ai.toFlatIndex(indices))); + } + } + } + { + constexpr int DIM = 2; + axom::StackArray lengths {3, 2}; + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::COLUMN); + axom::Array a(lengths, ai); + axom::IndexType sequenceNum = 0; + for(axom::IndexType j = 0; j < lengths[1]; ++j) + { + for(axom::IndexType i = 0; i < lengths[0]; ++i) + { + axom::StackArray indices {i, j}; + EXPECT_EQ(ai.toFlatIndex(indices), sequenceNum); + ++sequenceNum; EXPECT_EQ(&a(i, j), &a.flatIndex(ai.toFlatIndex(indices))); } } @@ -391,8 +411,9 @@ TEST(core_array_indexer, core_array_match) { constexpr int DIM = 3; axom::StackArray lengths {5, 3, 2}; - axom::Array a(lengths); axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::ROW); + axom::Array a(lengths, ai); + axom::IndexType sequenceNum = 0; for(axom::IndexType i = 0; i < lengths[0]; ++i) { for(axom::IndexType j = 0; j < lengths[1]; ++j) @@ -400,6 +421,28 @@ TEST(core_array_indexer, core_array_match) for(axom::IndexType k = 0; k < lengths[2]; ++k) { axom::StackArray indices {i, j, k}; + EXPECT_EQ(ai.toFlatIndex(indices), sequenceNum); + ++sequenceNum; + EXPECT_EQ(&a(i, j, k), &a.flatIndex(ai.toFlatIndex(indices))); + } + } + } + } + { + constexpr int DIM = 3; + axom::StackArray lengths {5, 3, 2}; + axom::ArrayIndexer ai(lengths, axom::ArrayStrideOrder::COLUMN); + axom::Array a(lengths, ai); + axom::IndexType sequenceNum = 0; + for(axom::IndexType k = 0; k < lengths[2]; ++k) + { + for(axom::IndexType j = 0; j < lengths[1]; ++j) + { + for(axom::IndexType i = 0; i < lengths[0]; ++i) + { + axom::StackArray indices {i, j, k}; + EXPECT_EQ(ai.toFlatIndex(indices), sequenceNum); + ++sequenceNum; EXPECT_EQ(&a(i, j, k), &a.flatIndex(ai.toFlatIndex(indices))); } } From 1577cf7fd338c941542e3cdb4f25d0b61171c805 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 18:57:01 -0700 Subject: [PATCH 033/592] Updates uberenv vcpkg version to v2024.03.19 https://github.com/microsoft/vcpkg/releases/tag/2024.03.19 --- .uberenv_config.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.uberenv_config.json b/.uberenv_config.json index 7bad086557..bbcaae605b 100644 --- a/.uberenv_config.json +++ b/.uberenv_config.json @@ -9,7 +9,7 @@ "spack_packages_path": ["scripts/spack/radiuss-spack-configs/packages", "scripts/spack/packages"], "spack_concretizer": "clingo", "vcpkg_url": "https://github.com/microsoft/vcpkg", -"vcpkg_commit": "c8696863d371ab7f46e213d8f5ca923c4aef2a00", +"vcpkg_commit": "898b728edc5e0d12b50015f9cd18247c4257a3eb", "vcpkg_triplet": "x64-windows", "vcpkg_ports_path": "scripts/vcpkg_ports" } From 217b0cfa2a854678a774ce27d6ed85065be05824 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 18:57:50 -0700 Subject: [PATCH 034/592] Updates vcpkg blt port to v0.6.2 --- scripts/vcpkg_ports/blt/portfile.cmake | 4 ++-- scripts/vcpkg_ports/blt/vcpkg.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/vcpkg_ports/blt/portfile.cmake b/scripts/vcpkg_ports/blt/portfile.cmake index 66fa1c217b..5c1db7590f 100644 --- a/scripts/vcpkg_ports/blt/portfile.cmake +++ b/scripts/vcpkg_ports/blt/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO llnl/blt - REF v0.5.2 - SHA512 63e06282483985ae056e4a1557f249a9629130a4f5826c33ef3dbb7b8b1fc1760898fa89abd9734c3ab740aaf253e7284bad6aa342b92286ece810afe62350c2 + REF v0.6.2 + SHA512 ca38639dc2bcbd9814e11257ce8d4c8b61e082dcc86ba6ceb339a6e473191b2008158014f06325a1a15b71897d5d42b0f16261dcdd6164081e415b11a06f3ff4 HEAD_REF develop ) diff --git a/scripts/vcpkg_ports/blt/vcpkg.json b/scripts/vcpkg_ports/blt/vcpkg.json index fe1a59a015..6ffd883de4 100644 --- a/scripts/vcpkg_ports/blt/vcpkg.json +++ b/scripts/vcpkg_ports/blt/vcpkg.json @@ -1,6 +1,6 @@ { "name": "blt", - "version": "0.5.2", + "version": "0.6.2", "homepage": "https://github.com/llnl/blt", "description": "A streamlined CMake build system foundation for developing HPC software", "supports": "!uwp" From ec768f0eaccf1203c501bdc3599a1b77542ec64e Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 18:58:41 -0700 Subject: [PATCH 035/592] Updates vcpkg camp port to v2024.02.0 --- scripts/vcpkg_ports/camp/portfile.cmake | 4 ++-- scripts/vcpkg_ports/camp/vcpkg.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/vcpkg_ports/camp/portfile.cmake b/scripts/vcpkg_ports/camp/portfile.cmake index 05db292362..0198cdb488 100644 --- a/scripts/vcpkg_ports/camp/portfile.cmake +++ b/scripts/vcpkg_ports/camp/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO llnl/camp - REF v2022.03.2 - SHA512 d124c0e933f042525e9b48c21b93e7f4f634dfc0f87742e018a1c7de43ed6e30670d8f8e4ce369018a8e1c884b2b27f4755ee9f07a077820b2a3133546f6d622 + REF v2024.02.0 + SHA512 91ffb19a09f4df1f5d68acd02d8c63692e4aefdb85229a283c244f6f39b9932c8b56996c2bfa7535d58f9c6e7b325352d4cee3f8e9b2969f0a3a7daad643bf24 HEAD_REF develop ) diff --git a/scripts/vcpkg_ports/camp/vcpkg.json b/scripts/vcpkg_ports/camp/vcpkg.json index 232454316a..71f45b5a55 100644 --- a/scripts/vcpkg_ports/camp/vcpkg.json +++ b/scripts/vcpkg_ports/camp/vcpkg.json @@ -1,6 +1,6 @@ { "name": "camp", - "version-string": "2022.03.2", + "version-string": "2024.02.0", "homepage": "https://github.com/llnl/camp", "description": "Compiler agnostic metaprogramming library", "dependencies": [ From 97a5dd26a935fbbf93c7c0af92acf28c7f172a8a Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 18:59:09 -0700 Subject: [PATCH 036/592] Updates vcpkg raja port to v2024.02.0 --- scripts/vcpkg_ports/raja/portfile.cmake | 6 +++--- scripts/vcpkg_ports/raja/vcpkg.json | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/scripts/vcpkg_ports/raja/portfile.cmake b/scripts/vcpkg_ports/raja/portfile.cmake index 7d56a4be2b..0b13a25e6d 100644 --- a/scripts/vcpkg_ports/raja/portfile.cmake +++ b/scripts/vcpkg_ports/raja/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO llnl/raja - REF v2022.03.1 - SHA512 36e2f59e0f4c3e8fcc07a21fc1eeec701c2be147db9395efedad9aa87bcc078e84a5334698c0fb3e2fbd3670c2eaacdebcd63c4caaa3721a3900ff02dfb44ad7 + REF v2024.02.0 + SHA512 4955405764a9ccdccf3956fb7a273fec7c9fef4a2c95b2bc7c50a0aeb5a9fc7ba9f4bedf0cef51edee5035e083fdd68e530ba48ce48e93d851514da86867388f HEAD_REF develop ) @@ -71,7 +71,7 @@ else() # Update paths to dlls in CMake config files foreach(_c debug release) - set(_f ${_config_dir}/RAJA-${_c}.cmake) + set(_f ${_config_dir}/RAJATargets-${_c}.cmake) file(READ ${_f} _fdata) string(REPLACE "lib/RAJA.dll" "bin/RAJA.dll" _fdata "${_fdata}") file(WRITE ${_f} "${_fdata}") diff --git a/scripts/vcpkg_ports/raja/vcpkg.json b/scripts/vcpkg_ports/raja/vcpkg.json index 0162007b69..abd298b11d 100644 --- a/scripts/vcpkg_ports/raja/vcpkg.json +++ b/scripts/vcpkg_ports/raja/vcpkg.json @@ -1,6 +1,6 @@ { "name": "raja", - "version-string": "2022.03.1", + "version-string": "2024.02.0", "homepage": "https://github.com/llnl/raja", "description": "RAJA Performance Portability Layer (C++)", "dependencies": [ From fba7dcf07dffde6fb826ef46c69a756566f07f21 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:00:25 -0700 Subject: [PATCH 037/592] Updates vcpkg umpire port to v2024.02.0 Note: This depends on an external `fmt` --- scripts/vcpkg_ports/umpire/portfile.cmake | 37 ++--------------------- scripts/vcpkg_ports/umpire/vcpkg.json | 5 +-- 2 files changed, 6 insertions(+), 36 deletions(-) diff --git a/scripts/vcpkg_ports/umpire/portfile.cmake b/scripts/vcpkg_ports/umpire/portfile.cmake index 5fffdcccb3..2c4c9e4ae2 100644 --- a/scripts/vcpkg_ports/umpire/portfile.cmake +++ b/scripts/vcpkg_ports/umpire/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO llnl/umpire - REF v2022.10.0 - SHA512 38bc74c360ee73e8ee04fbb652cff160551597a46af587f8c9da755cef591ae4add66d9af038a0a14722653d135007b01b37d3addf4d64ca0d1ed129e0461428 + REF v2024.02.0 + SHA512 d3428dbf05f23036f660b97402be9395520de9d85a91ee16dfd28a571448e2b05b1036cd9a4cf52ef7b529a88b8cd983c4a58009136218b5ca5ae958b0dd5b2f HEAD_REF develop ) @@ -25,6 +25,7 @@ vcpkg_configure_cmake( OPTIONS -DBLT_SOURCE_DIR:PATH=${CURRENT_INSTALLED_DIR}/share/blt -Dcamp_DIR:PATH=${CURRENT_INSTALLED_DIR} + -Dfmt_DIR:PATH=${CURRENT_INSTALLED_DIR} -DENABLE_ALL_WARNINGS:BOOL=OFF -DENABLE_WARNINGS_AS_ERRORS:BOOL=OFF -DENABLE_COVERAGE:BOOL=OFF @@ -58,38 +59,6 @@ message(STATUS "CURRENT_PACKAGES_DIR -- ${CURRENT_PACKAGES_DIR}") if(VCPKG_LIBRARY_LINKAGE STREQUAL static) # Note: Not tested file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) -else() - set(_config_dir "${CURRENT_PACKAGES_DIR}/share/umpire") - - # Move dll files from lib to bin directory - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin ) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin ) - - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/umpire.dll - ${CURRENT_PACKAGES_DIR}/bin/umpire.dll) - - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/umpire.dll - ${CURRENT_PACKAGES_DIR}/debug/bin/umpire.dll) - - # Update paths to dlls in CMake config files - foreach(_c debug release) - set(_f ${_config_dir}/umpire-targets-${_c}.cmake) - file(READ ${_f} _fdata) - string(REPLACE "lib/umpire.dll" "bin/umpire.dll" _fdata "${_fdata}") - file(WRITE ${_f} "${_fdata}") - endforeach() - - # Fix erroneous "include" path appended as system include directories - set(_f ${_config_dir}/umpire-targets.cmake) - set(_pattern "INTERFACE_SYSTEM_INCLUDE_DIRECTORIES \"include.*") - file(STRINGS ${_f} _file_lines) - file(WRITE ${_f} "") - foreach(_line IN LISTS _file_lines) - #message(STATUS "\t\tRegex input: ${_line}") - string(REGEX REPLACE ${_pattern} "" _stripped "${_line}") - #message(STATUS "\t\tRegex output: ${_stripped}") - file(APPEND ${_f} "${_stripped}\n") - endforeach() endif() diff --git a/scripts/vcpkg_ports/umpire/vcpkg.json b/scripts/vcpkg_ports/umpire/vcpkg.json index e1616e17a7..d1c6be3d7f 100644 --- a/scripts/vcpkg_ports/umpire/vcpkg.json +++ b/scripts/vcpkg_ports/umpire/vcpkg.json @@ -1,11 +1,12 @@ { "name": "umpire", - "version-string": "2022.10.0", + "version-string": "2024.02.0", "homepage": "https://github.com/llnl/umpire", "description": "An application-focused API for memory management on NUMA and GPU architectures", "dependencies": [ "blt", - "camp" + "camp", + "fmt" ], "features": { "openmp": { From f132b88c4cfba16238c77992688510236157b7db Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:00:49 -0700 Subject: [PATCH 038/592] Updates vcpkg conduit port to v0.9.1 --- scripts/vcpkg_ports/conduit/portfile.cmake | 4 ++-- scripts/vcpkg_ports/conduit/vcpkg.json | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/scripts/vcpkg_ports/conduit/portfile.cmake b/scripts/vcpkg_ports/conduit/portfile.cmake index 8ff2f42a23..d6a12339f3 100644 --- a/scripts/vcpkg_ports/conduit/portfile.cmake +++ b/scripts/vcpkg_ports/conduit/portfile.cmake @@ -1,8 +1,8 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO llnl/conduit - REF v0.8.6 - SHA512 b85c15bfa2687ba47f53c1ca269af72a1a31161848047e653bdc722a07f2682623640758cb5e83565ee655eca7cc993921c656208e6084513843927d76c5db66 + REF v0.9.1 + SHA512 fc9449952ea3521e9f76e58f13ccfa2e9a8bdc513f25b675af2d4984dd9ba8e7bed7e1d27e539a69dfda3d4fd48ea6d009ecb2e593d5b059a738da2f9b4310c9 HEAD_REF develop PATCHES "./setup_deps_vcpkg_triplet.patch" diff --git a/scripts/vcpkg_ports/conduit/vcpkg.json b/scripts/vcpkg_ports/conduit/vcpkg.json index e9b8730591..2716599c8d 100644 --- a/scripts/vcpkg_ports/conduit/vcpkg.json +++ b/scripts/vcpkg_ports/conduit/vcpkg.json @@ -1,6 +1,6 @@ { "name": "conduit", - "version": "0.8.6", + "version": "0.9.1", "homepage": "https://github.com/llnl/conduit", "description": "Simplified Data Exchange for HPC Simulations", "dependencies": [ From f13eb7e6a2bed899ad641d7a529c6e3e0d1141a5 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:02:33 -0700 Subject: [PATCH 039/592] Updates vcpkg mfem port to v4.6 --- .../vcpkg_ports/mfem/export-extern-vars.patch | 293 ------------------ scripts/vcpkg_ports/mfem/portfile.cmake | 23 +- scripts/vcpkg_ports/mfem/vcpkg.json | 2 +- 3 files changed, 3 insertions(+), 315 deletions(-) delete mode 100644 scripts/vcpkg_ports/mfem/export-extern-vars.patch diff --git a/scripts/vcpkg_ports/mfem/export-extern-vars.patch b/scripts/vcpkg_ports/mfem/export-extern-vars.patch deleted file mode 100644 index dc20e4bc2c..0000000000 --- a/scripts/vcpkg_ports/mfem/export-extern-vars.patch +++ /dev/null @@ -1,293 +0,0 @@ -diff --git a/CMakeLists.txt b/CMakeLists.txt -index 7b159ff..e178687 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -529,6 +529,12 @@ endif() - set_target_properties(mfem PROPERTIES VERSION "${mfem_VERSION}") - set_target_properties(mfem PROPERTIES SOVERSION "${mfem_VERSION}") - -+# Generate export symbols and add to list of header files -+include(GenerateExportHeader) -+set(_export_header ${CMAKE_CURRENT_SOURCE_DIR}/mfem_export.h) -+generate_export_header(mfem EXPORT_FILE_NAME ${_export_header}) -+list(APPEND ${HEADERS} ${_export_header}) -+ - # If building out-of-source, define MFEM_CONFIG_FILE to point to the config file - # inside the build directory. - if (NOT ("${PROJECT_SOURCE_DIR}" STREQUAL "${PROJECT_BINARY_DIR}")) -@@ -669,7 +675,7 @@ foreach(Header mfem.hpp mfem-performance.hpp) - install(FILES ${PROJECT_BINARY_DIR}/InstallHeaders/${Header} - DESTINATION ${INSTALL_INCLUDE_DIR}) - endforeach() --install(FILES ${MASTER_HEADERS} DESTINATION ${INSTALL_INCLUDE_DIR}/mfem) -+install(FILES ${MASTER_HEADERS} mfem_export.h DESTINATION ${INSTALL_INCLUDE_DIR}/mfem) - - # Install the headers; currently, the miniapps headers are excluded - install(DIRECTORY ${MFEM_SOURCE_DIRS} -diff --git a/fem/fe.hpp b/fem/fe.hpp -index 5de8ee5..3738007 100644 ---- a/fem/fe.hpp -+++ b/fem/fe.hpp -@@ -13,6 +13,7 @@ - #define MFEM_FE - - #include "../config/config.hpp" -+#include "../mfem_export.h" - #include "../general/array.hpp" - #include "../linalg/linalg.hpp" - -diff --git a/fem/fe/fe_base.hpp b/fem/fe/fe_base.hpp -index 0d6d440..1774791 100644 ---- a/fem/fe/fe_base.hpp -+++ b/fem/fe/fe_base.hpp -@@ -1146,7 +1146,7 @@ public: - ~Poly_1D(); - }; - --extern Poly_1D poly1d; -+MFEM_EXPORT extern Poly_1D poly1d; - - - /// An element defined as an ND tensor product of 1D elements on a segment, -diff --git a/fem/geom.hpp b/fem/geom.hpp -index bdcf6cc..599a28c 100644 ---- a/fem/geom.hpp -+++ b/fem/geom.hpp -@@ -13,6 +13,7 @@ - #define MFEM_GEOM - - #include "../config/config.hpp" -+#include "../mfem_export.h" - #include "../linalg/densemat.hpp" - #include "intrules.hpp" - -@@ -126,7 +127,7 @@ public: - int NumBdr(int GeomType) { return NumBdrArray[GeomType]; } - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 0; - static const int NumVert = 1; -@@ -136,7 +137,7 @@ template <> struct Geometry::Constants - static const int InvOrient[NumOrient]; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 1; - static const int NumVert = 2; -@@ -148,7 +149,7 @@ template <> struct Geometry::Constants - static const int InvOrient[NumOrient]; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 2; - static const int NumVert = 3; -@@ -174,7 +175,7 @@ template <> struct Geometry::Constants - static const int InvOrient[NumOrient]; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 2; - static const int NumVert = 4; -@@ -194,7 +195,7 @@ template <> struct Geometry::Constants - static const int InvOrient[NumOrient]; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 3; - static const int NumVert = 4; -@@ -216,7 +217,7 @@ template <> struct Geometry::Constants - static const int InvOrient[NumOrient]; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 3; - static const int NumVert = 8; -@@ -234,7 +235,7 @@ template <> struct Geometry::Constants - }; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 3; - static const int NumVert = 6; -@@ -252,7 +253,7 @@ template <> struct Geometry::Constants - }; - }; - --template <> struct Geometry::Constants -+template <> struct MFEM_EXPORT Geometry::Constants - { - static const int Dimension = 3; - static const int NumVert = 5; -@@ -272,7 +273,7 @@ template <> struct Geometry::Constants - - // Defined in fe.cpp to ensure construction after 'mfem::TriangleFE' and - // `mfem::TetrahedronFE`. --extern Geometry Geometries; -+MFEM_EXPORT extern Geometry Geometries; - - - class RefinedGeometry -@@ -321,7 +322,7 @@ public: - ~GeometryRefiner(); - }; - --extern GeometryRefiner GlobGeometryRefiner; -+MFEM_EXPORT extern GeometryRefiner GlobGeometryRefiner; - - } - -diff --git a/fem/intrules.hpp b/fem/intrules.hpp -index 3545701..fd68a9a 100644 ---- a/fem/intrules.hpp -+++ b/fem/intrules.hpp -@@ -13,6 +13,7 @@ - #define MFEM_INTRULES - - #include "../config/config.hpp" -+#include "../mfem_export.h" - #include "../general/array.hpp" - - namespace mfem -@@ -376,10 +377,10 @@ public: - }; - - /// A global object with all integration rules (defined in intrules.cpp) --extern IntegrationRules IntRules; -+MFEM_EXPORT extern IntegrationRules IntRules; - - /// A global object with all refined integration rules --extern IntegrationRules RefinedIntRules; -+MFEM_EXPORT extern IntegrationRules RefinedIntRules; - - } - -diff --git a/general/device.cpp b/general/device.cpp -index 0f8d607..858473a 100644 ---- a/general/device.cpp -+++ b/general/device.cpp -@@ -61,7 +61,6 @@ static const char *backend_name[Backend::NUM_BACKENDS] = - - - // Initialize the unique global Device variable. --Device Device::device_singleton; - bool Device::device_env = false; - bool Device::mem_host_env = false; - bool Device::mem_device_env = false; -@@ -177,6 +176,12 @@ Device::~Device() - Get().device_mem_class = MemoryClass::HOST; - } - -+Device& Device::Get() -+{ -+ static Device device_singleton; -+ return device_singleton; -+} -+ - void Device::Configure(const std::string &device, const int device_id) - { - // If a device was configured via the environment, skip the configuration, -diff --git a/general/device.hpp b/general/device.hpp -index 456d3cc..e2b75b3 100644 ---- a/general/device.hpp -+++ b/general/device.hpp -@@ -12,6 +12,8 @@ - #ifndef MFEM_DEVICE_HPP - #define MFEM_DEVICE_HPP - -+#include "../config/config.hpp" -+#include "../mfem_export.h" - #include "globals.hpp" - #include "mem_manager.hpp" - -@@ -125,7 +127,6 @@ private: - enum MODES {SEQUENTIAL, ACCELERATED}; - - static bool device_env, mem_host_env, mem_device_env, mem_types_set; -- static Device device_singleton; - - MODES mode = Device::SEQUENTIAL; - int dev = 0; ///< Device ID of the configured device. -@@ -147,7 +148,9 @@ private: - char *device_option = NULL; - Device(Device const&); - void operator=(Device const&); -- static Device& Get() { return device_singleton; } -+ -+ /// Return unique global Device variable -+ static Device& Get(); - - /// Setup switcher based on configuration settings - void Setup(const int device_id = 0); -diff --git a/general/globals.hpp b/general/globals.hpp -index c21b869..d860fbf 100644 ---- a/general/globals.hpp -+++ b/general/globals.hpp -@@ -13,6 +13,7 @@ - #define MFEM_GLOBALS_HPP - - #include "../config/config.hpp" -+#include "../mfem_export.h" - #include - - #ifdef MFEM_USE_MPI -@@ -63,12 +64,12 @@ public: - /** @brief Global stream used by the library for standard output. Initially it - uses the same std::streambuf as std::cout, however that can be changed. - @sa OutStream. */ --extern OutStream out; -+MFEM_EXPORT extern OutStream out; - /** @brief Global stream used by the library for standard error output. - Initially it uses the same std::streambuf as std::cerr, however that can be - changed. - @sa OutStream. */ --extern OutStream err; -+MFEM_EXPORT extern OutStream err; - - - /** @brief Construct a string of the form "" where the -diff --git a/general/mem_manager.hpp b/general/mem_manager.hpp -index d73bb18..7d3337d 100644 ---- a/general/mem_manager.hpp -+++ b/general/mem_manager.hpp -@@ -12,6 +12,8 @@ - #ifndef MFEM_MEM_MANAGER_HPP - #define MFEM_MEM_MANAGER_HPP - -+#include "../config/config.hpp" -+#include "../mfem_export.h" - #include "globals.hpp" - #include "error.hpp" - #include // std::memcpy -@@ -553,7 +555,7 @@ private: - /** The MFEM memory manager class. Host-side pointers are inserted into this - manager which keeps track of the associated device pointer, and where the - data currently resides. */ --class MemoryManager -+class MFEM_EXPORT MemoryManager - { - private: - -@@ -1226,7 +1228,7 @@ inline int Memory::CompareHostAndDevice(int size) const - - - /// The (single) global memory manager object --extern MemoryManager mm; -+extern MFEM_EXPORT MemoryManager mm; - - } // namespace mfem - diff --git a/scripts/vcpkg_ports/mfem/portfile.cmake b/scripts/vcpkg_ports/mfem/portfile.cmake index 4cb2f65506..e42a639d04 100644 --- a/scripts/vcpkg_ports/mfem/portfile.cmake +++ b/scripts/vcpkg_ports/mfem/portfile.cmake @@ -1,10 +1,9 @@ vcpkg_from_github( OUT_SOURCE_PATH SOURCE_PATH REPO mfem/mfem - REF v4.5 - SHA512 86336441b180dde8392c59b82b78cb27073c40f00ebab0e3caefaaf9b0e418b077d43122da0f8b78f93e0e6b3b026d5adc16ecce02f38cdc9362e1dc2760e38a + REF v4.6 + SHA512 8805b4993b6f11abe7ac7dda59d0ddb2e0f5f6b09c2b9c57e665f481cd9bd6b669e63621b38989f70dc8ae38c42a7e8c4e10a1d87a4ac29d53ddd95ce79db0ae HEAD_REF master - PATCHES "./export-extern-vars.patch" ) set(_is_shared TRUE) @@ -45,24 +44,6 @@ file(REMOVE_RECURSE "${_config_dir}/mfem") if(VCPKG_LIBRARY_LINKAGE STREQUAL static) # Note: Not tested file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin) -else() - # Move dll files from lib to bin directory - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/bin ) - file(MAKE_DIRECTORY ${CURRENT_PACKAGES_DIR}/debug/bin ) - - file(RENAME ${CURRENT_PACKAGES_DIR}/lib/mfem.dll - ${CURRENT_PACKAGES_DIR}/bin/mfem.dll) - - file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/mfem.dll - ${CURRENT_PACKAGES_DIR}/debug/bin/mfem.dll) - - # Update paths to dlls in CMake config files - foreach(_c debug release) - set(_f ${_config_dir}/MFEMTargets-${_c}.cmake) - file(READ ${_f} _fdata) - string(REPLACE "lib/mfem.dll" "bin/mfem.dll" _fdata "${_fdata}") - file(WRITE ${_f} "${_fdata}") - endforeach() endif() diff --git a/scripts/vcpkg_ports/mfem/vcpkg.json b/scripts/vcpkg_ports/mfem/vcpkg.json index 0cbb831039..9843f2dd7d 100644 --- a/scripts/vcpkg_ports/mfem/vcpkg.json +++ b/scripts/vcpkg_ports/mfem/vcpkg.json @@ -1,6 +1,6 @@ { "name": "mfem", - "version": "4.5", + "version": "4.6", "homepage": "http://mfem.org", "description": "Lightweight, general, scalable C++ library for finite element methods", "supports": "!uwp" From 1e507a4d352814baeec3936065965a6f0226a4ab Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:04:58 -0700 Subject: [PATCH 040/592] In axom's vcpkg port, remove umpire from axom's default-features Umpire's external `fmt` was causing a link ambiguity with axom's built-in fmt. Looks like axom will need to support an external fmt to build against umpire on Windows. --- scripts/vcpkg_ports/axom/vcpkg.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/scripts/vcpkg_ports/axom/vcpkg.json b/scripts/vcpkg_ports/axom/vcpkg.json index f3fb50eee5..8d44b31094 100644 --- a/scripts/vcpkg_ports/axom/vcpkg.json +++ b/scripts/vcpkg_ports/axom/vcpkg.json @@ -9,8 +9,7 @@ "lua", "mfem", "openmp", - "raja", - "umpire" + "raja" ], "features": { "conduit": { From e2797cdb1d74df91df0f1d6f34848cae1118f38a Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:06:58 -0700 Subject: [PATCH 041/592] Fixes msvc compilation error w/ MarchingCubes implementation msvc doesn't appear to like preprocessing symbols (e.g. `#else`) within an `AXOM_PERF_MARK_SECTION` macro. --- src/axom/quest/detail/MarchingCubesImpl.hpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/axom/quest/detail/MarchingCubesImpl.hpp b/src/axom/quest/detail/MarchingCubesImpl.hpp index eb46623177..db926b9ba8 100644 --- a/src/axom/quest/detail/MarchingCubesImpl.hpp +++ b/src/axom/quest/detail/MarchingCubesImpl.hpp @@ -419,19 +419,22 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase });); m_scannedFlags.fill(0, 1, 0); +#if defined(AXOM_USE_RAJA) AXOM_PERF_MARK_SECTION( "MarchingCubesImpl::scanCrossings:scan_flags", -#if defined(AXOM_USE_RAJA) RAJA::inclusive_scan( RAJA::make_span(m_crossingFlags.data(), parentCellCount), RAJA::make_span(m_scannedFlags.data() + 1, parentCellCount), RAJA::operators::plus {}); + ); #else + AXOM_PERF_MARK_SECTION( + "MarchingCubesImpl::scanCrossings:scan_flags", for(axom::IndexType n = 0; n < parentCellCount; ++n) { m_scannedFlags[n + 1] = m_scannedFlags[n] + m_crossingFlags[n]; } -#endif ); +#endif axom::copy(&m_crossingCount, m_scannedFlags.data() + m_scannedFlags.size() - 1, @@ -468,19 +471,22 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase // m_firstFacetIds.fill(0, 1, 0); +#if defined(AXOM_USE_RAJA) AXOM_PERF_MARK_SECTION( "MarchingCubesImpl::scanCrossings:scan_incrs", -#if defined(AXOM_USE_RAJA) RAJA::inclusive_scan( RAJA::make_span(m_facetIncrs.data(), m_crossingCount), RAJA::make_span(m_firstFacetIds.data() + 1, m_crossingCount), RAJA::operators::plus {}); + ); #else + AXOM_PERF_MARK_SECTION( + "MarchingCubesImpl::scanCrossings:scan_incrs", for(axom::IndexType n = 0; n < parentCellCount; ++n) { m_firstFacetIds[n + 1] = m_firstFacetIds[n] + m_facetIncrs[n]; } -#endif ); +#endif axom::copy(&m_facetCount, m_firstFacetIds.data() + m_firstFacetIds.size() - 1, From c992d4cdb7e1bb656dedb17aa1848c5b497028d9 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:07:39 -0700 Subject: [PATCH 042/592] Minor: Fixes some documentation typos and formatting --- src/axom/primal/operators/winding_number.hpp | 13 +++++-------- src/axom/primal/tests/primal_winding_number.cpp | 3 +-- 2 files changed, 6 insertions(+), 10 deletions(-) diff --git a/src/axom/primal/operators/winding_number.hpp b/src/axom/primal/operators/winding_number.hpp index 8773a66c93..eb954a1556 100644 --- a/src/axom/primal/operators/winding_number.hpp +++ b/src/axom/primal/operators/winding_number.hpp @@ -42,7 +42,7 @@ namespace axom namespace primal { //@{ -//! @name Winding number operations between 2D points and primatives +//! @name Winding number operations between 2D points and primitives /* * \brief Compute the winding number with respect to a 2D line segment @@ -201,8 +201,7 @@ int winding_number(const Point& R, * * \param [in] query The query point to test * \param [in] c The Bezier curve object - * \param [in] edge_tol The physical distance level at which objects are - * considered indistinguishable + * \param [in] edge_tol The physical distance level at which objects are considered indistinguishable * \param [in] EPS Miscellaneous numerical tolerance level for nonphysical distances * * Computes the winding number using a recursive, bisection algorithm, @@ -224,8 +223,7 @@ double winding_number(const Point& q, * * \param [in] query The query point to test * \param [in] cpoly The CurvedPolygon object - * \param [in] edge_tol The physical distance level at which objects are - * considered indistinguishable + * \param [in] edge_tol The physical distance level at which objects are considered indistinguishable * \param [in] EPS Miscellaneous numerical tolerance level for nonphysical distances * * Computes the winding number by summing the winding number for each curve @@ -251,7 +249,7 @@ double winding_number(const Point& q, //@} //@{ -//! @name Winding number operations between 3D points and primatives +//! @name Winding number operations between 3D points and primitives /*! * \brief Computes the solid angle winding number for a 3D triangle @@ -259,8 +257,7 @@ double winding_number(const Point& q, * \param [in] query The query point to test * \param [in] tri The 3D Triangle object * \param [in] isOnFace An optional return parameter if the point is on the triangle - * \param [in] edge_tol The physical distance level at which objects are - * considered indistinguishable + * \param [in] edge_tol The physical distance level at which objects are considered indistinguishable * \param [in] EPS Miscellaneous numerical tolerance level for nonphysical distances * * Computes the winding number using the formula from diff --git a/src/axom/primal/tests/primal_winding_number.cpp b/src/axom/primal/tests/primal_winding_number.cpp index 488b85a15f..d2eaa66798 100644 --- a/src/axom/primal/tests/primal_winding_number.cpp +++ b/src/axom/primal/tests/primal_winding_number.cpp @@ -21,8 +21,7 @@ namespace primal = axom::primal; TEST(primal_winding_number, simple_cases) { - // Test points that are straightforwardly "inside" or "outside" - // the closed shape + // Test points that are straightforwardly "inside" or "outside" the closed shape using Point2D = primal::Point; using Triangle = primal::Triangle; using Bezier = primal::BezierCurve; From 46f4e79441500de5c0684978bbfa34f39f7c7936 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 19:42:34 -0700 Subject: [PATCH 043/592] Fix vcpkg port of camp Occasionally, the license file cannot be found. Check for its existence before moving/renaming it rather than fail the TPL build. --- scripts/vcpkg_ports/camp/portfile.cmake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scripts/vcpkg_ports/camp/portfile.cmake b/scripts/vcpkg_ports/camp/portfile.cmake index 0198cdb488..f100d5fa65 100644 --- a/scripts/vcpkg_ports/camp/portfile.cmake +++ b/scripts/vcpkg_ports/camp/portfile.cmake @@ -82,4 +82,9 @@ else() endif() # Put the license file where vcpkg expects it -file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/camp RENAME copyright) +# Note: LICENSE occasionally cannot be found +if(EXISTS "${SOURCE_PATH}/LICENSE") + file(INSTALL ${SOURCE_PATH}/LICENSE + DESTINATION ${CURRENT_PACKAGES_DIR}/share/camp + RENAME copyright) +endif() From 102357a09edb7dc728aeae77dd0a2487bd07f464 Mon Sep 17 00:00:00 2001 From: format-robot Date: Sun, 24 Mar 2024 20:00:19 -0700 Subject: [PATCH 044/592] Format --- src/axom/quest/detail/MarchingCubesImpl.hpp | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/axom/quest/detail/MarchingCubesImpl.hpp b/src/axom/quest/detail/MarchingCubesImpl.hpp index db926b9ba8..82ca58fa0d 100644 --- a/src/axom/quest/detail/MarchingCubesImpl.hpp +++ b/src/axom/quest/detail/MarchingCubesImpl.hpp @@ -425,15 +425,13 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase RAJA::inclusive_scan( RAJA::make_span(m_crossingFlags.data(), parentCellCount), RAJA::make_span(m_scannedFlags.data() + 1, parentCellCount), - RAJA::operators::plus {}); - ); + RAJA::operators::plus {});); #else AXOM_PERF_MARK_SECTION( "MarchingCubesImpl::scanCrossings:scan_flags", for(axom::IndexType n = 0; n < parentCellCount; ++n) { m_scannedFlags[n + 1] = m_scannedFlags[n] + m_crossingFlags[n]; - } - ); + }); #endif axom::copy(&m_crossingCount, @@ -477,15 +475,13 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase RAJA::inclusive_scan( RAJA::make_span(m_facetIncrs.data(), m_crossingCount), RAJA::make_span(m_firstFacetIds.data() + 1, m_crossingCount), - RAJA::operators::plus {}); - ); + RAJA::operators::plus {});); #else AXOM_PERF_MARK_SECTION( "MarchingCubesImpl::scanCrossings:scan_incrs", for(axom::IndexType n = 0; n < parentCellCount; ++n) { m_firstFacetIds[n + 1] = m_firstFacetIds[n] + m_facetIncrs[n]; - } - ); + }); #endif axom::copy(&m_facetCount, From 616b34f3f38b16bf947091e89d7c9b78d3aaf872 Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 24 Mar 2024 21:06:33 -0700 Subject: [PATCH 045/592] Updates RELEASE-NOTES --- RELEASE-NOTES.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index 8e6d1f08ab..a0b6450396 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -19,6 +19,13 @@ The Axom project release numbers follow [Semantic Versioning](http://semver.org/ ## [Unreleased] - Release date yyyy-mm-dd +### Changed +- Upgrades `vcpkg` usage for axom's automated Windows builds to its + [2024.03.19 release](https://github.com/microsoft/vcpkg/releases/tag/2024.03.19). + Also updates vcpkg port versions for axom dependencies. Temporarily removes `umpire` + from axom's default dependencies on Windows due to incompatibility between umpire's + external `fmt` and axom's vendored copy. + ## [Version 0.9.0] - Release date 2024-03-19 ### Added From 7afeedaceacf400bffe469bf724b2cd67759047a Mon Sep 17 00:00:00 2001 From: Brian Manh Hien Han Date: Wed, 6 Mar 2024 15:22:56 -0800 Subject: [PATCH 046/592] Add HIP intrinsics --- src/axom/core/utilities/BitUtilities.hpp | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/axom/core/utilities/BitUtilities.hpp b/src/axom/core/utilities/BitUtilities.hpp index 2ed603983f..2c7e5a7eec 100644 --- a/src/axom/core/utilities/BitUtilities.hpp +++ b/src/axom/core/utilities/BitUtilities.hpp @@ -19,12 +19,16 @@ #include "axom/core/Types.hpp" // CUDA intrinsics: https://docs.nvidia.com/cuda/cuda-math-api/group__CUDA__MATH__INTRINSIC__INT.html -// TODO: Support HIP intrinsics (https://rocm.docs.amd.com/projects/HIP/en/latest/reference/kernel_language.html) +// HIP intrinsics: https://rocm.docs.amd.com/projects/HIP/en/latest/reference/kernel_language.html // Check for and setup defines for platform-specific intrinsics // Note: `__GNUC__` is defined for the gnu, clang and intel compilers #if defined(AXOM_USE_CUDA) // Intrinsics included implicitly + +#elif defined(AXOM_USE_HIP) + #include + #elif defined(_WIN64) && (_MSC_VER >= 1600) #define _AXOM_CORE_USE_INTRINSICS_MSVC #include @@ -89,6 +93,8 @@ AXOM_HOST_DEVICE inline int countr_zero(std::uint64_t word) noexcept /* clang-format off */ #if defined(__CUDA_ARCH__) && defined(AXOM_USE_CUDA) return word != std::uint64_t(0) ? __ffsll(word) - 1 : 64; +#elif defined(__HIP_DEVICE_COMPILE__) && defined(AXOM_USE_HIP) + return word != std::uint64_t(0) ? __ffsll(static_cast(word)) - 1 : 64; #elif defined(_AXOM_CORE_USE_INTRINSICS_MSVC) unsigned long cnt; return _BitScanForward64(&cnt, word) ? cnt : 64; @@ -127,6 +133,9 @@ AXOM_HOST_DEVICE inline int popcount(std::uint64_t word) noexcept #if defined(__CUDA_ARCH__) && defined(AXOM_USE_CUDA) // Use CUDA intrinsic for popcount return __popcll(word); +#elif defined(__HIP_DEVICE_COMPILE__) && defined(AXOM_USE_HIP) + // Use HIP intrinsic for popcount + return __popcll(word); #elif defined(_AXOM_CORE_USE_INTRINSICS_MSVC) return __popcnt64(word); #elif defined(_AXOM_CORE_USE_INTRINSICS_GCC) || defined(_AXOM_CORE_USE_INTRINSICS_PPC) @@ -166,6 +175,9 @@ AXOM_HOST_DEVICE inline std::int32_t countl_zero(std::int32_t word) noexcept #if defined(__CUDA_ARCH__) && defined(AXOM_USE_CUDA) // Use CUDA intrinsic for count leading zeros return __clz(word); +#elif defined(__HIP_DEVICE_COMPILE__) && defined(AXOM_USE_HIP) + // Use HIP intrinsic for count leading zeros + return __clz(word); #elif defined(_AXOM_CORE_USE_INTRINSICS_MSVC) unsigned long cnt; return _BitScanReverse(&cnt, word) ? 31 - cnt : 32; @@ -194,4 +206,4 @@ AXOM_HOST_DEVICE inline std::int32_t countl_zero(std::int32_t word) noexcept #undef _AXOM_CORE_USE_INTRINSICS_GCC #undef _AXOM_CORE_USE_INTRINSICS_PPC -#endif // AXOM_BIT_UTILITIES_HPP +#endif // AXOM_BIT_UTILITIES_HPP \ No newline at end of file From ba26ab6f90b0057abd21eb47fdd9697bbd44e395 Mon Sep 17 00:00:00 2001 From: Brian Manh Hien Han Date: Wed, 6 Mar 2024 15:24:01 -0800 Subject: [PATCH 047/592] Modify hex and bounding box initialization in quest candidates example to be on device --- .../examples/quest_candidates_example.cpp | 231 ++++++++++++------ 1 file changed, 152 insertions(+), 79 deletions(-) diff --git a/src/axom/quest/examples/quest_candidates_example.cpp b/src/axom/quest/examples/quest_candidates_example.cpp index 932fe5a494..cfba4b2f3e 100644 --- a/src/axom/quest/examples/quest_candidates_example.cpp +++ b/src/axom/quest/examples/quest_candidates_example.cpp @@ -248,9 +248,21 @@ struct HexMesh BoundingBox m_meshBoundingBox; }; +template HexMesh loadBlueprintHexMesh(const std::string& mesh_path, bool verboseOutput = false) { + using HexArray = axom::Array; + using BBoxArray = axom::Array; + constexpr bool on_device = axom::execution_space::onDevice(); + + // Get ids of necessary allocators + const int host_allocator = + axom::getUmpireResourceAllocatorID(umpire::resource::Host); + const int kernel_allocator = on_device + ? axom::getUmpireResourceAllocatorID(umpire::resource::Device) + : axom::execution_space::allocatorID(); + HexMesh hexMesh; // Load Blueprint mesh into Conduit node @@ -298,31 +310,90 @@ HexMesh loadBlueprintHexMesh(const std::string& mesh_path, double* y_vals = n_load[0]["coordsets/coords/values/y"].value(); double* z_vals = n_load[0]["coordsets/coords/values/z"].value(); - const int numCells = connectivity_size / HEX_OFFSET; - hexMesh.m_hexes.reserve(numCells); - HexMesh::Hexahedron hex; - axom::Array hexPoints(HEX_OFFSET); + // Move xyz values onto device + axom::Array x_vals_arr_h(num_nodes, num_nodes, host_allocator); + axom::Array y_vals_arr_h(num_nodes, num_nodes, host_allocator); + axom::Array z_vals_arr_h(num_nodes, num_nodes, host_allocator); - for(int i = 0; i < numCells; ++i) + for(int i = 0; i < num_nodes; i++) { - for(int j = 0; j < HEX_OFFSET; j++) - { - int offset = i * HEX_OFFSET; - hexPoints[j] = HexMesh::Point({x_vals[connectivity[offset + j]], - y_vals[connectivity[offset + j]], - z_vals[connectivity[offset + j]]}); - } - hex = HexMesh::Hexahedron(hexPoints); - hexMesh.m_hexes.emplace_back(hex); + x_vals_arr_h[i] = x_vals[i]; + y_vals_arr_h[i] = y_vals[i]; + z_vals_arr_h[i] = z_vals[i]; } - // compute and store hex bounding boxes and mesh bounding box - hexMesh.m_hexBoundingBoxes.reserve(numCells); - for(const auto& hex : hexMesh.hexes()) + axom::Array x_vals_arr_d = on_device + ? axom::Array(x_vals_arr_h, kernel_allocator) + : axom::Array(); + auto x_vals_view = on_device ? x_vals_arr_d.view() : x_vals_arr_h.view(); + + axom::Array y_vals_arr_d = on_device + ? axom::Array(y_vals_arr_h, kernel_allocator) + : axom::Array(); + auto y_vals_view = on_device ? y_vals_arr_d.view() : y_vals_arr_h.view(); + + axom::Array z_vals_arr_d = on_device + ? axom::Array(z_vals_arr_h, kernel_allocator) + : axom::Array(); + auto z_vals_view = on_device ? z_vals_arr_d.view() : z_vals_arr_h.view(); + + // Move connectivity information onto device + axom::Array connectivity_arr_h(connectivity_size, + connectivity_size, + host_allocator); + + for(int i = 0; i < connectivity_size; i++) { - hexMesh.m_hexBoundingBoxes.emplace_back( - axom::primal::compute_bounding_box(hex)); - hexMesh.m_meshBoundingBox.addBox(hexMesh.m_hexBoundingBoxes.back()); + connectivity_arr_h[i] = connectivity[i]; + } + + axom::Array connectivity_arr_d = on_device + ? axom::Array(connectivity_arr_h, kernel_allocator) + : axom::Array(); + auto connectivity_view = + on_device ? connectivity_arr_d.view() : connectivity_arr_h.view(); + + // Initialize hex elements and bounding boxes + const int numCells = connectivity_size / HEX_OFFSET; + + hexMesh.m_hexes = HexArray(numCells, numCells, kernel_allocator); + auto m_hexes_v = (hexMesh.m_hexes).view(); + + hexMesh.m_hexBoundingBoxes = BBoxArray(numCells, numCells, kernel_allocator); + auto m_hexBoundingBoxes_v = (hexMesh.m_hexBoundingBoxes).view(); + + axom::for_all( + numCells, + AXOM_LAMBDA(axom::IndexType icell) { + HexMesh::Hexahedron hex; + HexMesh::Point hexPoints[HEX_OFFSET]; + for(int j = 0; j < HEX_OFFSET; j++) + { + int offset = icell * HEX_OFFSET; + hexPoints[j] = + HexMesh::Point({x_vals_view[connectivity_view[offset + j]], + y_vals_view[connectivity_view[offset + j]], + z_vals_view[connectivity_view[offset + j]]}); + } + hex = HexMesh::Hexahedron(hexPoints[0], + hexPoints[1], + hexPoints[2], + hexPoints[3], + hexPoints[4], + hexPoints[5], + hexPoints[6], + hexPoints[7]); + m_hexes_v[icell] = hex; + m_hexBoundingBoxes_v[icell] = axom::primal::compute_bounding_box(hex); + }); + + // Initialize mesh's bounding box on the host + BBoxArray hexBoundingBoxes_h = on_device + ? BBoxArray(hexMesh.m_hexBoundingBoxes, host_allocator) + : hexMesh.m_hexBoundingBoxes; + for(const auto& hexbb : hexBoundingBoxes_h) + { + hexMesh.m_meshBoundingBox.addBox(hexbb); } SLIC_INFO( @@ -382,8 +453,6 @@ axom::Array findCandidatesBVH(const HexMesh& insertMesh, SLIC_INFO("Running BVH candidates algorithm in execution Space: " << axom::execution_space::name()); - using HexArray = axom::Array; - using BBoxArray = axom::Array; using IndexArray = axom::Array; constexpr bool on_device = axom::execution_space::onDevice(); @@ -396,31 +465,9 @@ axom::Array findCandidatesBVH(const HexMesh& insertMesh, ? axom::getUmpireResourceAllocatorID(umpire::resource::Device) : axom::execution_space::allocatorID(); - // Copy the insert-BVH hexes to the device, if necessary - // Either way, insert_hexes_v will be a view w/ data in the correct space - auto& insert_hexes_h = insertMesh.hexes(); - HexArray insert_hexes_d = - on_device ? HexArray(insert_hexes_h, kernel_allocator) : HexArray(); - - // Copy the insert-BVH bboxes to the device, if necessary - // Either way, insert_bbox_v will be a view w/ data in the correct space - auto& insert_bbox_h = insertMesh.hexBoundingBoxes(); - BBoxArray insert_bbox_d = - on_device ? BBoxArray(insert_bbox_h, kernel_allocator) : BBoxArray(); - auto insert_bbox_v = on_device ? insert_bbox_d.view() : insert_bbox_h.view(); - - // Copy the query-BVH hexes to the device, if necessary - // Either way, query_hexes_v will be a view w/ data in the correct space - auto& query_hexes_h = queryMesh.hexes(); - HexArray query_hexes_d = - on_device ? HexArray(query_hexes_h, kernel_allocator) : HexArray(); - - // Copy the query-BVH bboxes to the device, if necessary - // Either way, bbox_v will be a view w/ data in the correct space - auto& query_bbox_h = queryMesh.hexBoundingBoxes(); - BBoxArray query_bbox_d = - on_device ? BBoxArray(query_bbox_h, kernel_allocator) : BBoxArray(); - auto query_bbox_v = on_device ? query_bbox_d.view() : query_bbox_h.view(); + // Get the insert and query bounding boxes + auto insert_bbox_v = (insertMesh.hexBoundingBoxes()).view(); + auto query_bbox_v = (queryMesh.hexBoundingBoxes()).view(); // Initialize a BVH tree over the insert mesh bounding boxes axom::spin::BVH<3, ExecSpace, double> bvh; @@ -527,8 +574,6 @@ axom::Array findCandidatesImplicit(const HexMesh& insertMesh, SLIC_INFO("Running Implicit Grid candidates algorithm in execution Space: " << axom::execution_space::name()); - using HexArray = axom::Array; - using BBoxArray = axom::Array; using IndexArray = axom::Array; constexpr bool on_device = axom::execution_space::onDevice(); @@ -539,35 +584,13 @@ axom::Array findCandidatesImplicit(const HexMesh& insertMesh, ? axom::getUmpireResourceAllocatorID(umpire::resource::Device) : axom::execution_space::allocatorID(); - // Copy the insert hexes to the device, if necessary - // Either way, insert_hexes_v will be a view w/ data in the correct space - auto& insert_hexes_h = insertMesh.hexes(); - HexArray insert_hexes_d = - on_device ? HexArray(insert_hexes_h, kernel_allocator) : HexArray(); - - // Copy the insert bboxes to the device, if necessary - // Either way, insert_bbox_v will be a view w/ data in the correct space - auto& insert_bbox_h = insertMesh.hexBoundingBoxes(); - BBoxArray insert_bbox_d = - on_device ? BBoxArray(insert_bbox_h, kernel_allocator) : BBoxArray(); - auto insert_bbox_v = on_device ? insert_bbox_d.view() : insert_bbox_h.view(); + // Get the insert and query bounding boxes + auto insert_bbox_v = (insertMesh.hexBoundingBoxes()).view(); + auto query_bbox_v = (queryMesh.hexBoundingBoxes()).view(); // Bounding box of entire insert mesh HexMesh::BoundingBox insert_mesh_bbox_h = insertMesh.meshBoundingBox(); - // Copy the query hexes to the device, if necessary - // Either way, query_hexes_v will be a view w/ data in the correct space - auto& query_hexes_h = queryMesh.hexes(); - HexArray query_hexes_d = - on_device ? HexArray(query_hexes_h, kernel_allocator) : HexArray(); - - // Copy the query bboxes to the device, if necessary - // Either way, bbox_v will be a view w/ data in the correct space - auto& query_bbox_h = queryMesh.hexBoundingBoxes(); - BBoxArray query_bbox_d = - on_device ? BBoxArray(query_bbox_h, kernel_allocator) : BBoxArray(); - auto query_bbox_v = on_device ? query_bbox_d.view() : query_bbox_h.view(); - // If given resolution is less than one, use the cube root of the // number of hexes if(resolution < 1) @@ -749,15 +772,65 @@ int main(int argc, char** argv) SLIC_INFO(axom::fmt::format("Reading Blueprint file to insert: '{}'...\n", params.mesh_file_first)); - HexMesh insert_mesh = - loadBlueprintHexMesh(params.mesh_file_first, params.isVerbose()); + HexMesh insert_mesh; + + switch(params.policy) + { +#ifdef AXOM_RUNTIME_POLICY_USE_OPENMP + case RuntimePolicy::omp: + insert_mesh = + loadBlueprintHexMesh(params.mesh_file_first, params.isVerbose()); + break; +#endif +#ifdef AXOM_RUNTIME_POLICY_USE_CUDA + case RuntimePolicy::cuda: + insert_mesh = loadBlueprintHexMesh(params.mesh_file_first, + params.isVerbose()); + break; +#endif +#ifdef AXOM_RUNTIME_POLICY_USE_HIP + case RuntimePolicy::hip: + insert_mesh = + loadBlueprintHexMesh(params.mesh_file_first, params.isVerbose()); + break; +#endif + default: // RuntimePolicy::seq + insert_mesh = + loadBlueprintHexMesh(params.mesh_file_first, params.isVerbose()); + break; + } // Load Blueprint mesh for querying spatial index SLIC_INFO(axom::fmt::format("Reading Blueprint file to query: '{}'...\n", params.mesh_file_second)); - HexMesh query_mesh = - loadBlueprintHexMesh(params.mesh_file_second, params.isVerbose()); + HexMesh query_mesh; + + switch(params.policy) + { +#ifdef AXOM_RUNTIME_POLICY_USE_OPENMP + case RuntimePolicy::omp: + query_mesh = loadBlueprintHexMesh(params.mesh_file_second, + params.isVerbose()); + break; +#endif +#ifdef AXOM_RUNTIME_POLICY_USE_CUDA + case RuntimePolicy::cuda: + query_mesh = loadBlueprintHexMesh(params.mesh_file_second, + params.isVerbose()); + break; +#endif +#ifdef AXOM_RUNTIME_POLICY_USE_HIP + case RuntimePolicy::hip: + query_mesh = loadBlueprintHexMesh(params.mesh_file_second, + params.isVerbose()); + break; +#endif + default: // RuntimePolicy::seq + query_mesh = loadBlueprintHexMesh(params.mesh_file_second, + params.isVerbose()); + break; + } timer.stop(); @@ -864,4 +937,4 @@ int main(int argc, char** argv) } return 0; -} +} \ No newline at end of file From a777e589a5387be4cdf2d4c18d2c946259bc048b Mon Sep 17 00:00:00 2001 From: Brian Manh Hien Han Date: Mon, 11 Mar 2024 09:59:44 -0700 Subject: [PATCH 048/592] Spacings --- src/axom/core/utilities/BitUtilities.hpp | 2 +- src/axom/quest/examples/quest_candidates_example.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/axom/core/utilities/BitUtilities.hpp b/src/axom/core/utilities/BitUtilities.hpp index 2c7e5a7eec..e75b5f23c2 100644 --- a/src/axom/core/utilities/BitUtilities.hpp +++ b/src/axom/core/utilities/BitUtilities.hpp @@ -206,4 +206,4 @@ AXOM_HOST_DEVICE inline std::int32_t countl_zero(std::int32_t word) noexcept #undef _AXOM_CORE_USE_INTRINSICS_GCC #undef _AXOM_CORE_USE_INTRINSICS_PPC -#endif // AXOM_BIT_UTILITIES_HPP \ No newline at end of file +#endif // AXOM_BIT_UTILITIES_HPP diff --git a/src/axom/quest/examples/quest_candidates_example.cpp b/src/axom/quest/examples/quest_candidates_example.cpp index cfba4b2f3e..173179d170 100644 --- a/src/axom/quest/examples/quest_candidates_example.cpp +++ b/src/axom/quest/examples/quest_candidates_example.cpp @@ -937,4 +937,4 @@ int main(int argc, char** argv) } return 0; -} \ No newline at end of file +} From 40e50bb02ee69a22ef80ea6e2000f9a614e5b392 Mon Sep 17 00:00:00 2001 From: Brian Manh Hien Han Date: Wed, 20 Mar 2024 13:44:44 -0700 Subject: [PATCH 049/592] Apply refactor suggestion - removes a host copy --- .../examples/quest_candidates_example.cpp | 79 ++++++++----------- 1 file changed, 33 insertions(+), 46 deletions(-) diff --git a/src/axom/quest/examples/quest_candidates_example.cpp b/src/axom/quest/examples/quest_candidates_example.cpp index 173179d170..2ec37b59af 100644 --- a/src/axom/quest/examples/quest_candidates_example.cpp +++ b/src/axom/quest/examples/quest_candidates_example.cpp @@ -304,54 +304,41 @@ HexMesh loadBlueprintHexMesh(const std::string& mesh_path, } // extract hexes into an axom::Array - int* connectivity = n_load[0]["topologies/topo/elements/connectivity"].value(); - - double* x_vals = n_load[0]["coordsets/coords/values/x"].value(); - double* y_vals = n_load[0]["coordsets/coords/values/y"].value(); - double* z_vals = n_load[0]["coordsets/coords/values/z"].value(); + auto x_vals_h = + axom::ArrayView(n_load[0]["coordsets/coords/values/x"].value(), + num_nodes); + auto y_vals_h = + axom::ArrayView(n_load[0]["coordsets/coords/values/y"].value(), + num_nodes); + auto z_vals_h = + axom::ArrayView(n_load[0]["coordsets/coords/values/z"].value(), + num_nodes); // Move xyz values onto device - axom::Array x_vals_arr_h(num_nodes, num_nodes, host_allocator); - axom::Array y_vals_arr_h(num_nodes, num_nodes, host_allocator); - axom::Array z_vals_arr_h(num_nodes, num_nodes, host_allocator); - - for(int i = 0; i < num_nodes; i++) - { - x_vals_arr_h[i] = x_vals[i]; - y_vals_arr_h[i] = y_vals[i]; - z_vals_arr_h[i] = z_vals[i]; - } - - axom::Array x_vals_arr_d = on_device - ? axom::Array(x_vals_arr_h, kernel_allocator) + axom::Array x_vals_d = on_device + ? axom::Array(x_vals_h, kernel_allocator) : axom::Array(); - auto x_vals_view = on_device ? x_vals_arr_d.view() : x_vals_arr_h.view(); + auto x_vals_view = on_device ? x_vals_d.view() : x_vals_h; - axom::Array y_vals_arr_d = on_device - ? axom::Array(y_vals_arr_h, kernel_allocator) + axom::Array y_vals_d = on_device + ? axom::Array(y_vals_h, kernel_allocator) : axom::Array(); - auto y_vals_view = on_device ? y_vals_arr_d.view() : y_vals_arr_h.view(); + auto y_vals_view = on_device ? y_vals_d.view() : y_vals_h; - axom::Array z_vals_arr_d = on_device - ? axom::Array(z_vals_arr_h, kernel_allocator) + axom::Array z_vals_d = on_device + ? axom::Array(z_vals_h, kernel_allocator) : axom::Array(); - auto z_vals_view = on_device ? z_vals_arr_d.view() : z_vals_arr_h.view(); + auto z_vals_view = on_device ? z_vals_d.view() : z_vals_h; // Move connectivity information onto device - axom::Array connectivity_arr_h(connectivity_size, - connectivity_size, - host_allocator); - - for(int i = 0; i < connectivity_size; i++) - { - connectivity_arr_h[i] = connectivity[i]; - } + auto connectivity_h = axom::ArrayView( + n_load[0]["topologies/topo/elements/connectivity"].value(), + connectivity_size); - axom::Array connectivity_arr_d = on_device - ? axom::Array(connectivity_arr_h, kernel_allocator) + axom::Array connectivity_d = on_device + ? axom::Array(connectivity_h, kernel_allocator) : axom::Array(); - auto connectivity_view = - on_device ? connectivity_arr_d.view() : connectivity_arr_h.view(); + auto connectivity_view = on_device ? connectivity_d.view() : connectivity_h; // Initialize hex elements and bounding boxes const int numCells = connectivity_size / HEX_OFFSET; @@ -407,21 +394,21 @@ HexMesh loadBlueprintHexMesh(const std::string& mesh_path, // Append mesh nodes for(int i = 0; i < num_nodes; i++) { - mesh->appendNode(x_vals[i], y_vals[i], z_vals[i]); + mesh->appendNode(x_vals_h[i], y_vals_h[i], z_vals_h[i]); } // Append mesh cells for(int i = 0; i < numCells; i++) { const axom::IndexType cell[] = { - connectivity[i * HEX_OFFSET], - connectivity[(i * HEX_OFFSET) + 1], - connectivity[(i * HEX_OFFSET) + 2], - connectivity[(i * HEX_OFFSET) + 3], - connectivity[(i * HEX_OFFSET) + 4], - connectivity[(i * HEX_OFFSET) + 5], - connectivity[(i * HEX_OFFSET) + 6], - connectivity[(i * HEX_OFFSET) + 7], + connectivity_h[i * HEX_OFFSET], + connectivity_h[(i * HEX_OFFSET) + 1], + connectivity_h[(i * HEX_OFFSET) + 2], + connectivity_h[(i * HEX_OFFSET) + 3], + connectivity_h[(i * HEX_OFFSET) + 4], + connectivity_h[(i * HEX_OFFSET) + 5], + connectivity_h[(i * HEX_OFFSET) + 6], + connectivity_h[(i * HEX_OFFSET) + 7], }; mesh->appendCell(cell); From 8d36699022d8715fb8b4d3c0b5be5abb9b5a6190 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Mon, 25 Mar 2024 15:17:24 -0700 Subject: [PATCH 050/592] Templatize incoming data so user doesn't have to convert manually. --- src/axom/core/ArrayIndexer.hpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index 6ab91c9a0d..6c3ba54702 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -63,8 +63,9 @@ class ArrayIndexer @param [in] fastestStrideLength Stride in the fastest direction. */ + template ArrayIndexer(const axom::StackArray& shape, - const axom::StackArray& slowestDirs, + const axom::StackArray& slowestDirs, int fastestStrideLength = 1) { initializeShape(shape, slowestDirs, fastestStrideLength); @@ -176,13 +177,17 @@ class ArrayIndexer @param [in] fastestStrideLength Stride in the fastest direction. */ + template inline AXOM_HOST_DEVICE void initializeShape( const axom::StackArray& shape, - const axom::StackArray& slowestDirs, + const axom::StackArray& slowestDirs, int fastestStrideLength = 1) { assert(isPermutation(slowestDirs)); - m_slowestDirs = slowestDirs; + for(int d = 0; d < DIM; ++d) + { + m_slowestDirs[d] = slowestDirs[d]; + } m_strides[m_slowestDirs[DIM - 1]] = fastestStrideLength; for(int d = DIM - 2; d >= 0; --d) { @@ -309,7 +314,8 @@ class ArrayIndexer } //!@brief Whether a StackArray represents a permutation. - bool isPermutation(const axom::StackArray& v) + template + bool isPermutation(const axom::StackArray& v) { // v is a permutation if all its values are unique and in [0, DIM). axom::StackArray found; From df1b132ed20ea1205fe4b363b8ec8493cd17b35c Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Mon, 25 Mar 2024 17:36:02 -0700 Subject: [PATCH 051/592] Fix comments and make constructors a bit more succinct. --- src/axom/core/ArrayBase.hpp | 20 ++++++++++---------- src/axom/core/ArrayIndexer.hpp | 18 ------------------ 2 files changed, 10 insertions(+), 28 deletions(-) diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index c08bbada83..5d0f5581e8 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -173,9 +173,9 @@ class ArrayBase AXOM_HOST_DEVICE ArrayBase(const StackArray& shape, int min_stride = 1) : m_shape {shape} - , m_indexer(shape, ArrayStrideOrder::ROW) + , m_indexer(shape, ArrayStrideOrder::ROW, min_stride) + , m_minStride(m_indexer.fastestStrideLength()) { - updateStrides(min_stride); } /*! @@ -183,15 +183,18 @@ class ArrayBase * with an indexer to specify data ordering. * * \param [in] shape Array size in each direction. - * \param [in] indexer Info on how data is laid out in memory. + * \param [in] indexer Model indexer, specifying + * the array stride order and minimum stride. + * + * The object is constructed with the given shape. + * The partial shape information in \c indexer is not used. */ AXOM_HOST_DEVICE ArrayBase(const StackArray& shape, const ArrayIndexer& indexer) : m_shape {shape} - , m_indexer(indexer) + , m_indexer(shape, indexer.slowestDirs(), indexer.fastestStrideLength()) , m_minStride(m_indexer.fastestStrideLength()) { - assert(indexer.fitsShape(shape)); // Ensure compatible shape and strides. } /*! @@ -203,7 +206,6 @@ class ArrayBase AXOM_HOST_DEVICE ArrayBase(const StackArray& shape, const StackArray& stride) : m_shape {shape} - , m_indexer() { m_indexer.initializeStrides(stride, ArrayStrideOrder::ROW); m_minStride = m_indexer.fastestStrideLength(); @@ -222,8 +224,8 @@ class ArrayBase const ArrayBase::type, DIM, OtherArrayType>& other) : m_shape(other.shape()) , m_indexer(other.indexer()) + , m_minStride(m_indexer.fastestStrideLength()) { - m_minStride = m_indexer.fastestStrideLength(); } /// \overload @@ -232,8 +234,8 @@ class ArrayBase const ArrayBase::type, DIM, OtherArrayType>& other) : m_shape(other.shape()) , m_indexer(other.indexer()) + , m_minStride(m_indexer.fastestStrideLength()) { - m_minStride = m_indexer.fastestStrideLength(); } /*! @@ -419,8 +421,6 @@ class ArrayBase /*! * \brief Updates the internal striding information to a row-major format * Intended to be called after shape is updated. - * In the future, this class will support different striding schemes (e.g., column-major) - * and/or user-provided striding */ AXOM_HOST_DEVICE void updateStrides(int min_stride = 1) { diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index 6c3ba54702..ebda562d88 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -338,24 +338,6 @@ class ArrayIndexer return true; } - /*! - @brief Whether object's fit with a given array shape. - - This object can index arrays with the given shape if - the index ordering and fastest stride also match the - array's data ordering and fastest stride. - */ - bool fitsShape(const axom::StackArray& shape) const - { - bool fits = true; - for(int d = DIM - 1; d > 0; --d) - { - fits &= m_strides[m_slowestDirs[d]] * shape[m_slowestDirs[d]] == - m_strides[m_slowestDirs[d - 1]]; - } - return fits; - } - /*! @brief Get the stride order (row- or column-major, or something else). From 3a4584e034d5558756a506157e571627ec8631ef Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Tue, 26 Mar 2024 08:52:24 -0700 Subject: [PATCH 052/592] Reformat. --- src/axom/core/ArrayBase.hpp | 12 ++++-------- src/axom/core/ArrayIndexer.hpp | 6 +++--- 2 files changed, 7 insertions(+), 11 deletions(-) diff --git a/src/axom/core/ArrayBase.hpp b/src/axom/core/ArrayBase.hpp index 5d0f5581e8..c06ca91ff7 100644 --- a/src/axom/core/ArrayBase.hpp +++ b/src/axom/core/ArrayBase.hpp @@ -175,8 +175,7 @@ class ArrayBase : m_shape {shape} , m_indexer(shape, ArrayStrideOrder::ROW, min_stride) , m_minStride(m_indexer.fastestStrideLength()) - { - } + { } /*! * \brief Parameterized constructor that sets up the array shape, @@ -194,8 +193,7 @@ class ArrayBase : m_shape {shape} , m_indexer(shape, indexer.slowestDirs(), indexer.fastestStrideLength()) , m_minStride(m_indexer.fastestStrideLength()) - { - } + { } /*! * \brief Parameterized constructor that sets up the array shape and stride. @@ -225,8 +223,7 @@ class ArrayBase : m_shape(other.shape()) , m_indexer(other.indexer()) , m_minStride(m_indexer.fastestStrideLength()) - { - } + { } /// \overload template @@ -235,8 +232,7 @@ class ArrayBase : m_shape(other.shape()) , m_indexer(other.indexer()) , m_minStride(m_indexer.fastestStrideLength()) - { - } + { } /*! * \brief Dimension-aware accessor; with N=DIM indices, returns a reference diff --git a/src/axom/core/ArrayIndexer.hpp b/src/axom/core/ArrayIndexer.hpp index ebda562d88..47a63ebbd3 100644 --- a/src/axom/core/ArrayIndexer.hpp +++ b/src/axom/core/ArrayIndexer.hpp @@ -63,7 +63,7 @@ class ArrayIndexer @param [in] fastestStrideLength Stride in the fastest direction. */ - template + template ArrayIndexer(const axom::StackArray& shape, const axom::StackArray& slowestDirs, int fastestStrideLength = 1) @@ -177,7 +177,7 @@ class ArrayIndexer @param [in] fastestStrideLength Stride in the fastest direction. */ - template + template inline AXOM_HOST_DEVICE void initializeShape( const axom::StackArray& shape, const axom::StackArray& slowestDirs, @@ -314,7 +314,7 @@ class ArrayIndexer } //!@brief Whether a StackArray represents a permutation. - template + template bool isPermutation(const axom::StackArray& v) { // v is a permutation if all its values are unique and in [0, DIM). From fc2967ca559aba5c9830adf764a8ea635ffbf835 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 13 Jan 2023 12:05:01 -0800 Subject: [PATCH 053/592] Adds `+profiling` variant to axom's spack package for caliper and adiak dependency Modeled after serac's implementation. --- scripts/spack/packages/axom/package.py | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/scripts/spack/packages/axom/package.py b/scripts/spack/packages/axom/package.py index cd85f139a0..69e6c0b28e 100644 --- a/scripts/spack/packages/axom/package.py +++ b/scripts/spack/packages/axom/package.py @@ -82,6 +82,9 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): variant("mpi", default=True, description="Build MPI support") variant("openmp", default=True, description="Turn on OpenMP support.") + variant('profiling', default=False, + description='Build with hooks for Adiak/Caliper performance analysis') + variant("c2c", default=False, description="Build with c2c") variant("mfem", default=False, description="Build with mfem") @@ -136,18 +139,35 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): depends_on("raja@:0.13.0", when="@:0.5.0") depends_on("raja~openmp", when="~openmp") depends_on("raja+openmp", when="+openmp") + depends_on("raja+cuda", when="+cuda") + + with when("+profiling"): + depends_on("adiak@0.2.2") + depends_on("caliper@2.8.0+adiak~papi") + + depends_on("caliper+cuda", when="+cuda") + depends_on("caliper~cuda", when="~cuda") + + for dep in ["adiak", "caliper"]: + depends_on("{0}+mpi".format(dep), when="+mpi") + depends_on("{0}~mpi".format(dep), when="~mpi") + depends_on("{0}+shared".format(dep), when="+profiling+shared") + depends_on("{0}~shared".format(dep), when="+profiling~shared") + for val in CudaPackage.cuda_arch_values: raja_cuda = "raja +cuda cuda_arch={0}".format(val) umpire_cuda = "umpire +cuda cuda_arch={0}".format(val) depends_on(raja_cuda, when="+{0}".format(raja_cuda)) depends_on(umpire_cuda, when="+{0}".format(umpire_cuda)) + depends_on("caliper cuda_arch={0}".format(val), when="+profiling cuda_arch={0}".format(val)) for val in ROCmPackage.amdgpu_targets: raja_rocm = "raja +rocm amdgpu_target={0}".format(val) umpire_rocm = "umpire +rocm amdgpu_target={0}".format(val) depends_on(raja_rocm, when="+{0}".format(raja_rocm)) depends_on(umpire_rocm, when="+{0}".format(umpire_rocm)) + depends_on("caliper amdgpu_target={0}".format(val), when="+profiling amdgpu_target={0}".format(val)) depends_on("rocprim", when="+rocm") @@ -467,7 +487,7 @@ def initconfig_package_entries(self): entries.append(cmake_cache_path("CONDUIT_DIR", conduit_dir)) # optional tpls - for dep in ("c2c", "mfem", "hdf5", "lua", "raja", "umpire"): + for dep in ("adiak", "caliper", "c2c", "mfem", "hdf5", "lua", "raja", "umpire"): if "+%s" % dep in spec: dep_dir = get_spec_path(spec, dep, path_replacements) entries.append(cmake_cache_path("%s_DIR" % dep.upper(), dep_dir)) From dc9875304fffe86fa23173ecc2e44b686c5f7058 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 13 Jan 2023 12:48:06 -0800 Subject: [PATCH 054/592] Import caliper and adiak into axom when present --- .../thirdparty/SetupAxomThirdParty.cmake | 52 +++++++++++++++++++ 1 file changed, 52 insertions(+) diff --git a/src/cmake/thirdparty/SetupAxomThirdParty.cmake b/src/cmake/thirdparty/SetupAxomThirdParty.cmake index 54e7a12012..5239494617 100644 --- a/src/cmake/thirdparty/SetupAxomThirdParty.cmake +++ b/src/cmake/thirdparty/SetupAxomThirdParty.cmake @@ -186,6 +186,58 @@ if(TARGET mfem) endif() +#------------------------------------------------------------------------------ +# Adiak +#------------------------------------------------------------------------------ +if(ADIAK_DIR) + axom_assert_is_directory(VARIABLE_NAME ADIAK_DIR) + find_dependency(adiak REQUIRED + PATHS "${ADIAK_DIR}/lib/cmake/adiak" + "${ADIAK_DIR}") + + message(STATUS "Checking for expected adiak target 'adiak::adiak'") + if (NOT TARGET adiak::adiak) + message(FATAL_ERROR "adiak failed to load: ${ADIAK_DIR}") + endif() + + # TODO: CHECK + # Set the include directories as adiak does not completely configure the "adiak" target + set_target_properties(adiak::adiak PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES ${adiak_INCLUDE_DIRS}) + + message(STATUS "adiak loaded: ${ADIAK_DIR}") + set(ADIAK_FOUND TRUE) +else() + message(STATUS "adiak support is OFF") + set(ADIAK_FOUND FALSE) +endif() + +if(CALIPER_DIR) + # Extra handling for caliper's cuda dependencies + if(AXOM_ENABLE_CUDA) + find_package(CUDAToolkit REQUIRED) + endif() + + find_dependency(caliper REQUIRED + PATHS "${CALIPER_DIR}/share/cmake/caliper" + "${CALIPER_DIR}") + + message(STATUS "Checking for expected caliper target 'caliper'") + if (NOT TARGET caliper) + message(FATAL_ERROR "caliper failed to load: ${CALIPER_DIR}") + endif() + + # Set the include directories as caliper does not completely configure the "adiak" target + set_target_properties(caliper PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES ${caliper_INCLUDE_PATH}) + + message(STATUS "caliper loaded: ${CALIPER_DIR}") + set(CALIPER_FOUND TRUE) +else() + message(STATUS "aliper support is OFF") + set(CALIPER_FOUND FALSE) +endif() + #------------------------------------------------------------------------------ # Shroud - Generates C/Fortran/Python bindings #------------------------------------------------------------------------------ From f43f09ba9414429769971638323df12af450b59c Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 13 Jan 2023 13:19:01 -0800 Subject: [PATCH 055/592] Add caliper and adiak to axom/config.hpp and axom's CMake export --- src/axom/config.hpp.in | 2 ++ src/cmake/AxomConfig.cmake | 2 +- src/cmake/axom-config.cmake.in | 24 ++++++++++++++++++++++++ 3 files changed, 27 insertions(+), 1 deletion(-) diff --git a/src/axom/config.hpp.in b/src/axom/config.hpp.in index e2f278e54f..998e0c8fe1 100644 --- a/src/axom/config.hpp.in +++ b/src/axom/config.hpp.in @@ -62,7 +62,9 @@ /* * Compiler defines for libraries (built-in and third party) */ +#cmakedefine AXOM_USE_ADIAK #cmakedefine AXOM_USE_C2C +#cmakedefine AXOM_USE_CALIPER #cmakedefine AXOM_USE_CLI11 #cmakedefine AXOM_USE_CONDUIT #cmakedefine AXOM_USE_CUDA diff --git a/src/cmake/AxomConfig.cmake b/src/cmake/AxomConfig.cmake index 6d4865b544..015906d691 100644 --- a/src/cmake/AxomConfig.cmake +++ b/src/cmake/AxomConfig.cmake @@ -13,7 +13,7 @@ message(STATUS "Configuring Axom version ${AXOM_VERSION_FULL}") ## Add a definition to the generated config file for each library dependency ## (optional and built-in) that we might need to know about in the code. We ## check for vars of the form _FOUND or ENABLE_ -set(TPL_DEPS C2C CAMP CLI11 CONDUIT CUDA FMT HIP HDF5 LUA MFEM MPI OPENMP RAJA SCR SOL SPARSEHASH UMPIRE ) +set(TPL_DEPS ADIAK C2C CALIPER CAMP CLI11 CONDUIT CUDA FMT HIP HDF5 LUA MFEM MPI OPENMP RAJA SCR SOL SPARSEHASH UMPIRE ) foreach(dep ${TPL_DEPS}) if( ${dep}_FOUND OR ENABLE_${dep} ) set(AXOM_USE_${dep} TRUE ) diff --git a/src/cmake/axom-config.cmake.in b/src/cmake/axom-config.cmake.in index e8f47bfb78..8e5ddf6e74 100644 --- a/src/cmake/axom-config.cmake.in +++ b/src/cmake/axom-config.cmake.in @@ -56,7 +56,9 @@ if(NOT AXOM_FOUND) set(AXOM_USE_SPARSEHASH "@AXOM_USE_SPARSEHASH@") # Axom external TPLs + set(AXOM_USE_ADIAK "@AXOM_USE_ADIAK@") set(AXOM_USE_C2C "@AXOM_USE_C2C@") + set(AXOM_USE_CALIPER "@AXOM_USE_CALIPER@") set(AXOM_USE_CAMP "@AXOM_USE_CAMP@") set(AXOM_USE_CONDUIT "@AXOM_USE_CONDUIT@") set(AXOM_USE_HDF5 "@AXOM_USE_HDF5@") @@ -80,12 +82,34 @@ if(NOT AXOM_FOUND) set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIB64_PATHS TRUE) set_property(GLOBAL PROPERTY FIND_LIBRARY_USE_LIBX32_PATHS TRUE) + # adiak + if(AXOM_USE_ADIAK) + set(AXOM_ADIAK_DIR "@ADIAK_DIR@") + if(NOT ADIAK_DIR) + set(ADIAK_DIR ${AXOM_ADIAK_DIR}) + endif() + find_dependency(adiak REQUIRED + PATHS "${ADIAK_DIR}" + "${ADIAK_DIR}/lib/cmake/adiak") + endif() + # c2c if(AXOM_USE_C2C) set(AXOM_C2C_DIR "@C2C_DIR@") # Note: Targets not currently imported endif() + # caliper + if(AXOM_USE_CALIPER) + set(AXOM_CALIPER_DIR "@CALIPER_DIR@") + if(NOT CALIPER_DIR) + set(CALIPER_DIR ${AXOM_CALIPER_DIR}) + endif() + find_dependency(caliper REQUIRED + PATHS "${CALIPER_DIR}" + "${CALIPER_DIR}/share/cmake/caliper") + endif() + # camp if(AXOM_USE_CAMP) set(AXOM_CAMP_DIR "@CAMP_DIR@") From f285404bbfb4f8a6bcffe09ca8939f25c3ff6473 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 13 Jan 2023 15:08:46 -0800 Subject: [PATCH 056/592] Adds a smoke test for caliper --- src/thirdparty/tests/CMakeLists.txt | 21 +++++++++ src/thirdparty/tests/caliper_smoke.cpp | 61 ++++++++++++++++++++++++++ 2 files changed, 82 insertions(+) create mode 100644 src/thirdparty/tests/caliper_smoke.cpp diff --git a/src/thirdparty/tests/CMakeLists.txt b/src/thirdparty/tests/CMakeLists.txt index 5dbf56c584..216d46373c 100644 --- a/src/thirdparty/tests/CMakeLists.txt +++ b/src/thirdparty/tests/CMakeLists.txt @@ -122,6 +122,27 @@ if (MFEM_FOUND) endif() +#------------------------------------------------------------------------------ +# Smoke test for caliper and adiak third party library +#------------------------------------------------------------------------------ +if ( CALIPER_FOUND ) + + set( caliper_smoke_dependencies caliper gtest ) + + blt_list_append( TO caliper_smoke_dependencies ELEMENTS mpi IF ENABLE_MPI) + blt_list_append( TO caliper_smoke_dependencies ELEMENTS cuda_runtime IF ENABLE_CUDA) + + blt_add_executable( NAME caliper_smoke_test + SOURCES caliper_smoke.cpp + OUTPUT_DIR ${TEST_OUTPUT_DIRECTORY} + DEPENDS_ON ${caliper_smoke_dependencies} + FOLDER axom/thirdparty/tests ) + + axom_add_test( NAME caliper_smoke + COMMAND caliper_smoke_test ) + +endif() + #------------------------------------------------------------------------------ # Smoke test for fmt third party library #------------------------------------------------------------------------------ diff --git a/src/thirdparty/tests/caliper_smoke.cpp b/src/thirdparty/tests/caliper_smoke.cpp new file mode 100644 index 0000000000..0e665467b0 --- /dev/null +++ b/src/thirdparty/tests/caliper_smoke.cpp @@ -0,0 +1,61 @@ +// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +#include "gtest/gtest.h" + +#include "caliper/caliper-config.h" +#include "caliper/cali.h" +#include "caliper/Caliper.h" +#include "caliper/ConfigManager.h" + +#include + +//------------------------------------------------------------------------------ +// UNIT TESTS +//------------------------------------------------------------------------------ +TEST(caliper_smoke, check_version) +{ + std::cout << "Using caliper version: " // + << CALIPER_MAJOR_VERSION << "." // + << CALIPER_MINOR_VERSION << "." // + << CALIPER_PATCH_VERSION << std::endl; + + EXPECT_TRUE(CALIPER_MAJOR_VERSION >= 0); + EXPECT_TRUE(CALIPER_MINOR_VERSION >= 0); + EXPECT_TRUE(CALIPER_PATCH_VERSION >= 0); +} + +TEST(caliper_smoke, config_manager) +{ + cali::ConfigManager mgr; + mgr.add("runtime-report(output=stdout,calc.inclusive=true)"); + + // Check for configuration string parse errors + if(mgr.error()) + { + FAIL() << "ConfigManager: " << mgr.error_msg() << std::endl; + } + + mgr.start(); + + // let's do something with annotations + { + CALI_MARK_BEGIN("my region"); + + for(int i = 0; i < 10; ++i) + { + CALI_CXX_MARK_SCOPE("inner1"); + } + + for(int i = 0; i < 100; ++i) + { + CALI_CXX_MARK_SCOPE("inner2"); + } + + CALI_MARK_END("my region"); + } + + mgr.flush(); +} From dcaaf795a57c85bce32733b5ab0db914986911a6 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 13 Jan 2023 17:02:29 -0800 Subject: [PATCH 057/592] Adds a smoke test for adiak --- src/thirdparty/tests/CMakeLists.txt | 17 ++++++++++- src/thirdparty/tests/adiak_smoke.cpp | 44 ++++++++++++++++++++++++++++ 2 files changed, 60 insertions(+), 1 deletion(-) create mode 100644 src/thirdparty/tests/adiak_smoke.cpp diff --git a/src/thirdparty/tests/CMakeLists.txt b/src/thirdparty/tests/CMakeLists.txt index 216d46373c..f20a7b72bd 100644 --- a/src/thirdparty/tests/CMakeLists.txt +++ b/src/thirdparty/tests/CMakeLists.txt @@ -128,7 +128,6 @@ endif() if ( CALIPER_FOUND ) set( caliper_smoke_dependencies caliper gtest ) - blt_list_append( TO caliper_smoke_dependencies ELEMENTS mpi IF ENABLE_MPI) blt_list_append( TO caliper_smoke_dependencies ELEMENTS cuda_runtime IF ENABLE_CUDA) @@ -143,6 +142,22 @@ if ( CALIPER_FOUND ) endif() +if ( ADIAK_FOUND ) + + set( adiak_smoke_dependencies adiak::adiak gtest ) + blt_list_append( TO adiak_smoke_dependencies ELEMENTS mpi IF ENABLE_MPI) + + blt_add_executable( NAME adiak_smoke_test + SOURCES adiak_smoke.cpp + OUTPUT_DIR ${TEST_OUTPUT_DIRECTORY} + DEPENDS_ON ${adiak_smoke_dependencies} + FOLDER axom/thirdparty/tests ) + + axom_add_test( NAME adiak_smoke + COMMAND adiak_smoke_test ) + +endif() + #------------------------------------------------------------------------------ # Smoke test for fmt third party library #------------------------------------------------------------------------------ diff --git a/src/thirdparty/tests/adiak_smoke.cpp b/src/thirdparty/tests/adiak_smoke.cpp new file mode 100644 index 0000000000..cf2073a81b --- /dev/null +++ b/src/thirdparty/tests/adiak_smoke.cpp @@ -0,0 +1,44 @@ +// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +#include "gtest/gtest.h" + +#include "adiak.hpp" + +#include + +//------------------------------------------------------------------------------ +// UNIT TESTS +//------------------------------------------------------------------------------ +TEST(adiak_smoke, check_version) +{ + std::cout << "Using adiak version: " // + << ADIAK_VERSION << "." // + << ADIAK_MINOR_VERSION << "." // + << ADIAK_POINT_VERSION << std::endl; + + EXPECT_TRUE(ADIAK_VERSION >= 0); + EXPECT_TRUE(ADIAK_MINOR_VERSION >= 0); + EXPECT_TRUE(ADIAK_POINT_VERSION >= 0); +} + +TEST(adiak_smoke, basic) +{ + adiak::init(nullptr); + + // use a built-in value + { + bool ret = adiak::user(); + EXPECT_TRUE(ret); + } + + // set a custom value + { + bool ret = adiak::value("test_type", "smoke"); + EXPECT_TRUE(ret); + } + + adiak::fini(); +} From ddc2501125688cb42532a9e0a5847168224d7b6b Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 15 Jan 2023 12:58:09 -0800 Subject: [PATCH 058/592] Minor tweak to `+profiling` setup in axom spack package --- scripts/spack/packages/axom/package.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/spack/packages/axom/package.py b/scripts/spack/packages/axom/package.py index 69e6c0b28e..8c97987a98 100644 --- a/scripts/spack/packages/axom/package.py +++ b/scripts/spack/packages/axom/package.py @@ -151,8 +151,8 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): for dep in ["adiak", "caliper"]: depends_on("{0}+mpi".format(dep), when="+mpi") depends_on("{0}~mpi".format(dep), when="~mpi") - depends_on("{0}+shared".format(dep), when="+profiling+shared") - depends_on("{0}~shared".format(dep), when="+profiling~shared") + depends_on("{0}+shared".format(dep), when="+shared") + depends_on("{0}~shared".format(dep), when="~shared") for val in CudaPackage.cuda_arch_values: From 89aac24614deab2fc5dadf476ce2e4b1a32b63b8 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 15 Jan 2023 15:57:33 -0800 Subject: [PATCH 059/592] Adds adiak and caliper to `axom::about()` Misc: Reformats the implementation of `axom::about()` and reorganizes definitions in axom's `config.hpp`. --- src/axom/config.hpp.in | 18 ++- src/axom/core/tests/core_about.hpp | 2 + src/axom/core/utilities/About.cpp.in | 194 +++++++++++++-------------- 3 files changed, 108 insertions(+), 106 deletions(-) diff --git a/src/axom/config.hpp.in b/src/axom/config.hpp.in index 998e0c8fe1..5a0dd7f8b3 100644 --- a/src/axom/config.hpp.in +++ b/src/axom/config.hpp.in @@ -46,7 +46,6 @@ #define AXOM_CXX_STD "@BLT_CXX_STD@" #cmakedefine AXOM_CUDA_ARCH "@AXOM_CUDA_ARCH@" #cmakedefine AXOM_NO_INT64_T -#cmakedefine AXOM_USE_MPI3 #ifndef AXOM_NO_INT64_T #cmakedefine AXOM_USE_64BIT_INDEXTYPE @@ -58,6 +57,16 @@ */ #cmakedefine USE_C_LOC_WITH_ASSUMED_SHAPE +/* + * Compiler defines for programming models + */ +#cmakedefine AXOM_USE_CUDA +#cmakedefine AXOM_USE_HIP +#cmakedefine AXOM_USE_MPI +#cmakedefine AXOM_USE_MPI3 +#cmakedefine AXOM_USE_MPIF_HEADER +#cmakedefine AXOM_USE_OPENMP + /* * Compiler defines for libraries (built-in and third party) @@ -67,15 +76,10 @@ #cmakedefine AXOM_USE_CALIPER #cmakedefine AXOM_USE_CLI11 #cmakedefine AXOM_USE_CONDUIT -#cmakedefine AXOM_USE_CUDA -#cmakedefine AXOM_USE_HIP #cmakedefine AXOM_USE_FMT #cmakedefine AXOM_USE_HDF5 #cmakedefine AXOM_USE_LUA #cmakedefine AXOM_USE_MFEM -#cmakedefine AXOM_USE_MPI -#cmakedefine AXOM_USE_MPIF_HEADER -#cmakedefine AXOM_USE_OPENMP #cmakedefine AXOM_USE_RAJA #cmakedefine AXOM_USE_SCR #cmakedefine AXOM_USE_SOL @@ -104,8 +108,8 @@ */ #cmakedefine AXOM_USE_INLET #cmakedefine AXOM_USE_KLEE -#cmakedefine AXOM_USE_MINT #cmakedefine AXOM_USE_LUMBERJACK +#cmakedefine AXOM_USE_MINT #cmakedefine AXOM_USE_PRIMAL #cmakedefine AXOM_USE_QUEST #cmakedefine AXOM_USE_SIDRE diff --git a/src/axom/core/tests/core_about.hpp b/src/axom/core/tests/core_about.hpp index 63bc18bd38..922cc6ec9a 100644 --- a/src/axom/core/tests/core_about.hpp +++ b/src/axom/core/tests/core_about.hpp @@ -26,4 +26,6 @@ TEST(core_about, get_version) std::string axom_version = axom::getVersion(); EXPECT_EQ(expected_version.str(), axom_version); + + std::cout << "Version: " << axom::getVersion() << std::endl; } diff --git a/src/axom/core/utilities/About.cpp.in b/src/axom/core/utilities/About.cpp.in index 499d2e5770..6e8a60d611 100644 --- a/src/axom/core/utilities/About.cpp.in +++ b/src/axom/core/utilities/About.cpp.in @@ -5,17 +5,16 @@ #include "axom/config.hpp" #include "axom/core/utilities/About.hpp" +#include "axom/core/Types.hpp" + +#include "axom/fmt.hpp" -#include #include -#include #include #include -#include namespace axom { - std::string gitSHA() { // Note: This is generated at configure time so that @@ -29,179 +28,176 @@ void about() { about(std::cout); } void about(std::ostream &oss) { - oss << "Axom information:" << std::endl << std::endl; + oss << "Axom information:" << std::endl; + + // list axom version info + { + oss << " AXOM_VERSION_FULL: " << AXOM_VERSION_FULL << std::endl; + oss << " AXOM_VERSION_MAJOR: " << AXOM_VERSION_MAJOR << std::endl; + oss << " AXOM_VERSION_MINOR: " << AXOM_VERSION_MINOR << std::endl; + oss << " AXOM_VERSION_PATCH: " << AXOM_VERSION_PATCH << std::endl; + oss << " AXOM_GIT_SHA: " << gitSHA() << std::endl; + } - oss << "AXOM_VERSION_FULL: " << AXOM_VERSION_FULL << std::endl; - oss << "AXOM_VERSION_MAJOR: " << AXOM_VERSION_MAJOR << std::endl; - oss << "AXOM_VERSION_MINOR: " << AXOM_VERSION_MINOR << std::endl; - oss << "AXOM_VERSION_PATCH: " << AXOM_VERSION_PATCH << std::endl; + oss << "Compiler Settings: \n" + << axom::fmt::format(" C++ Standard: {}\n", AXOM_CXX_STD) + << axom::fmt::format(" Size of axom::IndexType: {}\n", + sizeof(axom::IndexType)); - oss << "AXOM_GIT_SHA: " << gitSHA() << std::endl; + // list compiler/programming model info + { + std::vector models; - oss << "Compiler Settings: " << std::endl - << " C++ Standard: " << AXOM_CXX_STD << std::endl - << " MPI support: " -#ifdef AXOM_USE_MPI - << "ENABLED" -#else - << "DISABLED" -#endif - << std::endl - << " OpenMP support: " -#ifdef AXOM_USE_OPENMP - << "ENABLED" -#else - << "DISABLED" -#endif - << std::endl - << " CUDA support: " #ifdef AXOM_USE_CUDA - << "ENABLED" -#else - << "DISABLED" + models.push_back("cuda"); #endif - << std::endl - << " HIP support: " + #ifdef AXOM_USE_HIP - << "ENABLED" -#else - << "DISABLED" + models.push_back("hip"); +#endif + +#ifdef AXOM_USE_MPI + models.push_back("mpi"); +#endif + +#ifdef AXOM_USE_OPENMP + models.push_back("openmp"); #endif - << std::endl; - oss << "Available components: " << std::endl; + oss << axom::fmt::format("Active programming models: {{ {} }}\n", + axom::fmt::join(models, ";")); + } - std::vector comps; + // list axom components + { + std::vector comps; - comps.push_back("core"); + comps.push_back("core"); #ifdef AXOM_USE_INLET - comps.push_back("inlet"); + comps.push_back("inlet"); #endif #ifdef AXOM_USE_KLEE - comps.push_back("klee"); + comps.push_back("klee"); #endif #ifdef AXOM_USE_LUMBERJACK - comps.push_back("lumberjack"); + comps.push_back("lumberjack"); #endif #ifdef AXOM_USE_MINT - comps.push_back("mint"); + comps.push_back("mint"); #endif #ifdef AXOM_USE_PRIMAL - comps.push_back("primal"); + comps.push_back("primal"); #endif #ifdef AXOM_USE_QUEST - comps.push_back("quest"); + comps.push_back("quest"); #endif #ifdef AXOM_USE_SIDRE - comps.push_back("sidre"); + comps.push_back("sidre"); #endif #ifdef AXOM_USE_SLAM - comps.push_back("slam"); + comps.push_back("slam"); #endif #ifdef AXOM_USE_SLIC - comps.push_back("slic"); + comps.push_back("slic"); #endif #ifdef AXOM_USE_SPIN - comps.push_back("spin"); + comps.push_back("spin"); #endif - std::stringstream sstr; - std::copy(comps.begin(), - comps.end(), - std::ostream_iterator(sstr, "; ")); - oss << " { " << sstr.str() << "}" << std::endl; - - oss << "Active Dependencies: " << std::endl; + oss << axom::fmt::format("Available components: {{ {} }}\n", + axom::fmt::join(comps, ";")); + } - std::vector libs; + // list axom's built-in dependencies + { + std::vector libs; -#ifdef AXOM_USE_C2C - libs.push_back("c2c"); +#ifdef AXOM_USE_CLI11 + libs.push_back("CLI11"); #endif -#ifdef AXOM_USE_CAMP - libs.push_back("camp"); +#ifdef AXOM_USE_FMT + libs.push_back("fmt"); #endif -#ifdef AXOM_USE_CLI11 - libs.push_back("CLI11"); +#ifdef AXOM_USE_SOL + libs.push_back("sol"); #endif -#ifdef AXOM_USE_CONDUIT - libs.push_back("conduit"); +#ifdef AXOM_USE_SPARSEHASH + libs.push_back("sparsehash"); #endif -#ifdef AXOM_USE_FMT - libs.push_back("fmt"); -#endif + oss << fmt::format("Active built-in dependencies: {{ {} }}\n", + fmt::join(libs, ";")); + } -#ifdef AXOM_USE_HDF5 - libs.push_back("hdf5"); + // list axom's external dependencies + { + std::vector libs; + +#ifdef AXOM_USE_ADIAK + libs.push_back("adiak"); #endif -#ifdef AXOM_USE_LUA - libs.push_back("lua"); +#ifdef AXOM_USE_C2C + libs.push_back("c2c"); #endif -#ifdef AXOM_USE_MFEM - libs.push_back("mfem"); +#ifdef AXOM_USE_CALIPER + libs.push_back("caliper"); #endif -#ifdef AXOM_USE_MPI - libs.push_back("mpi"); +#ifdef AXOM_USE_CONDUIT + libs.push_back("conduit"); #endif -#ifdef AXOM_USE_SCR - libs.push_back("scr"); +#ifdef AXOM_USE_HDF5 + libs.push_back("hdf5"); #endif -#ifdef AXOM_USE_SOL - libs.push_back("sol"); +#ifdef AXOM_USE_LUA + libs.push_back("lua"); #endif -#ifdef AXOM_USE_SPARSEHASH - libs.push_back("sparsehash"); +#ifdef AXOM_USE_MFEM + libs.push_back("mfem"); #endif #ifdef AXOM_USE_RAJA - libs.push_back("raja"); + libs.push_back("raja"); +#endif + +#ifdef AXOM_USE_SCR + libs.push_back("scr"); #endif #ifdef AXOM_USE_UMPIRE - libs.push_back("umpire"); + libs.push_back("umpire"); #endif - // reset sstr - sstr.str(""); - std::copy(libs.begin(), - libs.end(), - std::ostream_iterator(sstr, "; ")); - oss << " { " << sstr.str() << "}" << std::endl; + oss << fmt::format("Active external dependencies: {{ {} }}\n", + fmt::join(libs, ";")); + } } //----------------------------------------------------------------------------- std::string getVersion() { - std::ostringstream oss; - oss << AXOM_VERSION_FULL; - - // Add git sha to version if not empty + // Version includes git sha if not empty std::string sha = gitSHA(); - if (!sha.empty()) { - oss << "-" << sha; - } - - return oss.str(); + return !sha.empty() ? axom::fmt::format("{}-{}", AXOM_VERSION_FULL, sha) + : axom::fmt::format("{}", AXOM_VERSION_FULL); } } // end namespace axom From 9326d39318b2a9e1cb8a127a40e98057a5733ea2 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 16 Jan 2023 13:04:02 -0800 Subject: [PATCH 060/592] Improve support for importing adiak Now handles: * versions of adiak before 0.2.2 (which did not have the adiak::adiak alias) * static versions of adiak that depend on mpi, which are missing the `-ldl` link flag for its mpi dependency --- .../thirdparty/SetupAxomThirdParty.cmake | 33 ++++++++++++++----- 1 file changed, 24 insertions(+), 9 deletions(-) diff --git a/src/cmake/thirdparty/SetupAxomThirdParty.cmake b/src/cmake/thirdparty/SetupAxomThirdParty.cmake index 5239494617..bf9e8ac71a 100644 --- a/src/cmake/thirdparty/SetupAxomThirdParty.cmake +++ b/src/cmake/thirdparty/SetupAxomThirdParty.cmake @@ -192,18 +192,33 @@ endif() if(ADIAK_DIR) axom_assert_is_directory(VARIABLE_NAME ADIAK_DIR) find_dependency(adiak REQUIRED - PATHS "${ADIAK_DIR}/lib/cmake/adiak" - "${ADIAK_DIR}") + PATHS "${ADIAK_DIR}" + "${ADIAK_DIR}/lib/cmake/adiak") message(STATUS "Checking for expected adiak target 'adiak::adiak'") + # Earlier versions of adiak (before 0.2.2) did not use the adiak:: alias + # or attach its include directory + if(TARGET adiak AND NOT TARGET adiak::adiak) + set_target_properties(adiak PROPERTIES IMPORTED_GLOBAL TRUE) + set_target_properties(adiak PROPERTIES + INTERFACE_INCLUDE_DIRECTORIES ${adiak_INCLUDE_DIRS}) + add_library(adiak::adiak ALIAS adiak) + endif() + if (NOT TARGET adiak::adiak) message(FATAL_ERROR "adiak failed to load: ${ADIAK_DIR}") endif() - # TODO: CHECK - # Set the include directories as adiak does not completely configure the "adiak" target - set_target_properties(adiak::adiak PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES ${adiak_INCLUDE_DIRS}) + + # Apply patch for adiak's missing `-ldl' for mpi when built statically + get_target_property(_target_type adiak::adiak TYPE) + if(MPI_FOUND AND ${_target_type} STREQUAL "STATIC_LIBRARY") + if(TARGET adiak::mpi) + blt_patch_target(NAME adiak::mpi DEPENDS_ON dl) + else() + set_property(TARGET adiak APPEND PROPERTY INTERFACE_LINK_LIBRARIES dl) + endif() + endif() message(STATUS "adiak loaded: ${ADIAK_DIR}") set(ADIAK_FOUND TRUE) @@ -219,8 +234,8 @@ if(CALIPER_DIR) endif() find_dependency(caliper REQUIRED - PATHS "${CALIPER_DIR}/share/cmake/caliper" - "${CALIPER_DIR}") + PATHS "${CALIPER_DIR}" + "${CALIPER_DIR}/share/cmake/caliper") message(STATUS "Checking for expected caliper target 'caliper'") if (NOT TARGET caliper) @@ -234,7 +249,7 @@ if(CALIPER_DIR) message(STATUS "caliper loaded: ${CALIPER_DIR}") set(CALIPER_FOUND TRUE) else() - message(STATUS "aliper support is OFF") + message(STATUS "caliper support is OFF") set(CALIPER_FOUND FALSE) endif() From 787ed8f7f12c66571bba9df43d9516170503ce80 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 15 Mar 2024 15:59:23 -0700 Subject: [PATCH 061/592] Fixes copyright year --- src/thirdparty/tests/adiak_smoke.cpp | 2 +- src/thirdparty/tests/caliper_smoke.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/thirdparty/tests/adiak_smoke.cpp b/src/thirdparty/tests/adiak_smoke.cpp index cf2073a81b..5555961af8 100644 --- a/src/thirdparty/tests/adiak_smoke.cpp +++ b/src/thirdparty/tests/adiak_smoke.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and +// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and // other Axom Project Developers. See the top-level LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) diff --git a/src/thirdparty/tests/caliper_smoke.cpp b/src/thirdparty/tests/caliper_smoke.cpp index 0e665467b0..02d9f7cf05 100644 --- a/src/thirdparty/tests/caliper_smoke.cpp +++ b/src/thirdparty/tests/caliper_smoke.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017-2022, Lawrence Livermore National Security, LLC and +// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and // other Axom Project Developers. See the top-level LICENSE file for details. // // SPDX-License-Identifier: (BSD-3-Clause) From f4c02ae18bb95051dba37903cfdd71d0315aa94d Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 15 Mar 2024 17:20:51 -0700 Subject: [PATCH 062/592] Lock down versions of caliper and adiak for uberenv and add them to spack configs --- scripts/docker/dockerfile_clang-10 | 2 +- scripts/docker/dockerfile_gcc-11 | 2 +- scripts/docker/dockerfile_gcc-9_cuda-11 | 2 +- .../configs/blueos_3_ppc64le_ib_p9/spack.yaml | 4 ++++ .../spack/configs/docker/ubuntu20/spack.yaml | 4 ++++ .../configs/docker/ubuntu20_cuda/spack.yaml | 4 ++++ .../spack/configs/toss_4_x86_64_ib/spack.yaml | 4 ++++ .../configs/toss_4_x86_64_ib_cray/spack.yaml | 4 ++++ scripts/spack/packages/axom/package.py | 8 ++++---- scripts/spack/specs.json | 20 +++++++++---------- 10 files changed, 37 insertions(+), 17 deletions(-) diff --git a/scripts/docker/dockerfile_clang-10 b/scripts/docker/dockerfile_clang-10 index 020b538d9f..0e2e54a962 100644 --- a/scripts/docker/dockerfile_clang-10 +++ b/scripts/docker/dockerfile_clang-10 @@ -16,7 +16,7 @@ RUN git clone --recursive --branch $branch --single-branch --depth 1 https://git # Build/install TPLs via spack and then remove the temporary build directory on success RUN cd axom_repo && python3 ./scripts/uberenv/uberenv.py --spack-env-file=./scripts/spack/configs/docker/ubuntu20/spack.yaml \ --project-json=.uberenv_config.json \ - --spec=%clang@10.0.0+mfem+raja+umpire --prefix=/home/axom/axom_tpls -k \ + --spec=%clang@10.0.0+mfem+raja+umpire+profiling --prefix=/home/axom/axom_tpls -k \ && rm -rf /home/axom/axom_tpls/builds RUN mkdir -p /home/axom/export_hostconfig diff --git a/scripts/docker/dockerfile_gcc-11 b/scripts/docker/dockerfile_gcc-11 index 8289c9ad2c..0a5de9658d 100644 --- a/scripts/docker/dockerfile_gcc-11 +++ b/scripts/docker/dockerfile_gcc-11 @@ -16,7 +16,7 @@ RUN git clone --recursive --branch $branch --single-branch --depth 1 https://git # Build/install TPLs via spack and then remove the temporary build directory on success RUN cd axom_repo && python3 ./scripts/uberenv/uberenv.py --spack-env-file=./scripts/spack/configs/docker/ubuntu20/spack.yaml \ --project-json=.uberenv_config.json \ - --spec=%gcc@11.1.0+mfem+raja+umpire --prefix=/home/axom/axom_tpls -k \ + --spec=%gcc@11.1.0+mfem+raja+umpire+profiling --prefix=/home/axom/axom_tpls -k \ && rm -rf /home/axom/axom_tpls/builds RUN mkdir -p /home/axom/export_hostconfig diff --git a/scripts/docker/dockerfile_gcc-9_cuda-11 b/scripts/docker/dockerfile_gcc-9_cuda-11 index ca77c8e23f..140cb4b2f6 100644 --- a/scripts/docker/dockerfile_gcc-9_cuda-11 +++ b/scripts/docker/dockerfile_gcc-9_cuda-11 @@ -35,7 +35,7 @@ RUN git clone --recursive --branch $branch https://github.com/LLNL/axom.git axom # Build/install TPLs via spack and then remove the temporary build directory on success RUN cd ${HOME}/axom_repo && python3 ./scripts/uberenv/uberenv.py --spack-env-file=./scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml \ --project-json=.uberenv_config.json \ - --spec="%gcc@9.3.0+mfem+cuda cuda_arch=70" \ + --spec="%gcc@9.3.0+mfem+profiling+cuda cuda_arch=70" \ --prefix=${HOME}/axom_tpls -k \ && rm -rf ${HOME}/axom_tpls/builds diff --git a/scripts/spack/configs/blueos_3_ppc64le_ib_p9/spack.yaml b/scripts/spack/configs/blueos_3_ppc64le_ib_p9/spack.yaml index 166f47abfd..4517f369b4 100644 --- a/scripts/spack/configs/blueos_3_ppc64le_ib_p9/spack.yaml +++ b/scripts/spack/configs/blueos_3_ppc64le_ib_p9/spack.yaml @@ -303,6 +303,10 @@ spack: prefix: /usr # Globally lock version of third party libraries + adiak: + require: "@0.4.0" + caliper: + require: "@2.10.0" camp: require: "@2024.02.0" conduit: diff --git a/scripts/spack/configs/docker/ubuntu20/spack.yaml b/scripts/spack/configs/docker/ubuntu20/spack.yaml index 8260933ac9..689f54be2d 100644 --- a/scripts/spack/configs/docker/ubuntu20/spack.yaml +++ b/scripts/spack/configs/docker/ubuntu20/spack.yaml @@ -131,6 +131,10 @@ spack: prefix: /usr # Globally lock version of third party libraries + adiak: + require: "@0.4.0" + caliper: + require: "@2.10.0" camp: require: "@2024.02.0" conduit: diff --git a/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml b/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml index b7b409bc92..0368da53bb 100644 --- a/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml +++ b/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml @@ -156,6 +156,10 @@ spack: prefix: /opt/spack/opt/spack/linux-ubuntu20.04-x86_64/gcc-9.3.0/ # Globally lock version of third party libraries + adiak: + require: "@0.4.0" + caliper: + require: "@2.10.0" camp: require: "@2023.06.0" conduit: diff --git a/scripts/spack/configs/toss_4_x86_64_ib/spack.yaml b/scripts/spack/configs/toss_4_x86_64_ib/spack.yaml index bd15768713..95c05e3021 100644 --- a/scripts/spack/configs/toss_4_x86_64_ib/spack.yaml +++ b/scripts/spack/configs/toss_4_x86_64_ib/spack.yaml @@ -267,6 +267,10 @@ spack: prefix: /usr # Globally lock version of third party libraries + adiak: + require: "@0.4.0" + caliper: + require: "@2.10.0" camp: require: "@2024.02.0" conduit: diff --git a/scripts/spack/configs/toss_4_x86_64_ib_cray/spack.yaml b/scripts/spack/configs/toss_4_x86_64_ib_cray/spack.yaml index b6f2a47429..70305af866 100644 --- a/scripts/spack/configs/toss_4_x86_64_ib_cray/spack.yaml +++ b/scripts/spack/configs/toss_4_x86_64_ib_cray/spack.yaml @@ -336,6 +336,10 @@ spack: prefix: /usr # Globally lock version of third party libraries + adiak: + require: "@0.4.0" + caliper: + require: "@2.10.0" camp: require: "@2024.02.0" conduit: diff --git a/scripts/spack/packages/axom/package.py b/scripts/spack/packages/axom/package.py index 8c97987a98..2bf028ad0c 100644 --- a/scripts/spack/packages/axom/package.py +++ b/scripts/spack/packages/axom/package.py @@ -142,8 +142,8 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): depends_on("raja+cuda", when="+cuda") with when("+profiling"): - depends_on("adiak@0.2.2") - depends_on("caliper@2.8.0+adiak~papi") + depends_on("adiak") + depends_on("caliper+adiak~papi") depends_on("caliper+cuda", when="+cuda") depends_on("caliper~cuda", when="~cuda") @@ -488,9 +488,9 @@ def initconfig_package_entries(self): # optional tpls for dep in ("adiak", "caliper", "c2c", "mfem", "hdf5", "lua", "raja", "umpire"): - if "+%s" % dep in spec: + if spec.satisfies("^{0}".format(dep)): dep_dir = get_spec_path(spec, dep, path_replacements) - entries.append(cmake_cache_path("%s_DIR" % dep.upper(), dep_dir)) + entries.append(cmake_cache_path("{}_DIR".format(dep.upper()), dep_dir)) else: entries.append("# %s not built\n" % dep.upper()) diff --git a/scripts/spack/specs.json b/scripts/spack/specs.json index fed1c5f3a1..86395b9a5a 100644 --- a/scripts/spack/specs.json +++ b/scripts/spack/specs.json @@ -14,23 +14,23 @@ "__comment__":"##############################################################################", "toss_4_x86_64_ib": - [ "gcc@10.3.1+devtools+hdf5+mfem+c2c+scr", - "clang@14.0.6+devtools+hdf5+mfem+c2c+scr", - "intel@2022.1.0+devtools+hdf5+mfem+c2c" ], + [ "gcc@10.3.1+devtools+hdf5+mfem+c2c+scr+profiling", + "clang@14.0.6+devtools+hdf5+mfem+c2c+scr+profiling", + "intel@2022.1.0+devtools+hdf5+mfem+c2c+profiling" ], "__comment__":"# Use amdgpu_target=gfx90a for tioga/rzvernal; and gfx908 for rznevada", "__comment__":"# -Wno-int-conversion flag needed for building HDF5", "toss_4_x86_64_ib_cray": - [ "clang@16.0.0~openmp+rocm+mfem+c2c amdgpu_target=gfx90a ^hip@5.6.0 ^hsa-rocr-dev@5.6.0 ^llvm-amdgpu@5.6.0 ^rocprim@5.6.0 ^raja~openmp+rocm ^umpire~openmp+rocm ^hdf5 cflags=-Wno-int-conversion" ], + [ "clang@16.0.0~openmp+mfem+c2c+profiling+rocm amdgpu_target=gfx90a ^hip@5.6.0 ^hsa-rocr-dev@5.6.0 ^llvm-amdgpu@5.6.0 ^rocprim@5.6.0 ^raja~openmp+rocm ^umpire~openmp+rocm ^hdf5 cflags=-Wno-int-conversion" ], "__comment__":"# Note: clang-ibm + raja+openmp causes runtime failures, turning it off until there is an alternative", "blueos_3_ppc64le_ib_p9": - [ "clang@10.0.1.1+devtools+mfem+c2c", - "clang@10.0.1.2+devtools+mfem+c2c+cuda cuda_arch=70", - "gcc@8.3.1.1+devtools~mfem+c2c", - "gcc@8.3.1.2+devtools~mfem+c2c+cuda cuda_arch=70", - "xl@16.1.1.1~openmp+devtools+mfem+c2c", - "xl@16.1.1.2~openmp+devtools+mfem+c2c+cuda cuda_arch=70" ], + [ "clang@10.0.1.1+devtools+mfem+c2c+profiling", + "clang@10.0.1.2+devtools+mfem+c2c+profiling+cuda cuda_arch=70", + "gcc@8.3.1.1+devtools~mfem+c2c+profiling", + "gcc@8.3.1.2+devtools~mfem+c2c+profiling+cuda cuda_arch=70", + "xl@16.1.1.1~openmp+devtools+mfem+c2c+profiling", + "xl@16.1.1.2~openmp+devtools+mfem+c2c+profiling+cuda cuda_arch=70" ], "darwin-x86_64": [ "clang@9.0.0+devtools+mfem" ] From 3b0bebff6a5d248ac687125b2c72e9aba74f1eaa Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 15 Mar 2024 18:15:24 -0700 Subject: [PATCH 063/592] Adds host-configs for LLNL toss4 platform on rzwhippet --- ...hippet-toss_4_x86_64_ib-clang@14.0.6.cmake | 60 +++++++++++-------- ...zwhippet-toss_4_x86_64_ib-gcc@10.3.1.cmake | 60 +++++++++++-------- ...ppet-toss_4_x86_64_ib-intel@2022.1.0.cmake | 38 +++++++----- 3 files changed, 94 insertions(+), 64 deletions(-) diff --git a/host-configs/rzwhippet-toss_4_x86_64_ib-clang@14.0.6.cmake b/host-configs/rzwhippet-toss_4_x86_64_ib-clang@14.0.6.cmake index fe5c49492b..cb01fb9f64 100644 --- a/host-configs/rzwhippet-toss_4_x86_64_ib-clang@14.0.6.cmake +++ b/host-configs/rzwhippet-toss_4_x86_64_ib-clang@14.0.6.cmake @@ -4,7 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/umpire-2023.06.0-ubadmsj3l2zavunhkkt7nxevkpmssdvy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/scr-3.0.1-5edtc4k2wstti2dh4kp2tno7rmwr3lyd;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/spath-0.2.0-gvlnzegcdph7ien3w4tjcxevblf2xe4r;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/libyogrt-1.33-3joihut3xh67qmtalrqadzujfzxwpodj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/er-0.2.0-befo66qsdjjulpnhaxvhk4uil45ynd6u;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/shuffile-0.2.0-j5blkpa2h3keb562qb5pdnfiuzyaecfd;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/redset-0.2.0-tllpyzklkik7oa32us3tigl7vdvil42o;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/rankstr-0.1.0-jkgwo3kyvegaapdtm67mg4aknu44foyn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/dtcmp-1.1.4-u376uqcnt3y7ebu5ocfvk7bovkr2febv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/lwgrp-1.0.5-am6sfml4trdhzlds365vbepezgdvdocz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/axl-0.7.1-t7yboywzjziqb3hbgidynhbk5vd33jc7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/kvtree-1.3.0-4zcbvvaqpbkdt7xc4pbu7urlkdywjjd7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/raja-2023.06.0-55ypap77cpmjgq24vaquanhsshjm3gqh;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/camp-2023.06.0-e6mknahsrmbbifbfv3umemetvqzoh3he;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/mfem-4.5.2-lwet4c3edrdvipij3r4itukmse2jklvy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/hypre-2.24.0-bwh42bebp4hiuwzlwcthpgkawape6dp3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/conduit-0.8.8-inqrhwboacvngevqbvavhpisx4aeqpvy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/parmetis-4.0.3-jthqwflsj5bpe6onwsb5r2zi5wbx6pq4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/metis-5.1.0-imzig3eih3itpztvvk4yildzgq6aeelo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/hdf5-1.8.22-5mfm2r7fo5krpj7vvmayz24qksnluryl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/c2c-1.8.0-5smd5ktj7yjc2egeyum4t5vlwmw3jktt;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/gmake-4.4.1-6lgy76r7dbvqm6mbwb2jkpcuycf7tb27;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6/blt-0.5.3-xa3bmu75nkolqiewb5ftk5tp2jpzw57n;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-clang-14.0.6;/usr/tce/packages/clang/clang-14.0.6" CACHE PATH "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/blt-0.6.1.4-oouarzy7h3sj5quygkhjaduigaxbj4at;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/gmake-4.4.1-jimcbwsnakmlfui3jg7a4e6327ry222f;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/libunwind-1.6.2-tmhdnhxexgqyjj3d2ph3skidybow3vir;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-clang-14.0.6;/usr/tce/packages/clang/clang-14.0.6" CACHE STRING "") + +set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") + +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axom-develop-zlvuwwcx2jpukpiny3tywc23ligainm3/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axom-develop-zlvuwwcx2jpukpiny3tywc23ligainm3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/libunwind-1.6.2-tmhdnhxexgqyjj3d2ph3skidybow3vir/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") + +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axom-develop-zlvuwwcx2jpukpiny3tywc23ligainm3/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axom-develop-zlvuwwcx2jpukpiny3tywc23ligainm3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/libunwind-1.6.2-tmhdnhxexgqyjj3d2ph3skidybow3vir/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -15,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -31,8 +37,6 @@ else() endif() -set(CMAKE_GENERATOR "Unix Makefiles" CACHE STRING "") - set(ENABLE_FORTRAN ON CACHE BOOL "") set(BLT_EXE_LINKER_FLAGS " -Wl,-rpath,/usr/tce/packages/clang/clang-14.0.6/lib" CACHE STRING "Adds a missing libstdc++ rpath") @@ -69,45 +73,49 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/clang-14.0.6" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/clang-14.0.6" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.8.8-inqrhwboacvngevqbvavhpisx4aeqpvy" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq" CACHE PATH "") -set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-5smd5ktj7yjc2egeyum4t5vlwmw3jktt" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx" CACHE PATH "") -set(MFEM_DIR "${TPL_ROOT}/mfem-4.5.2-lwet4c3edrdvipij3r4itukmse2jklvy" CACHE PATH "") +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.22-5mfm2r7fo5krpj7vvmayz24qksnluryl" CACHE PATH "") +set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us" CACHE PATH "") + +set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5" CACHE PATH "") + +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4" CACHE PATH "") set(LUA_DIR "/usr" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2023.06.0-55ypap77cpmjgq24vaquanhsshjm3gqh" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2023.06.0-ubadmsj3l2zavunhkkt7nxevkpmssdvy" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2023.06.0-e6mknahsrmbbifbfv3umemetvqzoh3he" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip" CACHE PATH "") -set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-5edtc4k2wstti2dh4kp2tno7rmwr3lyd" CACHE PATH "") +set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6" CACHE PATH "") -set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-4zcbvvaqpbkdt7xc4pbu7urlkdywjjd7" CACHE PATH "") +set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw" CACHE PATH "") -set(DTCMP_DIR "${TPL_ROOT}/dtcmp-1.1.4-u376uqcnt3y7ebu5ocfvk7bovkr2febv" CACHE PATH "") +set(DTCMP_DIR "${TPL_ROOT}/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj" CACHE PATH "") -set(SPATH_DIR "${TPL_ROOT}/spath-0.2.0-gvlnzegcdph7ien3w4tjcxevblf2xe4r" CACHE PATH "") +set(SPATH_DIR "${TPL_ROOT}/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix" CACHE PATH "") -set(AXL_DIR "${TPL_ROOT}/axl-0.7.1-t7yboywzjziqb3hbgidynhbk5vd33jc7" CACHE PATH "") +set(AXL_DIR "${TPL_ROOT}/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3" CACHE PATH "") -set(LWGRP_DIR "${TPL_ROOT}/lwgrp-1.0.5-am6sfml4trdhzlds365vbepezgdvdocz" CACHE PATH "") +set(LWGRP_DIR "${TPL_ROOT}/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q" CACHE PATH "") -set(ER_DIR "${TPL_ROOT}/er-0.2.0-befo66qsdjjulpnhaxvhk4uil45ynd6u" CACHE PATH "") +set(ER_DIR "${TPL_ROOT}/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo" CACHE PATH "") -set(RANKSTR_DIR "${TPL_ROOT}/rankstr-0.1.0-jkgwo3kyvegaapdtm67mg4aknu44foyn" CACHE PATH "") +set(RANKSTR_DIR "${TPL_ROOT}/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz" CACHE PATH "") -set(REDSET_DIR "${TPL_ROOT}/redset-0.2.0-tllpyzklkik7oa32us3tigl7vdvil42o" CACHE PATH "") +set(REDSET_DIR "${TPL_ROOT}/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu" CACHE PATH "") -set(SHUFFILE_DIR "${TPL_ROOT}/shuffile-0.2.0-j5blkpa2h3keb562qb5pdnfiuzyaecfd" CACHE PATH "") +set(SHUFFILE_DIR "${TPL_ROOT}/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb" CACHE PATH "") -set(LIBYOGRT_DIR "${TPL_ROOT}/libyogrt-1.33-3joihut3xh67qmtalrqadzujfzxwpodj" CACHE PATH "") +set(LIBYOGRT_DIR "${TPL_ROOT}/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl" CACHE PATH "") #------------------------------------------------------------------------------ # Devtools @@ -119,6 +127,8 @@ set(CLANGFORMAT_EXECUTABLE "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/lat set(PYTHON_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/python3.10" CACHE PATH "") +set(JSONSCHEMA_EXECUTABLE "${TPL_ROOT}/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/bin/jsonschema" CACHE PATH "") + set(ENABLE_DOCS ON CACHE BOOL "") set(SPHINX_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/sphinx-build" CACHE PATH "") diff --git a/host-configs/rzwhippet-toss_4_x86_64_ib-gcc@10.3.1.cmake b/host-configs/rzwhippet-toss_4_x86_64_ib-gcc@10.3.1.cmake index 9a90dd375b..1b685ce542 100644 --- a/host-configs/rzwhippet-toss_4_x86_64_ib-gcc@10.3.1.cmake +++ b/host-configs/rzwhippet-toss_4_x86_64_ib-gcc@10.3.1.cmake @@ -4,7 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/umpire-2023.06.0-z2ts74flz56i67azbbp5zyiwvwgwucrr;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/scr-3.0.1-znr5hvdmrpg2wwtcrepv3bzh32visddj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/spath-0.2.0-scp7lun3jtdgorfmd4mzhtieqkjko57q;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/libyogrt-1.33-riegwpsbfjywz6pumvit2eadroiosowy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/er-0.2.0-m7mypt2brwrodmfun3ya2cwpkuwpccnv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/shuffile-0.2.0-74ysb2qi6xkrx7u5vsa2jnmcqof3q4je;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/redset-0.2.0-7bhg5tua2jns5ob7r6stbgitzlfggdax;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/rankstr-0.1.0-yuunbkeetjd4y563p4dzxp23rsdcc6tr;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/dtcmp-1.1.4-bk55ioptacxzxnpxcgu27vwk2nacb35s;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/lwgrp-1.0.5-zhpxnopjtpr5cchaqufivi2sn4crkgwn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/axl-0.7.1-b3zz33f7lmeal5thbfyuc6cmbdfek2vv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/kvtree-1.3.0-oeqjobwdjxemywgc77pfuv4nnpxk6buj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/raja-2023.06.0-ca64lzglcihqwwjcmxuzfdvg7bhsd5rq;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/camp-2023.06.0-k4v6kc3zhnika36o2jvhncwiwcaifxqp;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/mfem-4.5.2-uyempb4k6nefxh36lxnbfb2dynpyaezr;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/hypre-2.24.0-lof7hdy7wsyuei436d6uhilprsgmr3ik;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/conduit-0.8.8-wngwwhpllk2gjewlizsk4plakvdu4beu;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/parmetis-4.0.3-lq6aryhur6qn3trc2qxizvz4nae5ngzf;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/metis-5.1.0-pyrzcrzqvl6q27kk637o2nwi3j7ibseb;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/hdf5-1.8.22-wikz2sxdo4zf76fdfl5do4mekkixf4yv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/c2c-1.8.0-bsohtsh5a73tmmxlndgjuhzz6lzoif5j;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/gmake-4.4.1-y2kaxrqjbg3dcwo7dzfphztusfjqoowq;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1/blt-0.5.3-iljv7wrfi4r5i4drs4yf65rgsuunaxjn;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-gcc-10.3.1" CACHE PATH "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/gmake-4.4.1-hnowwppvujezizfysc64xc2myqqulzcn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/libunwind-1.6.2-z2puyqr6zlbynia4pzb3dof3zdy4ijeo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/blt-0.6.1.4-ee4ftwhz24yhie53n4ximxniibs3wair;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-gcc-10.3.1" CACHE STRING "") + +set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") + +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axom-develop-b2m4iz4pwkk2uvw7e5bb4jeuwtd54277/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axom-develop-b2m4iz4pwkk2uvw7e5bb4jeuwtd54277/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/libunwind-1.6.2-z2puyqr6zlbynia4pzb3dof3zdy4ijeo/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") + +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axom-develop-b2m4iz4pwkk2uvw7e5bb4jeuwtd54277/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axom-develop-b2m4iz4pwkk2uvw7e5bb4jeuwtd54277/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/libunwind-1.6.2-z2puyqr6zlbynia4pzb3dof3zdy4ijeo/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -15,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -31,8 +37,6 @@ else() endif() -set(CMAKE_GENERATOR "Unix Makefiles" CACHE STRING "") - set(ENABLE_FORTRAN ON CACHE BOOL "") #------------------------------------------------------------------------------ @@ -67,45 +71,49 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/gcc-10.3.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/gcc-10.3.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.8.8-wngwwhpllk2gjewlizsk4plakvdu4beu" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz" CACHE PATH "") -set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-bsohtsh5a73tmmxlndgjuhzz6lzoif5j" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc" CACHE PATH "") -set(MFEM_DIR "${TPL_ROOT}/mfem-4.5.2-uyempb4k6nefxh36lxnbfb2dynpyaezr" CACHE PATH "") +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.22-wikz2sxdo4zf76fdfl5do4mekkixf4yv" CACHE PATH "") +set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz" CACHE PATH "") + +set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv" CACHE PATH "") + +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn" CACHE PATH "") set(LUA_DIR "/usr" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2023.06.0-ca64lzglcihqwwjcmxuzfdvg7bhsd5rq" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2023.06.0-z2ts74flz56i67azbbp5zyiwvwgwucrr" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2023.06.0-k4v6kc3zhnika36o2jvhncwiwcaifxqp" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms" CACHE PATH "") -set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-znr5hvdmrpg2wwtcrepv3bzh32visddj" CACHE PATH "") +set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7" CACHE PATH "") -set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-oeqjobwdjxemywgc77pfuv4nnpxk6buj" CACHE PATH "") +set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k" CACHE PATH "") -set(DTCMP_DIR "${TPL_ROOT}/dtcmp-1.1.4-bk55ioptacxzxnpxcgu27vwk2nacb35s" CACHE PATH "") +set(DTCMP_DIR "${TPL_ROOT}/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux" CACHE PATH "") -set(SPATH_DIR "${TPL_ROOT}/spath-0.2.0-scp7lun3jtdgorfmd4mzhtieqkjko57q" CACHE PATH "") +set(SPATH_DIR "${TPL_ROOT}/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl" CACHE PATH "") -set(AXL_DIR "${TPL_ROOT}/axl-0.7.1-b3zz33f7lmeal5thbfyuc6cmbdfek2vv" CACHE PATH "") +set(AXL_DIR "${TPL_ROOT}/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3" CACHE PATH "") -set(LWGRP_DIR "${TPL_ROOT}/lwgrp-1.0.5-zhpxnopjtpr5cchaqufivi2sn4crkgwn" CACHE PATH "") +set(LWGRP_DIR "${TPL_ROOT}/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4" CACHE PATH "") -set(ER_DIR "${TPL_ROOT}/er-0.2.0-m7mypt2brwrodmfun3ya2cwpkuwpccnv" CACHE PATH "") +set(ER_DIR "${TPL_ROOT}/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs" CACHE PATH "") -set(RANKSTR_DIR "${TPL_ROOT}/rankstr-0.1.0-yuunbkeetjd4y563p4dzxp23rsdcc6tr" CACHE PATH "") +set(RANKSTR_DIR "${TPL_ROOT}/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe" CACHE PATH "") -set(REDSET_DIR "${TPL_ROOT}/redset-0.2.0-7bhg5tua2jns5ob7r6stbgitzlfggdax" CACHE PATH "") +set(REDSET_DIR "${TPL_ROOT}/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4" CACHE PATH "") -set(SHUFFILE_DIR "${TPL_ROOT}/shuffile-0.2.0-74ysb2qi6xkrx7u5vsa2jnmcqof3q4je" CACHE PATH "") +set(SHUFFILE_DIR "${TPL_ROOT}/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns" CACHE PATH "") -set(LIBYOGRT_DIR "${TPL_ROOT}/libyogrt-1.33-riegwpsbfjywz6pumvit2eadroiosowy" CACHE PATH "") +set(LIBYOGRT_DIR "${TPL_ROOT}/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa" CACHE PATH "") #------------------------------------------------------------------------------ # Devtools @@ -117,6 +125,8 @@ set(CLANGFORMAT_EXECUTABLE "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/lat set(PYTHON_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/python3.10" CACHE PATH "") +set(JSONSCHEMA_EXECUTABLE "${TPL_ROOT}/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/bin/jsonschema" CACHE PATH "") + set(ENABLE_DOCS ON CACHE BOOL "") set(SPHINX_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/sphinx-build" CACHE PATH "") diff --git a/host-configs/rzwhippet-toss_4_x86_64_ib-intel@2022.1.0.cmake b/host-configs/rzwhippet-toss_4_x86_64_ib-intel@2022.1.0.cmake index c492e852d9..2f4db9c3e2 100644 --- a/host-configs/rzwhippet-toss_4_x86_64_ib-intel@2022.1.0.cmake +++ b/host-configs/rzwhippet-toss_4_x86_64_ib-intel@2022.1.0.cmake @@ -4,7 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/umpire-2023.06.0-6wmifjy5c2er4kkfqw7m5s4in7esiln5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/raja-2023.06.0-urtfojwbjummyvyev7k4zn2oix53f4up;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/camp-2023.06.0-ovewmmz43udq34jrdlokh2zuzgkzrum4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/mfem-4.5.2-dbvjel6jhwnwf6wzm76w6ghbjpy3v4gj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/hypre-2.24.0-qdjyl5ibcpl4nxb6t5godfgvi5bb6hac;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/conduit-0.8.8-22refnw4twba4zznewcuczky2udimj7i;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/parmetis-4.0.3-nqxoj5gqogj32hfo5ognkcb6vg24zdlc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/metis-5.1.0-tb5bijmooj2d6d2npjpajcj4fyu4yd4y;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/hdf5-1.8.22-6oeginq7kyyix35utjgsfxeghcnujtpg;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/c2c-1.8.0-gvlftgplgmtput3k4fy2nssecldmmlsa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/gmake-4.4.1-e3r4ry6vgi7zp4mbwfokypkutqwpctek;/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0/blt-0.5.3-i7qltms7ksyz4xltznzbtsafywrykq7b;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0;/usr/tce" CACHE PATH "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/blt-0.6.1.4-3p2ecutmo7drpwwvvsgtcqxakxjoy573;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/gmake-4.4.1-giduhrefimvdwblsuh6cmqipc474toi5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/libunwind-1.6.2-ozufa7ibeygwcdlewe4kvzvh4qwapxsl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce" CACHE STRING "") + +set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") + +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/axom-develop-zhyrzemifbkhl5qpvobz2rjiab2pjdow/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/axom-develop-zhyrzemifbkhl5qpvobz2rjiab2pjdow/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/libunwind-1.6.2-ozufa7ibeygwcdlewe4kvzvh4qwapxsl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") + +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/axom-develop-zhyrzemifbkhl5qpvobz2rjiab2pjdow/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/axom-develop-zhyrzemifbkhl5qpvobz2rjiab2pjdow/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/libunwind-1.6.2-ozufa7ibeygwcdlewe4kvzvh4qwapxsl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -15,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/intel/icc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/intel/icc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/intel/icpc" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/intel/icpc" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/spack/lib/spack/env/intel/ifort" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/spack/lib/spack/env/intel/ifort" CACHE PATH "") else() @@ -31,8 +37,6 @@ else() endif() -set(CMAKE_GENERATOR "Unix Makefiles" CACHE STRING "") - set(ENABLE_FORTRAN ON CACHE BOOL "") #------------------------------------------------------------------------------ @@ -67,23 +71,27 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2023_10_30_15_05_41/intel-2022.1.0" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_17_21_40/intel-2022.1.0" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.8.8-22refnw4twba4zznewcuczky2udimj7i" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z" CACHE PATH "") -set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-gvlftgplgmtput3k4fy2nssecldmmlsa" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p" CACHE PATH "") -set(MFEM_DIR "${TPL_ROOT}/mfem-4.5.2-dbvjel6jhwnwf6wzm76w6ghbjpy3v4gj" CACHE PATH "") +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.22-6oeginq7kyyix35utjgsfxeghcnujtpg" CACHE PATH "") +set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr" CACHE PATH "") + +set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d" CACHE PATH "") + +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of" CACHE PATH "") set(LUA_DIR "/usr" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2023.06.0-urtfojwbjummyvyev7k4zn2oix53f4up" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2023.06.0-6wmifjy5c2er4kkfqw7m5s4in7esiln5" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2023.06.0-ovewmmz43udq34jrdlokh2zuzgkzrum4" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e" CACHE PATH "") # scr not built @@ -97,6 +105,8 @@ set(CLANGFORMAT_EXECUTABLE "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/lat set(PYTHON_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/python3.10" CACHE PATH "") +set(JSONSCHEMA_EXECUTABLE "${TPL_ROOT}/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/bin/jsonschema" CACHE PATH "") + set(ENABLE_DOCS ON CACHE BOOL "") set(SPHINX_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/sphinx-build" CACHE PATH "") From 3753975ff57036a21f87ad49ce1af9cfd1b2e538 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 15 Mar 2024 18:28:23 -0700 Subject: [PATCH 064/592] Adds host-configs for LLNL toss4_cray platform on rzvernal --- ...oss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake b/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake index 2feecca36c..fc53ae896f 100644 --- a/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake +++ b/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/blt-0.6.1.4-rsolo2redxjrxxepfboqczt24wsewi2r;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/blt-0.6.1.4-rsolo2redxjrxxepfboqczt24wsewi2r;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/spack/lib/spack/env/clang/flang" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/spack/lib/spack/env/clang/flang" CACHE PATH "") else() @@ -104,10 +104,14 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_07_00_03_21/clang-16.0.0" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu" CACHE PATH "") + set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v" CACHE PATH "") From 1bf45f9718f0d44e94282522989a19276c7ba681 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 13:28:17 -0700 Subject: [PATCH 065/592] Unset CONDUIT_FOUND for incremental reconfigures --- src/cmake/thirdparty/SetupAxomThirdParty.cmake | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/cmake/thirdparty/SetupAxomThirdParty.cmake b/src/cmake/thirdparty/SetupAxomThirdParty.cmake index bf9e8ac71a..3162fa4965 100644 --- a/src/cmake/thirdparty/SetupAxomThirdParty.cmake +++ b/src/cmake/thirdparty/SetupAxomThirdParty.cmake @@ -88,6 +88,8 @@ endif() # newer CMake versions if (CONDUIT_DIR) axom_assert_is_directory(VARIABLE_NAME CONDUIT_DIR) + + unset(CONDUIT_FOUND CACHE) find_dependency(Conduit REQUIRED PATHS "${CONDUIT_DIR}" "${CONDUIT_DIR}/lib/cmake/conduit") From 47751953719bc81d01650fa2525d5f105b90138d Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 13:29:33 -0700 Subject: [PATCH 066/592] Temporarily stop checking for AXOM_USE_CALIPER in axom's annotations Caliper integration is underway, Axom's annotations will soon rely on caliper. --- src/axom/core/utilities/AnnotationMacros.hpp | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/src/axom/core/utilities/AnnotationMacros.hpp b/src/axom/core/utilities/AnnotationMacros.hpp index 28f5dbed94..7ddbe53bda 100644 --- a/src/axom/core/utilities/AnnotationMacros.hpp +++ b/src/axom/core/utilities/AnnotationMacros.hpp @@ -8,9 +8,10 @@ #include "axom/config.hpp" -#ifndef AXOM_USE_CALIPER - #include "axom/core/utilities/nvtx/interface.hpp" -#endif +// Note: Caliper integration into Axom is underway. +// Axom's annotations will soon rely on caliper. + +#include "axom/core/utilities/nvtx/interface.hpp" /*! * \def AXOM_PERF_MARK_FUNCTION( name ) @@ -36,9 +37,7 @@ * } * \endcode */ -#if defined(AXOM_USE_ANNOTATIONS) && defined(AXOM_USE_CALIPER) - #error "Support for Caliper has not yet been implemented in Axom!" -#elif defined(AXOM_USE_ANNOTATIONS) +#if defined(AXOM_USE_ANNOTATIONS) #define AXOM_PERF_MARK_FUNCTION(__func_name__) \ AXOM_NVTX_FUNCTION(__func_name__) #else @@ -85,9 +84,7 @@ * \endcode * */ -#if defined(AXOM_USE_ANNOTATIONS) && defined(AXOM_USE_CALIPER) - #error "Support for Caliper has not yet been implemented in Axom!" -#elif defined(AXOM_USE_ANNOTATIONS) +#if defined(AXOM_USE_ANNOTATIONS) #define AXOM_PERF_MARK_SECTION(__name__, ...) \ AXOM_NVTX_SECTION(__name__, __VA_ARGS__) #else From da7007c62d412b8dafa99f8d895d49e9f3f21119 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 13:56:28 -0700 Subject: [PATCH 067/592] Adds elfutils to docker images --- scripts/docker/dockerfile_clang-10 | 2 +- scripts/docker/dockerfile_gcc-11 | 2 +- scripts/docker/dockerfile_gcc-9_cuda-11 | 2 +- scripts/spack/configs/docker/ubuntu20/spack.yaml | 5 +++++ scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml | 5 +++++ scripts/spack/configs/linux_ubuntu_20/spack.yaml | 5 +++++ 6 files changed, 18 insertions(+), 3 deletions(-) diff --git a/scripts/docker/dockerfile_clang-10 b/scripts/docker/dockerfile_clang-10 index 0e2e54a962..24d3846548 100644 --- a/scripts/docker/dockerfile_clang-10 +++ b/scripts/docker/dockerfile_clang-10 @@ -6,7 +6,7 @@ ARG branch=develop SHELL ["/bin/bash", "-c"] RUN sudo apt-get update -y -RUN sudo apt-get install doxygen gfortran graphviz libopenblas-dev libomp-dev mpich python3-sphinx ssh texlive-full -fy +RUN sudo apt-get install doxygen elfutils gfortran graphviz libopenblas-dev libomp-dev mpich python3-sphinx ssh texlive-full -fy WORKDIR "/home/axom" USER axom diff --git a/scripts/docker/dockerfile_gcc-11 b/scripts/docker/dockerfile_gcc-11 index 0a5de9658d..5f0742207e 100644 --- a/scripts/docker/dockerfile_gcc-11 +++ b/scripts/docker/dockerfile_gcc-11 @@ -6,7 +6,7 @@ ARG branch=develop SHELL ["/bin/bash", "-c"] RUN sudo apt-get update -y -RUN sudo apt-get install doxygen gfortran graphviz libopenblas-dev libomp-dev mpich python3-sphinx ssh texlive-full -fy +RUN sudo apt-get install doxygen elfutils gfortran graphviz libopenblas-dev libomp-dev mpich python3-sphinx ssh texlive-full -fy WORKDIR "/home/axom" USER axom diff --git a/scripts/docker/dockerfile_gcc-9_cuda-11 b/scripts/docker/dockerfile_gcc-9_cuda-11 index 140cb4b2f6..f12e2eab7a 100644 --- a/scripts/docker/dockerfile_gcc-9_cuda-11 +++ b/scripts/docker/dockerfile_gcc-9_cuda-11 @@ -19,7 +19,7 @@ SHELL ["/bin/bash", "-c"] RUN sudo apt-get update -y RUN sudo apt-get install -y supervisor RUN sudo useradd --create-home --shell /bin/bash ${USER} -RUN sudo apt-get install doxygen gfortran graphviz language-pack-en-base less libopenblas-dev libomp-dev mpich python3-sphinx ssh texlive-full tree -fy +RUN sudo apt-get install doxygen elfutils gfortran graphviz language-pack-en-base less libopenblas-dev libomp-dev mpich python3-sphinx ssh texlive-full tree -fy WORKDIR /opt/archives RUN curl -L https://github.com/gitpod-io/openvscode-server/releases/download/openvscode-server-v1.69.1/openvscode-server-v1.69.1-linux-x64.tar.gz > \ diff --git a/scripts/spack/configs/docker/ubuntu20/spack.yaml b/scripts/spack/configs/docker/ubuntu20/spack.yaml index 689f54be2d..1064f6b40c 100644 --- a/scripts/spack/configs/docker/ubuntu20/spack.yaml +++ b/scripts/spack/configs/docker/ubuntu20/spack.yaml @@ -94,6 +94,11 @@ spack: externals: - spec: bzip2@1.0.6 prefix: /usr + elfutils: + buildable: false + externals: + - spec: elfutils@0.187 + prefix: /usr gettext: buildable: false externals: diff --git a/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml b/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml index 0368da53bb..625d5d4772 100644 --- a/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml +++ b/scripts/spack/configs/docker/ubuntu20_cuda/spack.yaml @@ -114,6 +114,11 @@ spack: externals: - spec: cuda@11.1.1 prefix: /usr/local/cuda + elfutils: + buildable: false + externals: + - spec: elfutils@0.187 + prefix: /usr gettext: buildable: false externals: diff --git a/scripts/spack/configs/linux_ubuntu_20/spack.yaml b/scripts/spack/configs/linux_ubuntu_20/spack.yaml index 901e514028..2abc35cdf8 100644 --- a/scripts/spack/configs/linux_ubuntu_20/spack.yaml +++ b/scripts/spack/configs/linux_ubuntu_20/spack.yaml @@ -69,6 +69,11 @@ spack: externals: - spec: bzip2@1.0.8 prefix: / + elfutils: + buildable: false + externals: + - spec: elfutils@0.187 + prefix: /usr gettext: buildable: false externals: From 50e70913eebf9963789ffee60061ff526660839b Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 12:31:42 -0700 Subject: [PATCH 068/592] Adds host-configs for LLNL toss4 platform on quartz --- ...quartz-toss_4_x86_64_ib-clang@14.0.6.cmake | 20 +++++++++++-------- .../quartz-toss_4_x86_64_ib-gcc@10.3.1.cmake | 20 +++++++++++-------- ...artz-toss_4_x86_64_ib-intel@2022.1.0.cmake | 18 ++++++++++------- 3 files changed, 35 insertions(+), 23 deletions(-) diff --git a/host-configs/quartz-toss_4_x86_64_ib-clang@14.0.6.cmake b/host-configs/quartz-toss_4_x86_64_ib-clang@14.0.6.cmake index db22ed82db..69fffafefd 100644 --- a/host-configs/quartz-toss_4_x86_64_ib-clang@14.0.6.cmake +++ b/host-configs/quartz-toss_4_x86_64_ib-clang@14.0.6.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/blt-0.6.1.4-oouarzy7h3sj5quygkhjaduigaxbj4at;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/gmake-4.4.1-jimcbwsnakmlfui3jg7a4e6327ry222f;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-clang-14.0.6;/usr/tce/packages/clang/clang-14.0.6" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/scr-3.0.1-axh3ezsi3sbvsvdip4cwdmlk7kfyucow;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/blt-0.6.1.4-oouarzy7h3sj5quygkhjaduigaxbj4at;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/gmake-4.4.1-jimcbwsnakmlfui3jg7a4e6327ry222f;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/libunwind-1.6.2-tmhdnhxexgqyjj3d2ph3skidybow3vir;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-clang-14.0.6;/usr/tce/packages/clang/clang-14.0.6" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axom-develop-e3jrpv4mb36q3jxxcbz2ubhcdd75zs2a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axom-develop-e3jrpv4mb36q3jxxcbz2ubhcdd75zs2a/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axom-develop-nkg237psie7dopcj5y2ltdhpxo35ou6r/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axom-develop-nkg237psie7dopcj5y2ltdhpxo35ou6r/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/libunwind-1.6.2-tmhdnhxexgqyjj3d2ph3skidybow3vir/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/scr-3.0.1-axh3ezsi3sbvsvdip4cwdmlk7kfyucow/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axom-develop-e3jrpv4mb36q3jxxcbz2ubhcdd75zs2a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axom-develop-e3jrpv4mb36q3jxxcbz2ubhcdd75zs2a/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axom-develop-nkg237psie7dopcj5y2ltdhpxo35ou6r/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axom-develop-nkg237psie7dopcj5y2ltdhpxo35ou6r/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/libunwind-1.6.2-tmhdnhxexgqyjj3d2ph3skidybow3vir/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/hypre-2.24.0-jonmheld2iyk5vpkxjps3wvk6ojyvkm5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/scr-3.0.1-axh3ezsi3sbvsvdip4cwdmlk7kfyucow/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -73,10 +73,14 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/clang-14.0.6" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/clang-14.0.6" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-slf36gk3mhkcy5cgarktmxf7bcqjtzjx" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-eac67p77bl6se3kvxzymbmxtx62k6zfa" CACHE PATH "") + set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2sgpgtnhas5crnwvexabyzuzouxgblc5" CACHE PATH "") @@ -91,7 +95,7 @@ set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai" C set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip" CACHE PATH "") -set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6" CACHE PATH "") +set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-axh3ezsi3sbvsvdip4cwdmlk7kfyucow" CACHE PATH "") set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw" CACHE PATH "") diff --git a/host-configs/quartz-toss_4_x86_64_ib-gcc@10.3.1.cmake b/host-configs/quartz-toss_4_x86_64_ib-gcc@10.3.1.cmake index a228744ea6..ad00a21508 100644 --- a/host-configs/quartz-toss_4_x86_64_ib-gcc@10.3.1.cmake +++ b/host-configs/quartz-toss_4_x86_64_ib-gcc@10.3.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/gmake-4.4.1-hnowwppvujezizfysc64xc2myqqulzcn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/blt-0.6.1.4-ee4ftwhz24yhie53n4ximxniibs3wair;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-gcc-10.3.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/gmake-4.4.1-hnowwppvujezizfysc64xc2myqqulzcn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/libunwind-1.6.2-z2puyqr6zlbynia4pzb3dof3zdy4ijeo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/blt-0.6.1.4-ee4ftwhz24yhie53n4ximxniibs3wair;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-gcc-10.3.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axom-develop-xiuioy7dxvykmlob3vudqstogdvorl4v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axom-develop-xiuioy7dxvykmlob3vudqstogdvorl4v/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axom-develop-b4ri2oktvmp6kswh2of4u5ev2643v43e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axom-develop-b4ri2oktvmp6kswh2of4u5ev2643v43e/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/libunwind-1.6.2-z2puyqr6zlbynia4pzb3dof3zdy4ijeo/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axom-develop-xiuioy7dxvykmlob3vudqstogdvorl4v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axom-develop-xiuioy7dxvykmlob3vudqstogdvorl4v/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axom-develop-b4ri2oktvmp6kswh2of4u5ev2643v43e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axom-develop-b4ri2oktvmp6kswh2of4u5ev2643v43e/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/libunwind-1.6.2-z2puyqr6zlbynia4pzb3dof3zdy4ijeo/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -71,10 +71,14 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/gcc-10.3.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/gcc-10.3.1" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-4kilrxtbwx77jailemgoe5nngpbfixbc" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-lt45w3hqeqjssirpwmga5pv3iofq5h7n" CACHE PATH "") + set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv" CACHE PATH "") @@ -89,7 +93,7 @@ set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4" C set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms" CACHE PATH "") -set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-nimozblni7qmgxh7m4lpclv4ducbwmd7" CACHE PATH "") +set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc" CACHE PATH "") set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k" CACHE PATH "") diff --git a/host-configs/quartz-toss_4_x86_64_ib-intel@2022.1.0.cmake b/host-configs/quartz-toss_4_x86_64_ib-intel@2022.1.0.cmake index 653b0e59b0..94910f40c2 100644 --- a/host-configs/quartz-toss_4_x86_64_ib-intel@2022.1.0.cmake +++ b/host-configs/quartz-toss_4_x86_64_ib-intel@2022.1.0.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/blt-0.6.1.4-3p2ecutmo7drpwwvvsgtcqxakxjoy573;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/gmake-4.4.1-giduhrefimvdwblsuh6cmqipc474toi5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/blt-0.6.1.4-3p2ecutmo7drpwwvvsgtcqxakxjoy573;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/gmake-4.4.1-giduhrefimvdwblsuh6cmqipc474toi5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/libunwind-1.6.2-ozufa7ibeygwcdlewe4kvzvh4qwapxsl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/axom-develop-b5nyfo62pnpgj3tghzjjeu3ofmaj6h34/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/axom-develop-b5nyfo62pnpgj3tghzjjeu3ofmaj6h34/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/libunwind-1.6.2-ozufa7ibeygwcdlewe4kvzvh4qwapxsl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/axom-develop-b5nyfo62pnpgj3tghzjjeu3ofmaj6h34/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/axom-develop-b5nyfo62pnpgj3tghzjjeu3ofmaj6h34/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/libunwind-1.6.2-ozufa7ibeygwcdlewe4kvzvh4qwapxsl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/intel/icc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/intel/icc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/intel/icpc" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/intel/icpc" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/spack/lib/spack/env/intel/ifort" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/spack/lib/spack/env/intel/ifort" CACHE PATH "") else() @@ -71,10 +71,14 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_06_16_55_14/intel-2022.1.0" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_15_18_33_33/intel-2022.1.0" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-lk54yf3oy3qnsnyws6optaxmmniitj6p" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-vmtj4727oinpe3lsumvav2b6ivkpy462" CACHE PATH "") + set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d" CACHE PATH "") From 6dd4f257b870b22f7db63bacd8573fb22baad2be Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 12:32:53 -0700 Subject: [PATCH 069/592] Adds host-configs for LLNL toss4_cray platform on tioga --- ...oss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake b/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake index c64236a377..92ebe51e3f 100644 --- a/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake +++ b/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/blt-0.6.1.4-rsolo2redxjrxxepfboqczt24wsewi2r;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/blt-0.6.1.4-rsolo2redxjrxxepfboqczt24wsewi2r;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/axom-develop-uidv2vofjqx7373o6tz53up2jxpgkev4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/spack/lib/spack/env/clang/flang" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/spack/lib/spack/env/clang/flang" CACHE PATH "") else() @@ -104,10 +104,14 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_06_20_25_59/clang-16.0.0" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5" CACHE PATH "") +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu" CACHE PATH "") + set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v" CACHE PATH "") From c2e8c427c970c5b4945c78c437223bac6f8a6bba Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Sun, 17 Mar 2024 18:31:59 -0700 Subject: [PATCH 070/592] Update docker images for azure pipelines They now use `caliper` and `adiak` --- azure-pipelines.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/azure-pipelines.yml b/azure-pipelines.yml index 77b746ff19..ed5115f44e 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -9,8 +9,8 @@ variables: DO_BUILD: 'yes' DO_TEST: 'yes' DO_CLEAN: 'no' - CLANG10_IMAGENAME: 'axom/tpls:clang-10_03-07-24_19h-20m' - GCC11_IMAGENAME: 'axom/tpls:gcc-11_03-07-24_19h-20m' + CLANG10_IMAGENAME: 'axom/tpls:clang-10_03-17-24_21h-01m' + GCC11_IMAGENAME: 'axom/tpls:gcc-11_03-17-24_21h-01m' system.debug: false jobs: From 0560d5813077766fdc986aa30f744e9f75ae1c8a Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 22:11:11 -0700 Subject: [PATCH 071/592] Adds host-configs for LLNL blueos platform on rzansel --- ...lueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake | 22 +++++++++++-------- ..._3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake | 22 +++++++++++-------- ...l-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake | 22 +++++++++++-------- ...eos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake | 22 +++++++++++-------- ...l-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake | 22 +++++++++++-------- ...eos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake | 22 +++++++++++-------- 6 files changed, 78 insertions(+), 54 deletions(-) diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake index 1186b7b47d..ac7819d5e7 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/blt-0.6.1.4-7qqqx4bcdk5wy7ycpymq6engsddxn4y2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/blt-0.6.1.4-7qqqx4bcdk5wy7ycpymq6engsddxn4y2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -83,15 +83,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de" CACHE PATH "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake index 62f8d9ee4e..da0c63d2c7 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/blt-0.6.1.4-niyj5uvj7qaxuceaoycpenida5z56ied;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/blt-0.6.1.4-niyj5uvj7qaxuceaoycpenida5z56ied;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -111,15 +111,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/clang-10.0.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i" CACHE PATH "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake index 40c54cf48b..3f221fb066 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/blt-0.6.1.4-6lng5thw5prsyymfu2yzy7xdwtwij6ij;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/blt-0.6.1.4-6lng5thw5prsyymfu2yzy7xdwtwij6ij;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -75,15 +75,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a" CACHE PATH "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake index 67dab0234b..004e185786 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/blt-0.6.1.4-ldmftyubptq3py7xr6wirrg2eorm357z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/blt-0.6.1.4-ldmftyubptq3py7xr6wirrg2eorm357z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -103,15 +103,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/gcc-8.3.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7" CACHE PATH "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake index 0d74d794e8..a5f4e607a0 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/blt-0.6.1.4-neovqnvk3tazh7clai422vfazmbjeaqp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/blt-0.6.1.4-neovqnvk3tazh7clai422vfazmbjeaqp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -87,15 +87,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b" CACHE PATH "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake index 38742862c5..ccc51c7951 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/blt-0.6.1.4-lhkhl33mqna6lfzkqz5fbwzy6by5effo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/blt-0.6.1.4-lhkhl33mqna6lfzkqz5fbwzy6by5effo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -115,15 +115,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_07_00_02_23/xl-16.1.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux" CACHE PATH "") From 3eefd1add88145dafcab46fbd3fe9b8b017817f2 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 22:11:41 -0700 Subject: [PATCH 072/592] Removes host-configs on rzgenie -- use rzwhippet ones instead for toss4 --- ...zgenie-toss_4_x86_64_ib-clang@14.0.6.cmake | 138 ------------------ .../rzgenie-toss_4_x86_64_ib-gcc@10.3.1.cmake | 136 ----------------- ...enie-toss_4_x86_64_ib-intel@2022.1.0.cmake | 116 --------------- 3 files changed, 390 deletions(-) delete mode 100644 host-configs/rzgenie-toss_4_x86_64_ib-clang@14.0.6.cmake delete mode 100644 host-configs/rzgenie-toss_4_x86_64_ib-gcc@10.3.1.cmake delete mode 100644 host-configs/rzgenie-toss_4_x86_64_ib-intel@2022.1.0.cmake diff --git a/host-configs/rzgenie-toss_4_x86_64_ib-clang@14.0.6.cmake b/host-configs/rzgenie-toss_4_x86_64_ib-clang@14.0.6.cmake deleted file mode 100644 index 31da21925c..0000000000 --- a/host-configs/rzgenie-toss_4_x86_64_ib-clang@14.0.6.cmake +++ /dev/null @@ -1,138 +0,0 @@ -#------------------------------------------------------------------------------ -# !!!! This is a generated file, edit at own risk !!!! -#------------------------------------------------------------------------------ -# CMake executable path: /usr/tce/bin/cmake -#------------------------------------------------------------------------------ - -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/mfem-4.6.0-2o3e3zv4evsmrgwpwroyhpmj2pot7fgj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/hypre-2.24.0-k33flgav4be3pqx5hlzmgxqsege5er4p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/blt-0.6.1.4-oouarzy7h3sj5quygkhjaduigaxbj4at;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/gmake-4.4.1-jimcbwsnakmlfui3jg7a4e6327ry222f;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-clang-14.0.6;/usr/tce/packages/clang/clang-14.0.6" CACHE STRING "") - -set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") - -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axom-develop-5hpzhtmywppnpol3crmlzn4oxctfyukn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axom-develop-5hpzhtmywppnpol3crmlzn4oxctfyukn/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/mfem-4.6.0-2o3e3zv4evsmrgwpwroyhpmj2pot7fgj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/hypre-2.24.0-k33flgav4be3pqx5hlzmgxqsege5er4p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") - -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axom-develop-5hpzhtmywppnpol3crmlzn4oxctfyukn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axom-develop-5hpzhtmywppnpol3crmlzn4oxctfyukn/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/zlib-ng-2.1.5-lkg7eg7nky6w74eujzgmp6hnhkaf2w7p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/metis-5.1.0-ggcpxjmhkbi3nwtqmgu7dal2rsedyza5/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/parmetis-4.0.3-de7rslbjz6xchwd4jlec2iswp6yf4yt7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/mfem-4.6.0-2o3e3zv4evsmrgwpwroyhpmj2pot7fgj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/hypre-2.24.0-k33flgav4be3pqx5hlzmgxqsege5er4p/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6/fmt-10.2.1-lfndxhuits6wwazxaoj5dxl3ix3hw2cc/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") - -set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") - -#------------------------------------------------------------------------------ -# Compilers -#------------------------------------------------------------------------------ -# Compiler Spec: clang@=14.0.6 -#------------------------------------------------------------------------------ -if(DEFINED ENV{SPACK_CC}) - - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/clang/clang" CACHE PATH "") - - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/clang/clang++" CACHE PATH "") - - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/clang/gfortran" CACHE PATH "") - -else() - - set(CMAKE_C_COMPILER "/usr/tce/packages/clang/clang-14.0.6/bin/clang" CACHE PATH "") - - set(CMAKE_CXX_COMPILER "/usr/tce/packages/clang/clang-14.0.6/bin/clang++" CACHE PATH "") - - set(CMAKE_Fortran_COMPILER "/usr/tce/packages/gcc/gcc-10.3.1/bin/gfortran" CACHE PATH "") - -endif() - -set(ENABLE_FORTRAN ON CACHE BOOL "") - -set(BLT_EXE_LINKER_FLAGS " -Wl,-rpath,/usr/tce/packages/clang/clang-14.0.6/lib" CACHE STRING "Adds a missing libstdc++ rpath") - -#------------------------------------------------------------------------------ -# MPI -#------------------------------------------------------------------------------ - -set(MPI_C_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/bin/mpicc" CACHE PATH "") - -set(MPI_CXX_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/bin/mpicxx" CACHE PATH "") - -set(MPI_Fortran_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-clang-14.0.6/bin/mpif90" CACHE PATH "") - -set(MPIEXEC_NUMPROC_FLAG "-n" CACHE STRING "") - -set(ENABLE_MPI ON CACHE BOOL "") - -set(MPIEXEC_EXECUTABLE "/usr/bin/srun" CACHE PATH "") - -#------------------------------------------------------------------------------ -# Hardware -#------------------------------------------------------------------------------ - -#------------------------------------------------ -# Hardware Specifics -#------------------------------------------------ - -set(ENABLE_OPENMP ON CACHE BOOL "") - -set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") - -#------------------------------------------------------------------------------ -# TPLs -#------------------------------------------------------------------------------ - -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/clang-14.0.6" CACHE PATH "") - -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-sioyszp7ze6fzubtdslxlpkxzojic7hq" CACHE PATH "") - -set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-eojdjy4bkke6p7mtj47tsbk35f3ag3us" CACHE PATH "") - -set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2o3e3zv4evsmrgwpwroyhpmj2pot7fgj" CACHE PATH "") - -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-j75364eqyn3yxqzod7t4v3hpbaw3zqg4" CACHE PATH "") - -set(LUA_DIR "/usr" CACHE PATH "") - -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-i7u43vvuic25rvjjhkeblvxeitkvzjwy" CACHE PATH "") - -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-jhuql5fc2vhya4sdl7g4nlcrzaoycqai" CACHE PATH "") - -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-ejjy6cua3jj5bnwbk3r6x46ffgqe6tip" CACHE PATH "") - -set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-t7t35dyvwswfrk3lp2k4tcjpiyyylgr6" CACHE PATH "") - -set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-3lkpy2ktv66bhbyxtg7r6xca2shap6sw" CACHE PATH "") - -set(DTCMP_DIR "${TPL_ROOT}/dtcmp-1.1.4-scoxi2onj4nu3g5em5dgc4imwzihgfjj" CACHE PATH "") - -set(SPATH_DIR "${TPL_ROOT}/spath-0.2.0-5ypljdbn6yf6ab3jabzpeeuxxvbm6vix" CACHE PATH "") - -set(AXL_DIR "${TPL_ROOT}/axl-0.7.1-dvovqn3v6stb27lftz5c2jv7ykyt74o3" CACHE PATH "") - -set(LWGRP_DIR "${TPL_ROOT}/lwgrp-1.0.5-rdvuqikm56okeru5jkroem5tpaybke3q" CACHE PATH "") - -set(ER_DIR "${TPL_ROOT}/er-0.2.0-pfk7tzcycgqnc73twpnleapauynyrmuo" CACHE PATH "") - -set(RANKSTR_DIR "${TPL_ROOT}/rankstr-0.1.0-t7qtfe3uihx4s2ia5gft2rvwmbfsaqcz" CACHE PATH "") - -set(REDSET_DIR "${TPL_ROOT}/redset-0.2.0-yg22aoerdpabedvtormddcankg4lkitu" CACHE PATH "") - -set(SHUFFILE_DIR "${TPL_ROOT}/shuffile-0.2.0-lcyevsv6yv4cwtahb3kt5h4emqtfwwvb" CACHE PATH "") - -set(LIBYOGRT_DIR "${TPL_ROOT}/libyogrt-1.33-z45arsyuiqgmqeo3vnzdiosnbyksfypl" CACHE PATH "") - -#------------------------------------------------------------------------------ -# Devtools -#------------------------------------------------------------------------------ - -set(DEVTOOLS_ROOT "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/2023_10_17_16_15_32/._view/ypfidjpdm7fhkqcpekza67w5xgiaw7yg" CACHE PATH "") - -set(CLANGFORMAT_EXECUTABLE "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0/bin/clang-format" CACHE PATH "") - -set(PYTHON_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/python3.10" CACHE PATH "") - -set(JSONSCHEMA_EXECUTABLE "${TPL_ROOT}/py-jsonschema-2.6.0-6j5dc4xbppedseqpxhmnvdsvfm5nohqz/bin/jsonschema" CACHE PATH "") - -set(ENABLE_DOCS ON CACHE BOOL "") - -set(SPHINX_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/sphinx-build" CACHE PATH "") - -set(SHROUD_EXECUTABLE "/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0/bin/shroud" CACHE PATH "") - -set(CPPCHECK_EXECUTABLE "${DEVTOOLS_ROOT}/cppcheck-2.9/bin/cppcheck" CACHE PATH "") - -set(DOXYGEN_EXECUTABLE "${DEVTOOLS_ROOT}/doxygen-1.9.6/bin/doxygen" CACHE PATH "") - - diff --git a/host-configs/rzgenie-toss_4_x86_64_ib-gcc@10.3.1.cmake b/host-configs/rzgenie-toss_4_x86_64_ib-gcc@10.3.1.cmake deleted file mode 100644 index 090c2f62dc..0000000000 --- a/host-configs/rzgenie-toss_4_x86_64_ib-gcc@10.3.1.cmake +++ /dev/null @@ -1,136 +0,0 @@ -#------------------------------------------------------------------------------ -# !!!! This is a generated file, edit at own risk !!!! -#------------------------------------------------------------------------------ -# CMake executable path: /usr/tce/bin/cmake -#------------------------------------------------------------------------------ - -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/gmake-4.4.1-hnowwppvujezizfysc64xc2myqqulzcn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/blt-0.6.1.4-ee4ftwhz24yhie53n4ximxniibs3wair;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce;/usr/tce/packages/mvapich2/mvapich2-2.3.7-gcc-10.3.1" CACHE STRING "") - -set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") - -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axom-develop-7y7edht7m7fpp3mt27ogvq6ymbcldzmq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axom-develop-7y7edht7m7fpp3mt27ogvq6ymbcldzmq/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") - -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axom-develop-7y7edht7m7fpp3mt27ogvq6ymbcldzmq/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axom-develop-7y7edht7m7fpp3mt27ogvq6ymbcldzmq/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/gcc-runtime-10.3.1-yxmwjg76ccmk3rbqtfni7b56ykrldyrb/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/zlib-ng-2.1.5-shzp76r665h2g3lnqspfmluapd7jxtrt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/metis-5.1.0-au7rbsfu6yv7cazug6635jzvb2gwy7st/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/parmetis-4.0.3-olkucdyohy6nglxyp6yqvflfxhhtjji4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/hypre-2.24.0-fqukfipx623hwcdtl44ul6m7gf436bea/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1/fmt-10.2.1-vsppemwn4lv42jffltnu2m5wk7pa4mh4/lib64;/collab/usr/global/tools/tce4/packages/gcc/gcc-10.3.1/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") - -set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") - -#------------------------------------------------------------------------------ -# Compilers -#------------------------------------------------------------------------------ -# Compiler Spec: gcc@=10.3.1 -#------------------------------------------------------------------------------ -if(DEFINED ENV{SPACK_CC}) - - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/gcc/g++" CACHE PATH "") - - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") - -else() - - set(CMAKE_C_COMPILER "/usr/tce/packages/gcc/gcc-10.3.1/bin/gcc" CACHE PATH "") - - set(CMAKE_CXX_COMPILER "/usr/tce/packages/gcc/gcc-10.3.1/bin/g++" CACHE PATH "") - - set(CMAKE_Fortran_COMPILER "/usr/tce/packages/gcc/gcc-10.3.1/bin/gfortran" CACHE PATH "") - -endif() - -set(ENABLE_FORTRAN ON CACHE BOOL "") - -#------------------------------------------------------------------------------ -# MPI -#------------------------------------------------------------------------------ - -set(MPI_C_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/bin/mpicc" CACHE PATH "") - -set(MPI_CXX_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/bin/mpicxx" CACHE PATH "") - -set(MPI_Fortran_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-gcc-10.3.1/bin/mpif90" CACHE PATH "") - -set(MPIEXEC_NUMPROC_FLAG "-n" CACHE STRING "") - -set(ENABLE_MPI ON CACHE BOOL "") - -set(MPIEXEC_EXECUTABLE "/usr/bin/srun" CACHE PATH "") - -#------------------------------------------------------------------------------ -# Hardware -#------------------------------------------------------------------------------ - -#------------------------------------------------ -# Hardware Specifics -#------------------------------------------------ - -set(ENABLE_OPENMP ON CACHE BOOL "") - -set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") - -#------------------------------------------------------------------------------ -# TPLs -#------------------------------------------------------------------------------ - -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/gcc-10.3.1" CACHE PATH "") - -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-2gxyktbxfdki7l62knbd2gcv2po5mnnz" CACHE PATH "") - -set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fahftlekwziw2ls4bezzaviuke4kvqyz" CACHE PATH "") - -set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-72vdexr6wsfxessfqnjamz4yw7bbimzv" CACHE PATH "") - -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-qdwxt3e3mv7bjt3xqcybad7beymgxcsn" CACHE PATH "") - -set(LUA_DIR "/usr" CACHE PATH "") - -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-lgda75dl72dsc3fpkaboonrastlb533i" CACHE PATH "") - -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-2edi7papg24dx6cmzuu4cvli6gn5ula4" CACHE PATH "") - -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-54ph6bxcskqc6vyj2yumw2c453rdw3ms" CACHE PATH "") - -set(SCR_DIR "${TPL_ROOT}/scr-3.0.1-53wid77fnqp54as4ssxj6yln3ebatfqc" CACHE PATH "") - -set(KVTREE_DIR "${TPL_ROOT}/kvtree-1.3.0-ox6ll5w2vlux2gncxlxp6f7sduc5we3k" CACHE PATH "") - -set(DTCMP_DIR "${TPL_ROOT}/dtcmp-1.1.4-fhlas27vbqequpdrt7hs4z5y7fu6fcux" CACHE PATH "") - -set(SPATH_DIR "${TPL_ROOT}/spath-0.2.0-vy4oatc22e4yhneh564uexojguzk64hl" CACHE PATH "") - -set(AXL_DIR "${TPL_ROOT}/axl-0.7.1-it2ovw5easrshsv2ii3y7ui7sykejtl3" CACHE PATH "") - -set(LWGRP_DIR "${TPL_ROOT}/lwgrp-1.0.5-xy2pfakxxt737yqixkijiopg5aqe6qy4" CACHE PATH "") - -set(ER_DIR "${TPL_ROOT}/er-0.2.0-ssi5sg74fzuszg64bx4w36k74aylefbs" CACHE PATH "") - -set(RANKSTR_DIR "${TPL_ROOT}/rankstr-0.1.0-rtae4hecutfnw3p2c3pw2r23wel57wxe" CACHE PATH "") - -set(REDSET_DIR "${TPL_ROOT}/redset-0.2.0-26dcmicvi4gl3n7bezyvvt6tzxgfhyt4" CACHE PATH "") - -set(SHUFFILE_DIR "${TPL_ROOT}/shuffile-0.2.0-2dqga6mipogmwwnegz6ruroxjjpuydns" CACHE PATH "") - -set(LIBYOGRT_DIR "${TPL_ROOT}/libyogrt-1.33-5ylxltz7yzkytfwjqsdy7alvfpvblpfa" CACHE PATH "") - -#------------------------------------------------------------------------------ -# Devtools -#------------------------------------------------------------------------------ - -set(DEVTOOLS_ROOT "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/2023_10_17_16_15_32/._view/ypfidjpdm7fhkqcpekza67w5xgiaw7yg" CACHE PATH "") - -set(CLANGFORMAT_EXECUTABLE "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0/bin/clang-format" CACHE PATH "") - -set(PYTHON_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/python3.10" CACHE PATH "") - -set(JSONSCHEMA_EXECUTABLE "${TPL_ROOT}/py-jsonschema-2.6.0-lxk3nz6n2wxarwsyghge5l6jio4pze63/bin/jsonschema" CACHE PATH "") - -set(ENABLE_DOCS ON CACHE BOOL "") - -set(SPHINX_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/sphinx-build" CACHE PATH "") - -set(SHROUD_EXECUTABLE "/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0/bin/shroud" CACHE PATH "") - -set(CPPCHECK_EXECUTABLE "${DEVTOOLS_ROOT}/cppcheck-2.9/bin/cppcheck" CACHE PATH "") - -set(DOXYGEN_EXECUTABLE "${DEVTOOLS_ROOT}/doxygen-1.9.6/bin/doxygen" CACHE PATH "") - - diff --git a/host-configs/rzgenie-toss_4_x86_64_ib-intel@2022.1.0.cmake b/host-configs/rzgenie-toss_4_x86_64_ib-intel@2022.1.0.cmake deleted file mode 100644 index 69fe3de6c4..0000000000 --- a/host-configs/rzgenie-toss_4_x86_64_ib-intel@2022.1.0.cmake +++ /dev/null @@ -1,116 +0,0 @@ -#------------------------------------------------------------------------------ -# !!!! This is a generated file, edit at own risk !!!! -#------------------------------------------------------------------------------ -# CMake executable path: /usr/tce/bin/cmake -#------------------------------------------------------------------------------ - -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/blt-0.6.1.4-3p2ecutmo7drpwwvvsgtcqxakxjoy573;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/gmake-4.4.1-giduhrefimvdwblsuh6cmqipc474toi5;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/cppcheck-2.9;/usr/tce" CACHE STRING "") - -set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") - -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") - -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/axom-develop-ma6pw2s3obh5afi3kvbgksqemjcs3ty7/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/zlib-ng-2.1.5-jtmqc4b5fqadcqbwagtun6kwe6geexbw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/metis-5.1.0-hk6ipui6fnixwdyloqmqbsixqhtv5hxw/lib;/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/parmetis-4.0.3-hattuaxqypmcfeqr3nvedmojwbgiora2/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/hypre-2.24.0-czbxd2tmdjbl7v4nwommsh7xgw7ewgla/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/lib;/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/python-3.10.10/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0/fmt-10.2.1-jltnp6nb3minlrrafmdenoakubdzom57/lib64;/usr/tce/backend/installations/linux-rhel8-x86_64/gcc-10.3.1/intel-oneapi-compilers-2022.1.0-43xp3r52jx2q2rkf3ctzvskqu572xbky/compiler/2022.1.0/linux/compiler/lib/intel64_lin;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") - -set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") - -#------------------------------------------------------------------------------ -# Compilers -#------------------------------------------------------------------------------ -# Compiler Spec: intel@=2022.1.0 -#------------------------------------------------------------------------------ -if(DEFINED ENV{SPACK_CC}) - - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/intel/icc" CACHE PATH "") - - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/intel/icpc" CACHE PATH "") - - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/spack/lib/spack/env/intel/ifort" CACHE PATH "") - -else() - - set(CMAKE_C_COMPILER "/usr/tce/packages/intel/intel-2022.1.0/compiler/2022.1.0/linux/bin/icx" CACHE PATH "") - - set(CMAKE_CXX_COMPILER "/usr/tce/packages/intel/intel-2022.1.0/compiler/2022.1.0/linux/bin/icpx" CACHE PATH "") - - set(CMAKE_Fortran_COMPILER "/usr/tce/packages/intel/intel-2022.1.0/compiler/2022.1.0/linux/bin/ifx" CACHE PATH "") - -endif() - -set(ENABLE_FORTRAN ON CACHE BOOL "") - -#------------------------------------------------------------------------------ -# MPI -#------------------------------------------------------------------------------ - -set(MPI_C_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/bin/mpicc" CACHE PATH "") - -set(MPI_CXX_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/bin/mpicxx" CACHE PATH "") - -set(MPI_Fortran_COMPILER "/usr/tce/packages/mvapich2/mvapich2-2.3.6-intel-2022.1.0/bin/mpif90" CACHE PATH "") - -set(MPIEXEC_NUMPROC_FLAG "-n" CACHE STRING "") - -set(ENABLE_MPI ON CACHE BOOL "") - -set(MPIEXEC_EXECUTABLE "/usr/bin/srun" CACHE PATH "") - -#------------------------------------------------------------------------------ -# Hardware -#------------------------------------------------------------------------------ - -#------------------------------------------------ -# Hardware Specifics -#------------------------------------------------ - -set(ENABLE_OPENMP ON CACHE BOOL "") - -set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") - -#------------------------------------------------------------------------------ -# TPLs -#------------------------------------------------------------------------------ - -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib/2024_03_07_00_00_58/intel-2022.1.0" CACHE PATH "") - -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-t745zbwmn5ffzo7whgwxmz5p5w2ym37z" CACHE PATH "") - -set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ovky3pniupirnys6mtf24ke5sb64mkbr" CACHE PATH "") - -set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-hma2wvr5tv3fkry6kdqfxmtsnqg6fv4d" CACHE PATH "") - -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-2l37bduu2kjsgmhjxbfdgchsha2di2of" CACHE PATH "") - -set(LUA_DIR "/usr" CACHE PATH "") - -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-v5ckygwjzmo7e2rts5qxwgfswhhpeqta" CACHE PATH "") - -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-4nxnup6vxwkwkinxdzzinkxul6vk2lsj" CACHE PATH "") - -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-xyur27wnppnansskdldrlqyzormhcr4e" CACHE PATH "") - -# scr not built - -#------------------------------------------------------------------------------ -# Devtools -#------------------------------------------------------------------------------ - -set(DEVTOOLS_ROOT "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/2023_10_17_16_15_32/._view/ypfidjpdm7fhkqcpekza67w5xgiaw7yg" CACHE PATH "") - -set(CLANGFORMAT_EXECUTABLE "/collab/usr/gapps/axom/devtools/toss_4_x86_64_ib/latest/llvm-10.0.0/bin/clang-format" CACHE PATH "") - -set(PYTHON_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/python3.10" CACHE PATH "") - -set(JSONSCHEMA_EXECUTABLE "${TPL_ROOT}/py-jsonschema-2.6.0-scktpdojmezaljg2bxfbzmf5lx3nmwvc/bin/jsonschema" CACHE PATH "") - -set(ENABLE_DOCS ON CACHE BOOL "") - -set(SPHINX_EXECUTABLE "${DEVTOOLS_ROOT}/python-3.10.10/bin/sphinx-build" CACHE PATH "") - -set(SHROUD_EXECUTABLE "/collab/usr/gapps/shroud/public/toss_4_x86_64_ib/shroud-0.13.0/bin/shroud" CACHE PATH "") - -set(CPPCHECK_EXECUTABLE "${DEVTOOLS_ROOT}/cppcheck-2.9/bin/cppcheck" CACHE PATH "") - -set(DOXYGEN_EXECUTABLE "${DEVTOOLS_ROOT}/doxygen-1.9.6/bin/doxygen" CACHE PATH "") - - From 6ba66f709a51562f05dc2ded4fd29e61a1f73a9c Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 22:13:51 -0700 Subject: [PATCH 073/592] Adds host-configs for LLNL blueos platform on lassen --- ...lueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake | 22 +++++++++++-------- ..._3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake | 22 +++++++++++-------- ...n-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake | 22 +++++++++++-------- ...eos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake | 22 +++++++++++-------- ...n-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake | 22 +++++++++++-------- ...eos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake | 22 +++++++++++-------- 6 files changed, 78 insertions(+), 54 deletions(-) diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake index ac2f466390..7eb9db3e44 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/blt-0.6.1.4-7qqqx4bcdk5wy7ycpymq6engsddxn4y2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/blt-0.6.1.4-7qqqx4bcdk5wy7ycpymq6engsddxn4y2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/axom-develop-wpre5jwym4gwxknegvw5mdlqmnqxgv3b/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -83,15 +83,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de" CACHE PATH "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake index 8da84005d4..42bea7be76 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/blt-0.6.1.4-niyj5uvj7qaxuceaoycpenida5z56ied;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/blt-0.6.1.4-niyj5uvj7qaxuceaoycpenida5z56ied;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/axom-develop-ndiry4fjmug7ogvh36noblti67rdegj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -111,15 +111,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/clang-10.0.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i" CACHE PATH "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake index 2a1c2d905f..71a8363f40 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/blt-0.6.1.4-6lng5thw5prsyymfu2yzy7xdwtwij6ij;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/blt-0.6.1.4-6lng5thw5prsyymfu2yzy7xdwtwij6ij;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/axom-develop-mrrvgirrsjrtdsyltswvulji3his36xi/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -75,15 +75,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a" CACHE PATH "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake index 1b51e8b4dd..ed47913e6d 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/blt-0.6.1.4-ldmftyubptq3py7xr6wirrg2eorm357z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/blt-0.6.1.4-ldmftyubptq3py7xr6wirrg2eorm357z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/axom-develop-qewlj77x5de57xeii6pfarnsgahvapao/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -103,15 +103,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/gcc-8.3.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7" CACHE PATH "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake index aacc63f587..aad45ec839 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/blt-0.6.1.4-neovqnvk3tazh7clai422vfazmbjeaqp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/blt-0.6.1.4-neovqnvk3tazh7clai422vfazmbjeaqp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/axom-develop-mwe36w3aijwdbfu4ckdjv2wksrvqbsj2/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -87,15 +87,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b" CACHE PATH "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake index 2c16ebf051..5b848765bd 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/blt-0.6.1.4-lhkhl33mqna6lfzkqz5fbwzy6by5effo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/blt-0.6.1.4-lhkhl33mqna6lfzkqz5fbwzy6by5effo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/axom-develop-woz7ol2eqtmsmfz3sckoddilap5hixzq/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -115,15 +115,19 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_06_20_19_26/xl-16.1.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux" CACHE PATH "") From c94c3759f48b177a3bbabe63bfbe4289fdee742f Mon Sep 17 00:00:00 2001 From: Kenny Weiss Date: Thu, 21 Mar 2024 15:38:29 -0700 Subject: [PATCH 074/592] Apply suggestions from code review Co-authored-by: Chris White --- src/thirdparty/tests/CMakeLists.txt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/thirdparty/tests/CMakeLists.txt b/src/thirdparty/tests/CMakeLists.txt index f20a7b72bd..1ff63d7575 100644 --- a/src/thirdparty/tests/CMakeLists.txt +++ b/src/thirdparty/tests/CMakeLists.txt @@ -128,8 +128,8 @@ endif() if ( CALIPER_FOUND ) set( caliper_smoke_dependencies caliper gtest ) - blt_list_append( TO caliper_smoke_dependencies ELEMENTS mpi IF ENABLE_MPI) - blt_list_append( TO caliper_smoke_dependencies ELEMENTS cuda_runtime IF ENABLE_CUDA) + blt_list_append( TO caliper_smoke_dependencies ELEMENTS mpi IF AXOM_ENABLE_MPI) + blt_list_append( TO caliper_smoke_dependencies ELEMENTS cuda_runtime IF AXOM_ENABLE_CUDA) blt_add_executable( NAME caliper_smoke_test SOURCES caliper_smoke.cpp @@ -145,7 +145,7 @@ endif() if ( ADIAK_FOUND ) set( adiak_smoke_dependencies adiak::adiak gtest ) - blt_list_append( TO adiak_smoke_dependencies ELEMENTS mpi IF ENABLE_MPI) + blt_list_append( TO adiak_smoke_dependencies ELEMENTS mpi IF AXOM_ENABLE_MPI) blt_add_executable( NAME adiak_smoke_test SOURCES adiak_smoke.cpp From 41195fc0e2cb0926464749b88d0030bfbb5cad9f Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Thu, 21 Mar 2024 15:57:46 -0700 Subject: [PATCH 075/592] Updated how deps are added to the cache file in axom's spack package Per PR review suggestion from @white238 Co-authored-by: Chris White --- scripts/spack/packages/axom/package.py | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/scripts/spack/packages/axom/package.py b/scripts/spack/packages/axom/package.py index 2bf028ad0c..975c2d81e7 100644 --- a/scripts/spack/packages/axom/package.py +++ b/scripts/spack/packages/axom/package.py @@ -487,13 +487,20 @@ def initconfig_package_entries(self): entries.append(cmake_cache_path("CONDUIT_DIR", conduit_dir)) # optional tpls - for dep in ("adiak", "caliper", "c2c", "mfem", "hdf5", "lua", "raja", "umpire"): - if spec.satisfies("^{0}".format(dep)): + for dep in ("c2c", "mfem", "hdf5", "lua", "raja", "umpire"): + if "+%s" % dep in spec: dep_dir = get_spec_path(spec, dep, path_replacements) - entries.append(cmake_cache_path("{}_DIR".format(dep.upper()), dep_dir)) + entries.append(cmake_cache_path("%s_DIR" % dep.upper(), dep_dir)) else: entries.append("# %s not built\n" % dep.upper()) + if "+profiling" in spec: + dep_dir = get_spec_path(spec, "adiak", path_replacements) + entries.append(cmake_cache_path("ADIAK_DIR", dep_dir)) + + dep_dir = get_spec_path(spec, "caliper", path_replacements) + entries.append(cmake_cache_path("CALIPER_DIR", dep_dir)) + if "+umpire" in spec and spec.satisfies("^camp"): dep_dir = get_spec_path(spec, "camp", path_replacements) entries.append(cmake_cache_path("CAMP_DIR", dep_dir)) From b71f8a95b42c0debb521c5554d36ef9a6496d940 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Thu, 21 Mar 2024 16:12:22 -0700 Subject: [PATCH 076/592] Removes build system handling for older versions of adiak and caliper --- .../thirdparty/SetupAxomThirdParty.cmake | 28 +++++-------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/src/cmake/thirdparty/SetupAxomThirdParty.cmake b/src/cmake/thirdparty/SetupAxomThirdParty.cmake index 3162fa4965..2aaa734a60 100644 --- a/src/cmake/thirdparty/SetupAxomThirdParty.cmake +++ b/src/cmake/thirdparty/SetupAxomThirdParty.cmake @@ -198,28 +198,14 @@ if(ADIAK_DIR) "${ADIAK_DIR}/lib/cmake/adiak") message(STATUS "Checking for expected adiak target 'adiak::adiak'") - # Earlier versions of adiak (before 0.2.2) did not use the adiak:: alias - # or attach its include directory - if(TARGET adiak AND NOT TARGET adiak::adiak) - set_target_properties(adiak PROPERTIES IMPORTED_GLOBAL TRUE) - set_target_properties(adiak PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES ${adiak_INCLUDE_DIRS}) - add_library(adiak::adiak ALIAS adiak) - endif() - if (NOT TARGET adiak::adiak) message(FATAL_ERROR "adiak failed to load: ${ADIAK_DIR}") endif() - # Apply patch for adiak's missing `-ldl' for mpi when built statically get_target_property(_target_type adiak::adiak TYPE) - if(MPI_FOUND AND ${_target_type} STREQUAL "STATIC_LIBRARY") - if(TARGET adiak::mpi) - blt_patch_target(NAME adiak::mpi DEPENDS_ON dl) - else() - set_property(TARGET adiak APPEND PROPERTY INTERFACE_LINK_LIBRARIES dl) - endif() + if(MPI_FOUND AND ${_target_type} STREQUAL "STATIC_LIBRARY" AND TARGET adiak::mpi) + blt_patch_target(NAME adiak::mpi DEPENDS_ON dl) endif() message(STATUS "adiak loaded: ${ADIAK_DIR}") @@ -229,12 +215,16 @@ else() set(ADIAK_FOUND FALSE) endif() +#------------------------------------------------------------------------------ +# Caliper +#------------------------------------------------------------------------------ if(CALIPER_DIR) # Extra handling for caliper's cuda dependencies if(AXOM_ENABLE_CUDA) find_package(CUDAToolkit REQUIRED) endif() + axom_assert_is_directory(VARIABLE_NAME CALIPER_DIR) find_dependency(caliper REQUIRED PATHS "${CALIPER_DIR}" "${CALIPER_DIR}/share/cmake/caliper") @@ -243,11 +233,7 @@ if(CALIPER_DIR) if (NOT TARGET caliper) message(FATAL_ERROR "caliper failed to load: ${CALIPER_DIR}") endif() - - # Set the include directories as caliper does not completely configure the "adiak" target - set_target_properties(caliper PROPERTIES - INTERFACE_INCLUDE_DIRECTORIES ${caliper_INCLUDE_PATH}) - + message(STATUS "caliper loaded: ${CALIPER_DIR}") set(CALIPER_FOUND TRUE) else() From 3e84ee07bdf86a9bbeb1521770a516bfcfacaea1 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Sun, 17 Mar 2024 22:30:59 -0700 Subject: [PATCH 077/592] Updates RELEASE-NOTES --- RELEASE-NOTES.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index a0b6450396..65d36b3185 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -19,6 +19,11 @@ The Axom project release numbers follow [Semantic Versioning](http://semver.org/ ## [Unreleased] - Release date yyyy-mm-dd +### Added +- Adds prelimiary support for the optional `caliper` and `adiak` dependencies to axom. + These dependencies are added through axom's `spack` package via the new `+profiling` variant, + and are enabled in axom's build system via the `CALIPER_DIR` and `ADIAK_DIR` configuration paths. + ### Changed - Upgrades `vcpkg` usage for axom's automated Windows builds to its [2024.03.19 release](https://github.com/microsoft/vcpkg/releases/tag/2024.03.19). From e77ce175da9a0fb238b93f96d63e37e0585099e3 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 25 Mar 2024 12:59:27 -0700 Subject: [PATCH 078/592] Cleans up handling of cuda and rocm support in axom spack package Also includes some additional cleanup of the spack package. --- scripts/spack/packages/axom/package.py | 51 ++++++++++++++------------ 1 file changed, 28 insertions(+), 23 deletions(-) diff --git a/scripts/spack/packages/axom/package.py b/scripts/spack/packages/axom/package.py index 975c2d81e7..9db1511ea6 100644 --- a/scripts/spack/packages/axom/package.py +++ b/scripts/spack/packages/axom/package.py @@ -148,26 +148,26 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): depends_on("caliper+cuda", when="+cuda") depends_on("caliper~cuda", when="~cuda") - for dep in ["adiak", "caliper"]: - depends_on("{0}+mpi".format(dep), when="+mpi") - depends_on("{0}~mpi".format(dep), when="~mpi") - depends_on("{0}+shared".format(dep), when="+shared") - depends_on("{0}~shared".format(dep), when="~shared") + depends_on("caliper+rocm", when="+rocm") + depends_on("caliper~rocm", when="~rocm") + for dep in ["adiak", "caliper"]: + depends_on(f"{dep}+mpi", when="+mpi") + depends_on(f"{dep}~mpi", when="~mpi") + depends_on(f"{dep}+shared", when="+shared") + depends_on(f"{dep}~shared", when="~shared") for val in CudaPackage.cuda_arch_values: - raja_cuda = "raja +cuda cuda_arch={0}".format(val) - umpire_cuda = "umpire +cuda cuda_arch={0}".format(val) - depends_on(raja_cuda, when="+{0}".format(raja_cuda)) - depends_on(umpire_cuda, when="+{0}".format(umpire_cuda)) - depends_on("caliper cuda_arch={0}".format(val), when="+profiling cuda_arch={0}".format(val)) + ext_cuda_dep = f"+cuda cuda_arch={val}" + depends_on(f"raja {ext_cuda_dep}", when=f"+raja {ext_cuda_dep}") + depends_on(f"umpire {ext_cuda_dep}", when=f"+umpire {ext_cuda_dep}") + depends_on(f"caliper {ext_cuda_dep}", when=f"+profiling {ext_cuda_dep}") for val in ROCmPackage.amdgpu_targets: - raja_rocm = "raja +rocm amdgpu_target={0}".format(val) - umpire_rocm = "umpire +rocm amdgpu_target={0}".format(val) - depends_on(raja_rocm, when="+{0}".format(raja_rocm)) - depends_on(umpire_rocm, when="+{0}".format(umpire_rocm)) - depends_on("caliper amdgpu_target={0}".format(val), when="+profiling amdgpu_target={0}".format(val)) + ext_rocm_dep = f"+rocm amdgpu_target={val}" + depends_on(f"raja {ext_rocm_dep}", when=f"+raja {ext_rocm_dep}") + depends_on(f"umpire {ext_rocm_dep}", when=f"+umpire {ext_rocm_dep}") + depends_on(f"caliper {ext_rocm_dep}", when=f"+profiling {ext_rocm_dep}") depends_on("rocprim", when="+rocm") @@ -181,15 +181,19 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): depends_on("python", when="+python") # Devtools - depends_on("cppcheck", when="+devtools") - depends_on("doxygen", when="+devtools") - depends_on("graphviz", when="+devtools") - depends_on("python", when="+devtools") - depends_on("py-sphinx", when="+devtools") - depends_on("py-shroud", when="+devtools") - depends_on("py-jsonschema", when="+devtools") - depends_on("llvm+clang@10.0.0", when="+devtools", type="build") + with when("+devtools"): + depends_on("cppcheck") + depends_on("doxygen") + depends_on("graphviz") + depends_on("python") + depends_on("py-sphinx") + depends_on("py-shroud") + depends_on("py-jsonschema") + depends_on("llvm+clang@10.0.0", type="build") + # ----------------------------------------------------------------------- + # Conflicts + # ----------------------------------------------------------------------- # Hard requirement after Axom 0.6.1 conflicts("~cpp14", when="@0.6.2:") @@ -204,6 +208,7 @@ class Axom(CachedCMakePackage, CudaPackage, ROCmPackage): conflicts("^blt@:0.3.6", when="+rocm") + def flag_handler(self, name, flags): if self.spec.satisfies("%cce") and name == "fflags": flags.append("-ef") From 13a2d9ce51f7e925a986ac567175999c4846c4ee Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 25 Mar 2024 14:09:51 -0700 Subject: [PATCH 079/592] Updates rzvernal host-config --- ...ss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake b/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake index fc53ae896f..23ab74504e 100644 --- a/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake +++ b/host-configs/rzvernal-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/blt-0.6.1.4-rsolo2redxjrxxepfboqczt24wsewi2r;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/umpire-2024.02.0-6jlqi3ngybjnhvspf3rjvcjwktnjbpop;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/raja-2024.02.0-bhaizao6xxanpjtwl5btgkqauwsvgifl;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/camp-2024.02.0-dhfpr57dt7c4nlugbt6n2xxpd6nnww7q;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/blt-0.6.2-zsjepmygvfueu37ij5cen63iebbqhj7y;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/axom-develop-tfn3ghdmex7r2dgmrlrllb3xmhvqzr63/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/axom-develop-tfn3ghdmex7r2dgmrlrllb3xmhvqzr63/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/raja-2024.02.0-bhaizao6xxanpjtwl5btgkqauwsvgifl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/camp-2024.02.0-dhfpr57dt7c4nlugbt6n2xxpd6nnww7q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/umpire-2024.02.0-6jlqi3ngybjnhvspf3rjvcjwktnjbpop/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/axom-develop-ph5mewbkvndavia7nyzgiww3roxd3c4u/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/axom-develop-tfn3ghdmex7r2dgmrlrllb3xmhvqzr63/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/axom-develop-tfn3ghdmex7r2dgmrlrllb3xmhvqzr63/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/raja-2024.02.0-bhaizao6xxanpjtwl5btgkqauwsvgifl/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/camp-2024.02.0-dhfpr57dt7c4nlugbt6n2xxpd6nnww7q/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/umpire-2024.02.0-6jlqi3ngybjnhvspf3rjvcjwktnjbpop/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/spack/lib/spack/env/clang/flang" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/spack/lib/spack/env/clang/flang" CACHE PATH "") else() @@ -104,14 +104,10 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_17_44_45/clang-16.0.0" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_12_47_33/clang-16.0.0" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5" CACHE PATH "") -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu" CACHE PATH "") - set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v" CACHE PATH "") @@ -120,11 +116,15 @@ set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv" CACHE PA set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-bhaizao6xxanpjtwl5btgkqauwsvgifl" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-6jlqi3ngybjnhvspf3rjvcjwktnjbpop" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-dhfpr57dt7c4nlugbt6n2xxpd6nnww7q" CACHE PATH "") # scr not built From 1958b1543b5cdc41898506f97c138842cb2bb4c7 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 25 Mar 2024 15:07:55 -0700 Subject: [PATCH 080/592] Updates tioga host-config --- ...ss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake | 28 +++++++++---------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake b/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake index 92ebe51e3f..f6d0252b4c 100644 --- a/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake +++ b/host-configs/tioga-toss_4_x86_64_ib_cray-clang@16.0.0_hip.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/blt-0.6.1.4-rsolo2redxjrxxepfboqczt24wsewi2r;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/umpire-2024.02.0-yu5ws7ipi7zwwrgdwbfn5koiatjagzm6;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/raja-2024.02.0-cg3bk2wtymga5sazdaug5hv4iv34w5gj;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/camp-2024.02.0-qtl55wdgaqljji73mqaevb3r7eeisiil;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/blt-develop-chzqc43htf2cslohax67awbsj52iqahr;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb;/opt/rocm-5.6.0/llvm;/opt/rocm-5.6.0;/opt/rocm-5.6.0/hip;/opt/rocm-5.6.0;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0;/usr/tce" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/axom-develop-xoe7ia6wq26cxthhgh5z2hyiegm2rfgw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/axom-develop-xoe7ia6wq26cxthhgh5z2hyiegm2rfgw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/raja-2024.02.0-cg3bk2wtymga5sazdaug5hv4iv34w5gj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/camp-2024.02.0-qtl55wdgaqljji73mqaevb3r7eeisiil/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/umpire-2024.02.0-yu5ws7ipi7zwwrgdwbfn5koiatjagzm6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/axom-develop-5someulpcxlgvy5s4jh7coqoengtsd6h/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/axom-develop-xoe7ia6wq26cxthhgh5z2hyiegm2rfgw/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/axom-develop-xoe7ia6wq26cxthhgh5z2hyiegm2rfgw/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv/lib;/usr/tce/packages/cray-mpich-tce/cray-mpich-8.1.25-rocmcc-5.6.0/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb/lib;/opt/rocm-5.6.0/hip/lib;/opt/rocm-5.6.0/lib;/opt/rocm-5.6.0/llvm/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/zlib-ng-2.1.5-c4toe533t23gocizsqebzf4s662hyxlt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/metis-5.1.0-rjek5dokihv3f6afzrhphjgg6xcjrfvk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/parmetis-4.0.3-ll2czqc5pmp3olgjpu47krq4jgxksmdt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/ncurses-6.4-ezqmnqki7vits7vrigam3pwcidzycnny/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/hypre-2.24.0-ki5iqwndtm6rvb4nrb7ebbvl3x24q3vt/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/raja-2024.02.0-cg3bk2wtymga5sazdaug5hv4iv34w5gj/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/camp-2024.02.0-qtl55wdgaqljji73mqaevb3r7eeisiil/lib;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/umpire-2024.02.0-yu5ws7ipi7zwwrgdwbfn5koiatjagzm6/lib64;/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0/fmt-10.2.1-nr2acfkfdgyihxps6ekcgfn4fk56v5rb/lib64;/opt/rh/gcc-toolset-10/root/usr/lib/gcc/x86_64-redhat-linux/10" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/spack/lib/spack/env/clang/flang" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/spack/lib/spack/env/clang/flang" CACHE PATH "") else() @@ -104,14 +104,10 @@ set(ENABLE_GTEST_DEATH_TESTS ON CACHE BOOL "") # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_15_18_35_41/clang-16.0.0" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/toss_4_x86_64_ib_cray/2024_03_25_14_17_36/clang-16.0.0" CACHE PATH "") set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-weyusx6lu3gczfg24vwaji4dy53ekfc5" CACHE PATH "") -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu" CACHE PATH "") - set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-fg73ebtjbsm2kpd5s44vxa6jjsybwbbb" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-rqn67zhr6wo6mgcfqjrb3kzzh4neg52v" CACHE PATH "") @@ -120,11 +116,15 @@ set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-iuu6knfssyy4j2uv6qo7oqmm2afqw5jv" CACHE PA set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-k44ecokhewutosgyh3v4ifqejiqxxkwk" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-2i63uxx4gs2hv6bseeo53vnvpqxvq53a" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-cg3bk2wtymga5sazdaug5hv4iv34w5gj" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-rjjfznegq3beeahbio7h4voasmljpnef" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-yu5ws7ipi7zwwrgdwbfn5koiatjagzm6" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mejf7zfhnqeapizvhftucly5jsxo4hdv" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-fq2pmsg5voa3v3ptwp3rmm3erw5tbwgu" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-z6vcrbxgnq44voxaiplbkss7xkeuezam" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-qtl55wdgaqljji73mqaevb3r7eeisiil" CACHE PATH "") # scr not built From d82ba5d7a703230b421e39dc8e7a5ca1a834c8f8 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 25 Mar 2024 19:58:29 -0700 Subject: [PATCH 081/592] Updates rzansel host-configs --- ...lueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake | 32 +++++++++---------- ..._3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake | 32 +++++++++---------- ...l-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake | 32 +++++++++---------- ...eos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake | 32 +++++++++---------- ...l-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake | 32 +++++++++---------- ...eos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake | 32 +++++++++---------- 6 files changed, 96 insertions(+), 96 deletions(-) diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake index ac7819d5e7..524a773820 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/blt-0.6.1.4-7qqqx4bcdk5wy7ycpymq6engsddxn4y2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/umpire-2024.02.0-65lr3yvuffsi3u2dpki7xtr4di2ihjbs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/raja-2024.02.0-clcnsv4qa4k6qewcnsyfapnjzzwthn3e;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/blt-0.6.2-b76ptg2pxetjfe7mwt6wdmnnwhlenhhw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/camp-2024.02.0-inejabls3e5cbtjiknewq3zjichsmh6u;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/axom-develop-3sm6cyzfih5ix7g5dxrxq33ker7grmwf/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/axom-develop-3sm6cyzfih5ix7g5dxrxq33ker7grmwf/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/raja-2024.02.0-clcnsv4qa4k6qewcnsyfapnjzzwthn3e/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/camp-2024.02.0-inejabls3e5cbtjiknewq3zjichsmh6u/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/umpire-2024.02.0-65lr3yvuffsi3u2dpki7xtr4di2ihjbs/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/axom-develop-kzvdjy5hfjazdcutea7qurzhfzuu33lv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/axom-develop-3sm6cyzfih5ix7g5dxrxq33ker7grmwf/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/axom-develop-3sm6cyzfih5ix7g5dxrxq33ker7grmwf/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/raja-2024.02.0-clcnsv4qa4k6qewcnsyfapnjzzwthn3e/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/camp-2024.02.0-inejabls3e5cbtjiknewq3zjichsmh6u/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/umpire-2024.02.0-65lr3yvuffsi3u2dpki7xtr4di2ihjbs/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -83,27 +83,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-clcnsv4qa4k6qewcnsyfapnjzzwthn3e" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-65lr3yvuffsi3u2dpki7xtr4di2ihjbs" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-inejabls3e5cbtjiknewq3zjichsmh6u" CACHE PATH "") # scr not built diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake index da0c63d2c7..e78f2ca719 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/blt-0.6.1.4-niyj5uvj7qaxuceaoycpenida5z56ied;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/umpire-2024.02.0-nbggyfwzpho4in5554uaantfkjy3ivvo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/raja-2024.02.0-tmdjtmc2qovl2jaqnutbv45bmhc4zn4o;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/camp-2024.02.0-akuafbdichhwo33l4xm7g4r73cixmokh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/blt-0.6.2-uptm7mtzrbyuahgzqqfybwv2fjksnbar;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/axom-develop-l23fshftaw5wi4rviu65ekslkbwry3wl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/axom-develop-l23fshftaw5wi4rviu65ekslkbwry3wl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/raja-2024.02.0-tmdjtmc2qovl2jaqnutbv45bmhc4zn4o/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/camp-2024.02.0-akuafbdichhwo33l4xm7g4r73cixmokh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/umpire-2024.02.0-nbggyfwzpho4in5554uaantfkjy3ivvo/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/axom-develop-37hnlkzqogxnrcdoqc3d2mvdv6woaogu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/axom-develop-l23fshftaw5wi4rviu65ekslkbwry3wl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/axom-develop-l23fshftaw5wi4rviu65ekslkbwry3wl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/raja-2024.02.0-tmdjtmc2qovl2jaqnutbv45bmhc4zn4o/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/camp-2024.02.0-akuafbdichhwo33l4xm7g4r73cixmokh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/umpire-2024.02.0-nbggyfwzpho4in5554uaantfkjy3ivvo/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -111,27 +111,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/clang-10.0.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/clang-10.0.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-tmdjtmc2qovl2jaqnutbv45bmhc4zn4o" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-nbggyfwzpho4in5554uaantfkjy3ivvo" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-akuafbdichhwo33l4xm7g4r73cixmokh" CACHE PATH "") # scr not built diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake index 3f221fb066..250bd6471d 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/blt-0.6.1.4-6lng5thw5prsyymfu2yzy7xdwtwij6ij;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/umpire-2024.02.0-wmjkgqeq37s4au6bhrxhdibw6zxhayz3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/raja-2024.02.0-fu7lkeidkclq2szlyoxwxnewwajkptvp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/camp-2024.02.0-j3h5y7mlqm2hqtaebbgcph7ybpegpk3c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/blt-0.6.2-7zonpoigzaeybhuwllcmba7quqxlb6ab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/axom-develop-pcjqmlnyoalv6yzhtblmfaasddysgymo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/axom-develop-pcjqmlnyoalv6yzhtblmfaasddysgymo/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/raja-2024.02.0-fu7lkeidkclq2szlyoxwxnewwajkptvp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/camp-2024.02.0-j3h5y7mlqm2hqtaebbgcph7ybpegpk3c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/umpire-2024.02.0-wmjkgqeq37s4au6bhrxhdibw6zxhayz3/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/axom-develop-3syritaepzois77j36qsf4gphgvnh47a/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/axom-develop-pcjqmlnyoalv6yzhtblmfaasddysgymo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/axom-develop-pcjqmlnyoalv6yzhtblmfaasddysgymo/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/raja-2024.02.0-fu7lkeidkclq2szlyoxwxnewwajkptvp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/camp-2024.02.0-j3h5y7mlqm2hqtaebbgcph7ybpegpk3c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/umpire-2024.02.0-wmjkgqeq37s4au6bhrxhdibw6zxhayz3/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -75,27 +75,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-fu7lkeidkclq2szlyoxwxnewwajkptvp" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-wmjkgqeq37s4au6bhrxhdibw6zxhayz3" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-j3h5y7mlqm2hqtaebbgcph7ybpegpk3c" CACHE PATH "") # scr not built diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake index 004e185786..620f21c2d5 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/blt-0.6.1.4-ldmftyubptq3py7xr6wirrg2eorm357z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/umpire-2024.02.0-xrm4rhg3ktqhylymmkxikju57hx6gvvv;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/raja-2024.02.0-mb7a5z6epnvhsgy4cjgrztrsr7yp55hf;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/camp-2024.02.0-fux6skpzarppxw2ud6s4r5dhzrtddcfh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/blt-0.6.2-jn7obiaaltqhfnvamsbv25zsy7l54uii;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/axom-develop-iybu4alfhvrkdga5q54pkv7qhqdqjask/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/axom-develop-iybu4alfhvrkdga5q54pkv7qhqdqjask/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/raja-2024.02.0-mb7a5z6epnvhsgy4cjgrztrsr7yp55hf/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/camp-2024.02.0-fux6skpzarppxw2ud6s4r5dhzrtddcfh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/umpire-2024.02.0-xrm4rhg3ktqhylymmkxikju57hx6gvvv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/axom-develop-mxjoycimhqbatb4fpspytuagkhhnrjwc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/axom-develop-iybu4alfhvrkdga5q54pkv7qhqdqjask/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/axom-develop-iybu4alfhvrkdga5q54pkv7qhqdqjask/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/raja-2024.02.0-mb7a5z6epnvhsgy4cjgrztrsr7yp55hf/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/camp-2024.02.0-fux6skpzarppxw2ud6s4r5dhzrtddcfh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/umpire-2024.02.0-xrm4rhg3ktqhylymmkxikju57hx6gvvv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -103,27 +103,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/gcc-8.3.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/gcc-8.3.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-mb7a5z6epnvhsgy4cjgrztrsr7yp55hf" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-xrm4rhg3ktqhylymmkxikju57hx6gvvv" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-fux6skpzarppxw2ud6s4r5dhzrtddcfh" CACHE PATH "") # scr not built diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake index a5f4e607a0..7b58202aae 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/blt-0.6.1.4-neovqnvk3tazh7clai422vfazmbjeaqp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/umpire-2024.02.0-r6k23c6anifrvg5d7j47hnmlr7ok66cl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/blt-0.6.2-ocuzo3fsl47k5twv3tumc5fwdwlzwgtg;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/camp-2024.02.0-7jrihlzfbrasok3xa2tvoja54vlhrsr5;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/raja-2024.02.0-65rtcnszsacwe7v7jz36bumcr2etayao;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/axom-develop-bzcxdqnhzwdluipet46o6ubn6xcplt67/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/axom-develop-bzcxdqnhzwdluipet46o6ubn6xcplt67/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/raja-2024.02.0-65rtcnszsacwe7v7jz36bumcr2etayao/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/camp-2024.02.0-7jrihlzfbrasok3xa2tvoja54vlhrsr5/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/umpire-2024.02.0-r6k23c6anifrvg5d7j47hnmlr7ok66cl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/axom-develop-rwdvqzjayfoqf3oajz53p3o5dg62xnpu/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/axom-develop-bzcxdqnhzwdluipet46o6ubn6xcplt67/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/axom-develop-bzcxdqnhzwdluipet46o6ubn6xcplt67/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/raja-2024.02.0-65rtcnszsacwe7v7jz36bumcr2etayao/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/camp-2024.02.0-7jrihlzfbrasok3xa2tvoja54vlhrsr5/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/umpire-2024.02.0-r6k23c6anifrvg5d7j47hnmlr7ok66cl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -87,27 +87,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-65rtcnszsacwe7v7jz36bumcr2etayao" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-r6k23c6anifrvg5d7j47hnmlr7ok66cl" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-7jrihlzfbrasok3xa2tvoja54vlhrsr5" CACHE PATH "") # scr not built diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake index ccc51c7951..0e073da7cd 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/blt-0.6.1.4-lhkhl33mqna6lfzkqz5fbwzy6by5effo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/umpire-2024.02.0-kadi3dtgrw4l4vbqavx3sxn4rlns3g3r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/raja-2024.02.0-alqejyvl7penuqqhjcwk3riumsgszd2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/camp-2024.02.0-grmdsv36tnodgvqyzjakcay6hrwvmotq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/blt-0.6.2-rstavx7bo67sbhzefsivqbzf2aq2szbc;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/axom-develop-3agcw2lds3siongwtxf5qzd5qw76weze/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/axom-develop-3agcw2lds3siongwtxf5qzd5qw76weze/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/raja-2024.02.0-alqejyvl7penuqqhjcwk3riumsgszd2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/camp-2024.02.0-grmdsv36tnodgvqyzjakcay6hrwvmotq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/umpire-2024.02.0-kadi3dtgrw4l4vbqavx3sxn4rlns3g3r/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/axom-develop-q2layltpgdwbwpmdhlzmnk4hzneaxpw5/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/axom-develop-3agcw2lds3siongwtxf5qzd5qw76weze/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/axom-develop-3agcw2lds3siongwtxf5qzd5qw76weze/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/raja-2024.02.0-alqejyvl7penuqqhjcwk3riumsgszd2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/camp-2024.02.0-grmdsv36tnodgvqyzjakcay6hrwvmotq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/umpire-2024.02.0-kadi3dtgrw4l4vbqavx3sxn4rlns3g3r/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -115,27 +115,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_13_23/xl-16.1.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_14_33/xl-16.1.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-alqejyvl7penuqqhjcwk3riumsgszd2l" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-kadi3dtgrw4l4vbqavx3sxn4rlns3g3r" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-grmdsv36tnodgvqyzjakcay6hrwvmotq" CACHE PATH "") # scr not built From f1d3cba24d0a05119fcc6384a6e06173193629f1 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 25 Mar 2024 20:00:07 -0700 Subject: [PATCH 082/592] Updates lassen host-configs --- ...lueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake | 32 +++++++++---------- ..._3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake | 32 +++++++++---------- ...n-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake | 32 +++++++++---------- ...eos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake | 32 +++++++++---------- ...n-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake | 32 +++++++++---------- ...eos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake | 32 +++++++++---------- 6 files changed, 96 insertions(+), 96 deletions(-) diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake index 7eb9db3e44..6330636f69 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/blt-0.6.1.4-7qqqx4bcdk5wy7ycpymq6engsddxn4y2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/umpire-2024.02.0-6tifodtlfdstqy7cf73zygkehj4hwzhj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/raja-2024.02.0-6fkmsafd7axvaghcqae4dbleyze7r5ld;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/blt-develop-yytn2kp6mqz5zn7vxslq2a72fggcictr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/camp-2024.02.0-oqbjc3inv3i7lcycuj2bti272pup7rvo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/axom-develop-txn7gzmdggza37wjmuhqstfbeeab7g7m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/axom-develop-txn7gzmdggza37wjmuhqstfbeeab7g7m/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/raja-2024.02.0-6fkmsafd7axvaghcqae4dbleyze7r5ld/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/camp-2024.02.0-oqbjc3inv3i7lcycuj2bti272pup7rvo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/umpire-2024.02.0-6tifodtlfdstqy7cf73zygkehj4hwzhj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/axom-develop-3khx3mbmv3k2v5thfpefxxlsle6jkrjb/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/axom-develop-txn7gzmdggza37wjmuhqstfbeeab7g7m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/axom-develop-txn7gzmdggza37wjmuhqstfbeeab7g7m/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/metis-5.1.0-e5ov7trmcxxc4pa6cbysd525iyiswtkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/parmetis-4.0.3-djitip36l7hy2ubwbvrnqmfeodhnjtpk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/hypre-2.24.0-euib2ua4oleljrkszmkexls4kw5cvrr7/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/py-jsonschema-2.6.0-szvkvnsgmp3mys5qwxkzidfljbrx2lc4/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/raja-2024.02.0-6fkmsafd7axvaghcqae4dbleyze7r5ld/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/camp-2024.02.0-oqbjc3inv3i7lcycuj2bti272pup7rvo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/umpire-2024.02.0-6tifodtlfdstqy7cf73zygkehj4hwzhj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1/fmt-10.2.1-sscbhyiiak2butrj6656mn7nfx37rpr6/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -83,27 +83,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-toynqp6gorjtgfp46jfkzoc6n5knsbiz" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dfi65iel4lwlrvhi2i7n2hbvxuzlf3fv" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vlmxcctikvg2swezpvdqweczpsueuyrl" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-izljwvlcbrcbcueewxc74qbs7l3vy3rk" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-pkzw3nhgfgm3iulz4mdd6xs6s23khuxw" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ifirj3a475sf7jrliip2tj7laqyidak6" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-aovjhut3d6o67vxccjkyhfbrxc2eg4de" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-btiwe3jepovgjlxdtuqm4xssselzimcx" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-6fkmsafd7axvaghcqae4dbleyze7r5ld" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-3fzuqd3tqb3kh2lai5yqmgom24mlcior" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-6tifodtlfdstqy7cf73zygkehj4hwzhj" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-mv4llavhe474i6n6jv43zxabodipef32" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-6fhyyq6bgqljn37r3p444dd3ptvypvi7" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-zxgjohy7qy2v3nqg4eaba3azthsqhcga" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-oqbjc3inv3i7lcycuj2bti272pup7rvo" CACHE PATH "") # scr not built diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake index 42bea7be76..d808b96b3d 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/blt-0.6.1.4-niyj5uvj7qaxuceaoycpenida5z56ied;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/umpire-2024.02.0-jfw2taw7fvgij7tqqr6qtvdqko4k3dqk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/raja-2024.02.0-57aanyocmyudfmq7g4ts3dlgcs5t7xjp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/camp-2024.02.0-unc4fgnsqt7fmdb4ymbgzy6h7ddt7x7a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/blt-develop-krqyllb5lphsp5vrsw32hlavjoim5hkw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/cub-2.1.0-ib4hkd2iic3p7ni4lhz5bqd5yivtxo7r;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/axom-develop-qdyfo4zstodyhpqu5ygbdz3dq4srkdss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/axom-develop-qdyfo4zstodyhpqu5ygbdz3dq4srkdss/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/raja-2024.02.0-57aanyocmyudfmq7g4ts3dlgcs5t7xjp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/camp-2024.02.0-unc4fgnsqt7fmdb4ymbgzy6h7ddt7x7a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/umpire-2024.02.0-jfw2taw7fvgij7tqqr6qtvdqko4k3dqk/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/axom-develop-2ictfydb2flsagalio2qkvwd3p5pprwz/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/axom-develop-qdyfo4zstodyhpqu5ygbdz3dq4srkdss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/axom-develop-qdyfo4zstodyhpqu5ygbdz3dq4srkdss/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-10.0.1-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/metis-5.1.0-5t5rx3oakpli3ywkum4kfhzdiacrdkso/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/parmetis-4.0.3-gxoxo6iesczbj7ltl3he3vxlv2xb6bdo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/hypre-2.24.0-olonyxmliyqz7gjwd5jkenyxuphjff2d/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-gcc-7.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/py-jsonschema-2.6.0-jzezi7fphud2hpmaepsb5s456tz2dqol/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/raja-2024.02.0-57aanyocmyudfmq7g4ts3dlgcs5t7xjp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/camp-2024.02.0-unc4fgnsqt7fmdb4ymbgzy6h7ddt7x7a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/umpire-2024.02.0-jfw2taw7fvgij7tqqr6qtvdqko4k3dqk/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2/fmt-10.2.1-rvh2rhnae6757hi6saunbnnicoowhtns/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8;/usr/tce/packages/clang/clang-ibm-10.0.1/release/lib;/usr/tce/packages/clang/clang-ibm-10.0.1-gcc-8.3.1/release/lib" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/clang/clang" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/clang++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/clang/clang++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/clang/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/clang/gfortran" CACHE PATH "") else() @@ -111,27 +111,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/clang-10.0.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/clang-10.0.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-ls4cjnnyuikoezgifl5qq4b5s3hjcdcp" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-mypcbb7eqvp4oqjftdvw53oql5f5wemd" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-ouuns7euqd3fbobccnfh2zcfgxo2nsss" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-63jbjowv2dojriwkpag6ws3tbm4erk7v" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-bh5qnx7jctgblzse7sz75lippcwmuu7f" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-5n6b7og6vcevg2pkbjjrhf54ta4fhl2i" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-5okbr3yhq4vyonc2yt22lich6jkdgp3i" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-o7rjribikrvq6wydxxz22wdo544ai4z2" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-57aanyocmyudfmq7g4ts3dlgcs5t7xjp" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-gdid6sheotanplgeox4xo25w6gqqsztl" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-jfw2taw7fvgij7tqqr6qtvdqko4k3dqk" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-6l23za73d6c7kgr5wuwjliudtnnuvoch" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-avlzufmrw3vohgzahhqiso76txua2lte" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-2jxkuw2qyj7egsho3lshh2ceoa6n3srm" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-unc4fgnsqt7fmdb4ymbgzy6h7ddt7x7a" CACHE PATH "") # scr not built diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake index 71a8363f40..8c5fb1c9f6 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/blt-0.6.1.4-6lng5thw5prsyymfu2yzy7xdwtwij6ij;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/umpire-2024.02.0-ljmerd5tn6xarlkmcr4lgyuhkripb7lk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/raja-2024.02.0-ocrj2lf5bdtltkta2dukvg223mbryrli;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/camp-2024.02.0-p3vxn2hwcpxp7ivfqacvydwphayxti5k;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/blt-develop-lwju6i2vvt5qs44c2i635e6f2qrvhw7y;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/axom-develop-qkjbnetk6yzljkuew7fcgoy4mfw2fkbl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/axom-develop-qkjbnetk6yzljkuew7fcgoy4mfw2fkbl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/raja-2024.02.0-ocrj2lf5bdtltkta2dukvg223mbryrli/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/camp-2024.02.0-p3vxn2hwcpxp7ivfqacvydwphayxti5k/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/umpire-2024.02.0-ljmerd5tn6xarlkmcr4lgyuhkripb7lk/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/axom-develop-y37ut2auygb55jt23ht55oqttjl6xfvv/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/axom-develop-qkjbnetk6yzljkuew7fcgoy4mfw2fkbl/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/axom-develop-qkjbnetk6yzljkuew7fcgoy4mfw2fkbl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/gcc-runtime-8.3.1.1-pykxuo3lctv7fu6i325szadkdcwrrkim/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/metis-5.1.0-devoja547pbzdundjnarm3hug2hhay2l/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/parmetis-4.0.3-p5pmp73u6nshwemscw43atzgaerk4ulu/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/py-jsonschema-2.6.0-me5qygs6iauo7miussleiado3nbnw5ot/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/raja-2024.02.0-ocrj2lf5bdtltkta2dukvg223mbryrli/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/camp-2024.02.0-p3vxn2hwcpxp7ivfqacvydwphayxti5k/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/umpire-2024.02.0-ljmerd5tn6xarlkmcr4lgyuhkripb7lk/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1/fmt-10.2.1-2vqr6w6s2qq7bt4iq7mdrfiqgfiw6f5l/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -75,27 +75,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-4lfe54adjqft3fe5wcipprx5gaqacriu" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-7fwf4minhh6ymveutjnb4zetvxwurm66" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-vj22dsxnnfc6hx73lfgpdmlhithbd5bq" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-jbbczwoa7j3usg47cu7zh6edd6w34i6n" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-7cjtcdwjrtfgcnqoiyfrufybdw5g6i6h" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-v5n5ab5npmyxguqaja6xdmyl6r3gsc5a" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-e6tn6qcf3j2hqkz5ht3xrmlbddp3ngnn" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-ocrj2lf5bdtltkta2dukvg223mbryrli" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-3fyzeztrclnysexhwf75pm2nxel77776" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-ljmerd5tn6xarlkmcr4lgyuhkripb7lk" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-hf3tgpysazchk7gnfba2c3l2w4ztmv46" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-jzz3z5l5oauzqxroiyxl7yyusnzbzvjj" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-avtdwxn6q374o2nqe4rqkjzasuvmudta" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-p3vxn2hwcpxp7ivfqacvydwphayxti5k" CACHE PATH "") # scr not built diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake index ed47913e6d..8903414200 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/blt-0.6.1.4-ldmftyubptq3py7xr6wirrg2eorm357z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/umpire-2024.02.0-ihbrtrhudv5kqphiwritwf6u3x774q6h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/raja-2024.02.0-ovdmd6mq2ycig55alm36jmz2ovcdys2n;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/camp-2024.02.0-3bixthhw6wffap32p2s3jds7xqanhgpr;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/cub-2.1.0-i64fir4ytcl7w527jny2bj67irxva2pu;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/blt-develop-rgsedhjya2ulgjpyai4htd73php76qyk;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/axom-develop-qbrztkgtlvnh22ktfu66o52euj7cm5pc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/axom-develop-qbrztkgtlvnh22ktfu66o52euj7cm5pc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/raja-2024.02.0-ovdmd6mq2ycig55alm36jmz2ovcdys2n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/camp-2024.02.0-3bixthhw6wffap32p2s3jds7xqanhgpr/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/umpire-2024.02.0-ihbrtrhudv5kqphiwritwf6u3x774q6h/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/axom-develop-7c3i5du3fiuswtr7pb7uuojs7znguion/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/axom-develop-qbrztkgtlvnh22ktfu66o52euj7cm5pc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/axom-develop-qbrztkgtlvnh22ktfu66o52euj7cm5pc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/gcc-runtime-8.3.1.2-7lxa2lyos6dnjfydj2ewpv4wlnnvp2hh/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/metis-5.1.0-3de4wffnqmwqslyiizuoheny6abmfkkn/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/parmetis-4.0.3-2h2xjxkc3qwi237ui476jgsqi2e4kpkh/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/py-jsonschema-2.6.0-5rwlawwpfl75pzasnxiulrkcxmznmijx/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/raja-2024.02.0-ovdmd6mq2ycig55alm36jmz2ovcdys2n/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/camp-2024.02.0-3bixthhw6wffap32p2s3jds7xqanhgpr/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/umpire-2024.02.0-ihbrtrhudv5kqphiwritwf6u3x774q6h/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2/fmt-10.2.1-zv6ntw5mnzrvvm2mfyyjjly7cmixmgqr/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gcc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/gcc/gcc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/g++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/gcc/g++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/gcc/gfortran" CACHE PATH "") else() @@ -103,27 +103,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/gcc-8.3.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/gcc-8.3.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-dqgqgjoakk27cqtdqvzbc6h6fjxxjmdn" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-66pob6ova32wkqvnbdbskk5zk44tjbnk" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-c76hxrgyy2igrclt6cnsvydrkd77ufvm" CACHE PATH "") # MFEM not built -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-lynbcbj324ecyvruiqfgvecllzxpxayg" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ada6dnl7e76lppixolnsjy7gmi4adfoh" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-saqxtlwqxhm5xszi6ohoalufvorkont7" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-qz732p5cbhzuecyyn47d67h55wir7owh" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-ovdmd6mq2ycig55alm36jmz2ovcdys2n" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-ax6j3jggtgph2kx53njdclhij5457lnr" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-ihbrtrhudv5kqphiwritwf6u3x774q6h" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-alueufchrplzlgqafqy465vgydwzrrni" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-yhxhbmqj2rhkxmhacfvn3e4chpsyxruo" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-drrgkykr3onmqdkoc2jg6hzxzszakj35" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-3bixthhw6wffap32p2s3jds7xqanhgpr" CACHE PATH "") # scr not built diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake index aad45ec839..af7665b08d 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.1.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/blt-0.6.1.4-neovqnvk3tazh7clai422vfazmbjeaqp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/umpire-2024.02.0-oo3s76d2hfwzrkxbi63ihrsdzondevvs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/blt-develop-zzs34bfvzi2ihacs7nk6aieubzd4apef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/camp-2024.02.0-vuh23kmz4wocwbfhs5zftwgayq4t7zcb;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/raja-2024.02.0-jel5o4jq4myrvihnfi2kmsskt677pp2m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/axom-develop-adzb6vwyahvetvm4xss2lwemcjb4zcgo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/axom-develop-adzb6vwyahvetvm4xss2lwemcjb4zcgo/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/raja-2024.02.0-jel5o4jq4myrvihnfi2kmsskt677pp2m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/camp-2024.02.0-vuh23kmz4wocwbfhs5zftwgayq4t7zcb/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/umpire-2024.02.0-oo3s76d2hfwzrkxbi63ihrsdzondevvs/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/axom-develop-xosv25jhe3tuslahlue22nktkaeid54q/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/axom-develop-adzb6vwyahvetvm4xss2lwemcjb4zcgo/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/axom-develop-adzb6vwyahvetvm4xss2lwemcjb4zcgo/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/metis-5.1.0-qww4ax3mkehdlf7akdbjzokbf4wxws5m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/parmetis-4.0.3-unks4pi2gc6heogvv2m3cvjvgc2etfp4/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/hypre-2.24.0-scxx626pb345r4bpsmn4idus6dt42jcs/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/py-jsonschema-2.6.0-7skzmrvuuo6gtwscj6b6fbdyo7sioz5h/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/raja-2024.02.0-jel5o4jq4myrvihnfi2kmsskt677pp2m/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/camp-2024.02.0-vuh23kmz4wocwbfhs5zftwgayq4t7zcb/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/umpire-2024.02.0-oo3s76d2hfwzrkxbi63ihrsdzondevvs/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1/fmt-10.2.1-iknryrusj34wtt4nk4pn2ybgwa77grms/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -87,27 +87,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.1" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.1" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-rhabde4fvdbp5yjbqhnbmfihki6jlib3" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-gds2atmvlsftghczkaxrbdi4fotbl2a3" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-bbzy4skytx3akdcm2fvslpxn44vhsq2y" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-2qilfn4m5dmpxjm2evip6nusosmiqrsz" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ueiya376yy237iknmzfwwfhinz63yujd" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-ur6rpcf7qqngwf25ezjwei6en7rcsnxq" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-b43zhs5fpjqoog4hrtfrtxuetq7pwd4b" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-kimeva5su2xhbqpy54xx5lnmvypbavab" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-jel5o4jq4myrvihnfi2kmsskt677pp2m" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-kglsalrxtcw2bh4hnsnc5gq5jevvv7bl" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-oo3s76d2hfwzrkxbi63ihrsdzondevvs" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-ss5etuplgsnig32jf6kmbluuoum72pq3" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-zoxseqd2ztggzxhp2q44umztf22suawx" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-a2mltgoskoemplkmkkup5cs4pmfn64j7" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-vuh23kmz4wocwbfhs5zftwgayq4t7zcb" CACHE PATH "") # scr not built diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake index 5b848765bd..e161d860f5 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake @@ -4,13 +4,13 @@ # CMake executable path: /usr/tce/packages/cmake/cmake-3.21.1/bin/cmake #------------------------------------------------------------------------------ -set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/blt-0.6.1.4-lhkhl33mqna6lfzkqz5fbwzy6by5effo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") +set(CMAKE_PREFIX_PATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/umpire-2024.02.0-7jonpxcjbfirjj727y57mywdcdcrfznc;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/raja-2024.02.0-3mkspprzh5v4ktpdeznt546oiqiooooa;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/camp-2024.02.0-jftd4zzx7si5f2gtcklqzi5vwwt24wdp;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/blt-develop-xqma2kbs3g4vqc5f5lswyeo6zeonngw4;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/cub-2.1.0-gk54nvuh77yqhzft2rlourfzd7aqvs6i;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/collab/usr/gapps/shroud/public/blueos_3_ppc64le_ib_p9/shroud-0.13.0;/usr/tce/packages/cuda/cuda-11.2.0;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12;/usr/tce/packages/clang/clang-10.0.0;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/graphviz-7.1.0;/usr/tcetmp;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/doxygen-1.9.6;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/cppcheck-2.9;/usr/tce/packages/cmake/cmake-3.21.1" CACHE STRING "") set(CMAKE_INSTALL_RPATH_USE_LINK_PATH "ON" CACHE STRING "") -set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_BUILD_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/axom-develop-l7sgfdkgw4nr4mvzanqza4ieu6mbe5tc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/axom-develop-l7sgfdkgw4nr4mvzanqza4ieu6mbe5tc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/raja-2024.02.0-3mkspprzh5v4ktpdeznt546oiqiooooa/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/camp-2024.02.0-jftd4zzx7si5f2gtcklqzi5vwwt24wdp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/umpire-2024.02.0-7jonpxcjbfirjj727y57mywdcdcrfznc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") -set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/axom-develop-qe6oahlecn4jlzoxljjb2oo5euunr2kr/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") +set(CMAKE_INSTALL_RPATH "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/axom-develop-l7sgfdkgw4nr4mvzanqza4ieu6mbe5tc/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/axom-develop-l7sgfdkgw4nr4mvzanqza4ieu6mbe5tc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v/lib;/usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-xl-2022.08.19-cuda-11.2.0/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/metis-5.1.0-wzyd4pwtce4c22uw3tq3dljdjpfjrd3z/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/parmetis-4.0.3-buyj5iliasgoeiauw335rdrvht4l46ut/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/hypre-2.24.0-njvlsye4yxx7gzho7hpvfaiyugfztlef/lib;/usr/tcetmp/packages/lapack/lapack-3.9.0-P9-xl-2020.11.12/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/py-jsonschema-2.6.0-qpksngigqtckjhj62aeckyiptsyrquwo/lib;/collab/usr/gapps/axom/devtools/blueos_3_ppc64le_ib_p9/latest/python-3.10.10/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/raja-2024.02.0-3mkspprzh5v4ktpdeznt546oiqiooooa/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/camp-2024.02.0-jftd4zzx7si5f2gtcklqzi5vwwt24wdp/lib;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip/lib64;/usr/tce/packages/cuda/cuda-11.2.0/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/umpire-2024.02.0-7jonpxcjbfirjj727y57mywdcdcrfznc/lib64;/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2/fmt-10.2.1-fl5fgyfjfnworql33rfi4oufl2fyx2ec/lib64;/usr/tce/packages/gcc/gcc-8.3.1/rh/usr/lib/gcc/ppc64le-redhat-linux/8" CACHE STRING "") set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") @@ -21,11 +21,11 @@ set(CMAKE_BUILD_TYPE "Release" CACHE STRING "") #------------------------------------------------------------------------------ if(DEFINED ENV{SPACK_CC}) - set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc" CACHE PATH "") + set(CMAKE_C_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/xl/xlc" CACHE PATH "") - set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlc++" CACHE PATH "") + set(CMAKE_CXX_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/xl/xlc++" CACHE PATH "") - set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/spack/lib/spack/env/xl/xlf90" CACHE PATH "") + set(CMAKE_Fortran_COMPILER "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/spack/lib/spack/env/xl/xlf90" CACHE PATH "") else() @@ -115,27 +115,27 @@ set(BLT_CMAKE_IMPLICIT_LINK_DIRECTORIES_EXCLUDE "/usr/tce/packages/gcc/gcc-4.9.3 # TPLs #------------------------------------------------------------------------------ -set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_17_19_16_52/xl-16.1.1.2" CACHE PATH "") +set(TPL_ROOT "/usr/WS1/axom/libs/blueos_3_ppc64le_ib_p9/2024_03_25_14_18_47/xl-16.1.1.2" CACHE PATH "") -set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-y5qkfzjhhkxp2qyaiw2kvct5kd2mjavw" CACHE PATH "") - -set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v" CACHE PATH "") - -set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip" CACHE PATH "") +set(CONDUIT_DIR "${TPL_ROOT}/conduit-0.9.1-wh6qi5s3jncyggsy6w4dxdlcg3n3feag" CACHE PATH "") set(C2C_DIR "${TPL_ROOT}/c2c-1.8.0-jklapw7gpgw7rftjwecmk22p7wz4qpc2" CACHE PATH "") set(MFEM_DIR "${TPL_ROOT}/mfem-4.6.0-giwvzuwtccsd4dt3y6co4ul3x2lkgmpw" CACHE PATH "") -set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vzkwginqjejkvhpvfqlc3qh2m6mis4vy" CACHE PATH "") +set(HDF5_DIR "${TPL_ROOT}/hdf5-1.8.23-vlybikhncayldwo36udsi225qyan7dos" CACHE PATH "") set(LUA_DIR "${TPL_ROOT}/lua-5.4.4-6jtix4lxlnmvpkuahs62qqbjk5yubmux" CACHE PATH "") -set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-kghzomlpcrlcri3dky476kdizqatfe5c" CACHE PATH "") +set(RAJA_DIR "${TPL_ROOT}/raja-2024.02.0-3mkspprzh5v4ktpdeznt546oiqiooooa" CACHE PATH "") -set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-57lf4jwgiqrgzpeaj7uerwej3ht4wgyt" CACHE PATH "") +set(UMPIRE_DIR "${TPL_ROOT}/umpire-2024.02.0-7jonpxcjbfirjj727y57mywdcdcrfznc" CACHE PATH "") + +set(ADIAK_DIR "${TPL_ROOT}/adiak-0.4.0-zjenkj6odbqc4f3vluut7h6vhii3pp5v" CACHE PATH "") + +set(CALIPER_DIR "${TPL_ROOT}/caliper-2.10.0-qdtwdckjwzjmnnfaekyxpw6zhnp4prip" CACHE PATH "") -set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-ppwilytkx2rffmtiroong3ucsojgc2o7" CACHE PATH "") +set(CAMP_DIR "${TPL_ROOT}/camp-2024.02.0-jftd4zzx7si5f2gtcklqzi5vwwt24wdp" CACHE PATH "") # scr not built From cfb469b02c98c6ccada9fbabe59290c94af6c0f5 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 25 Mar 2024 20:33:57 -0700 Subject: [PATCH 083/592] Slight update to helper scripts Including upgrading them to python3. --- scripts/llnl_scripts/find_unused_tpl_dirs.py | 2 +- scripts/llnl_scripts/fix_permissions.py | 2 +- .../move_unused_tpl_dirs_to_graveyard.py | 24 ++++++++++--------- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/scripts/llnl_scripts/find_unused_tpl_dirs.py b/scripts/llnl_scripts/find_unused_tpl_dirs.py index dc413d2e1c..67a6f51266 100755 --- a/scripts/llnl_scripts/find_unused_tpl_dirs.py +++ b/scripts/llnl_scripts/find_unused_tpl_dirs.py @@ -1,5 +1,5 @@ #!/bin/sh -"exec" "python" "-u" "-B" "$0" "$@" +"exec" "python3" "-u" "-B" "$0" "$@" # Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and # other Axom Project Developers. See the top-level LICENSE file for details. diff --git a/scripts/llnl_scripts/fix_permissions.py b/scripts/llnl_scripts/fix_permissions.py index 0297cc394d..f5e4833447 100755 --- a/scripts/llnl_scripts/fix_permissions.py +++ b/scripts/llnl_scripts/fix_permissions.py @@ -1,5 +1,5 @@ #!/bin/sh -"exec" "python" "-u" "-B" "$0" "$@" +"exec" "python3" "-u" "-B" "$0" "$@" # Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and # other Axom Project Developers. See the top-level LICENSE file for details. diff --git a/scripts/llnl_scripts/move_unused_tpl_dirs_to_graveyard.py b/scripts/llnl_scripts/move_unused_tpl_dirs_to_graveyard.py index 19280c46a4..44750180cf 100755 --- a/scripts/llnl_scripts/move_unused_tpl_dirs_to_graveyard.py +++ b/scripts/llnl_scripts/move_unused_tpl_dirs_to_graveyard.py @@ -1,5 +1,5 @@ #!/bin/sh -"exec" "python" "-u" "-B" "$0" "$@" +"exec" "python3" "-u" "-B" "$0" "$@" # Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and # other Axom Project Developers. See the top-level LICENSE file for details. @@ -40,23 +40,25 @@ def main(): summary_file ="tpl_dirs_summary.json" if not os.path.exists(summary_file): - print("Error: Summary file from find_unused_tpl_dirs.py did not exist: {0}", summary_file) + print(f"Error: Summary file from find_unused_tpl_dirs.py did not exist: {summary_file}") return False r = json.load(open(summary_file)) - print "" - print "[# of referenced %d ]" % len(r["referenced"]) - print "[# of found %d ]" % len(r["found"]) - print "[# of active %d ]" % len(r["active"]) - print "[# of unused %d ]" % len(r["unused"]) + print("") + print("[# of referenced {}]".format(len(r["referenced"]))) + print("[# of found {}]".format(len(r["found"]))) + print("[# of active {}]".format(len(r["active"]))) + print("[# of unused {}]".format(len(r["unused"]))) success = True for d in r["unused"]: - cmd = "mv %s %s" % (d, graveyard_path(d)) - res = sexe(cmd) - if res != 0: - success = False + if os.path.exists(d): + cmd = "mv %s %s" % (d, graveyard_path(d)) + res = sexe(cmd) + if res != 0: + success = False + return success From 7b22176d8ddfc84c2eeb591328d0ae4d7ceb6b72 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 27 Mar 2024 17:12:06 -0700 Subject: [PATCH 084/592] Work around Array::emplace_back, which may be causing an application build failure. emplace_back causes a warning about calling a host function from a device function. I don't see how it can happen, but it may be critical to the app's build. --- src/axom/quest/MarchingCubes.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/axom/quest/MarchingCubes.cpp b/src/axom/quest/MarchingCubes.cpp index 50fec43b75..5270390fca 100644 --- a/src/axom/quest/MarchingCubes.cpp +++ b/src/axom/quest/MarchingCubes.cpp @@ -70,10 +70,14 @@ void MarchingCubes::setMesh(const conduit::Node& bpMesh, */ auto newDomainCount = conduit::blueprint::mesh::number_of_domains(bpMesh); - while(m_singles.size() < newDomainCount) + if (m_singles.size() < newDomainCount) { - m_singles.emplace_back( - new detail::marching_cubes::MarchingCubesSingleDomain(*this)); + auto tmpSize = m_singles.size(); + m_singles.resize(newDomainCount); + for(int d = tmpSize; d < newDomainCount; ++d) + { + m_singles[d].reset(new detail::marching_cubes::MarchingCubesSingleDomain(*this)); + } } for(int d = 0; d < newDomainCount; ++d) From cd8646cdc67238c3ddbeb033048cb6340bc0a740 Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 27 Mar 2024 17:12:06 -0700 Subject: [PATCH 085/592] Work around Array::emplace_back, which may be causing an application build failure. emplace_back causes a warning about calling a host function from a device function. I don't see how it can happen, but it may be critical to the app's build. --- src/axom/quest/MarchingCubes.cpp | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/src/axom/quest/MarchingCubes.cpp b/src/axom/quest/MarchingCubes.cpp index 50fec43b75..bb03795d02 100644 --- a/src/axom/quest/MarchingCubes.cpp +++ b/src/axom/quest/MarchingCubes.cpp @@ -70,10 +70,15 @@ void MarchingCubes::setMesh(const conduit::Node& bpMesh, */ auto newDomainCount = conduit::blueprint::mesh::number_of_domains(bpMesh); - while(m_singles.size() < newDomainCount) + if(m_singles.size() < newDomainCount) { - m_singles.emplace_back( - new detail::marching_cubes::MarchingCubesSingleDomain(*this)); + auto tmpSize = m_singles.size(); + m_singles.resize(newDomainCount); + for(int d = tmpSize; d < newDomainCount; ++d) + { + m_singles[d].reset( + new detail::marching_cubes::MarchingCubesSingleDomain(*this)); + } } for(int d = 0; d < newDomainCount; ++d) From 59ad845928d2b863c82667b226c9d093b907675b Mon Sep 17 00:00:00 2001 From: "Brian T.N. Gunney" Date: Wed, 27 Mar 2024 21:43:38 -0700 Subject: [PATCH 086/592] Silence call-host-function-from-device warning for ArrayIndexer. --- src/axom/quest/ArrayIndexer.hpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/axom/quest/ArrayIndexer.hpp b/src/axom/quest/ArrayIndexer.hpp index fbd53e7681..29c322bd94 100644 --- a/src/axom/quest/ArrayIndexer.hpp +++ b/src/axom/quest/ArrayIndexer.hpp @@ -284,7 +284,8 @@ class ArrayIndexer } //!@brief Whether a StackArray represents a permutation. - bool isPermutation(const axom::StackArray& v) + inline AXOM_HOST_DEVICE bool isPermutation( + const axom::StackArray& v) { // v is a permutation if all its values are unique and in [0, DIM). axom::StackArray found; @@ -294,7 +295,7 @@ class ArrayIndexer } for(int d = 0; d < DIM; ++d) { - if(v[d] < 0 || v[d] >= DIM) + if(v[d] >= DIM) { return false; // Out of range. } From 6f52b2d012ec9b955d4c8e182e0c93ae899efed8 Mon Sep 17 00:00:00 2001 From: Chris White Date: Mon, 1 Apr 2024 11:11:41 -0700 Subject: [PATCH 087/592] revert usage of tee because it does not forward the error code of the previous command --- scripts/llnl_scripts/llnl_lc_build_tools.py | 77 +++++++++++++-------- 1 file changed, 47 insertions(+), 30 deletions(-) diff --git a/scripts/llnl_scripts/llnl_lc_build_tools.py b/scripts/llnl_scripts/llnl_lc_build_tools.py index c27a280ac6..dae857189f 100755 --- a/scripts/llnl_scripts/llnl_lc_build_tools.py +++ b/scripts/llnl_scripts/llnl_lc_build_tools.py @@ -211,14 +211,13 @@ def build_and_test_host_config(test_root, host_config, cfg_output_file = pjoin(test_root,"output.log.%s.configure.txt" % host_config_root) print("[starting configure of %s]" % host_config) print("[log file: %s]" % cfg_output_file) - cmd = "{0} config-build.py -bp {1} -ip {2} -bt {3} -hc {4} {5} | tee {6}".format(sys.executable, - build_dir, - install_dir, - build_type, - host_config, - extra_cmake_options, - cfg_output_file) - res = sexe(cmd, echo=True) + res = sexe("%s config-build.py -bp %s -ip %s -bt %s -hc %s %s" % (sys.executable, build_dir, install_dir, build_type, host_config, extra_cmake_options), + output_file = cfg_output_file, + echo=True) + + if report_to_stdout: + with open(cfg_output_file, 'r', encoding='utf8') as build_out: + print(build_out.read()) if res != 0: print("[ERROR: Configure for host-config: %s failed]\n" % host_config) @@ -232,8 +231,13 @@ def build_and_test_host_config(test_root, host_config, bld_output_file = pjoin(build_dir,"output.log.make.txt") print("[starting build]") print("[log file: %s]" % bld_output_file) - cmd = "cd {0} && make -j 16 VERBOSE=1 | tee {1}".format(build_dir, bld_output_file) - res = sexe(cmd, echo=True) + res = sexe("cd %s && make -j 16 VERBOSE=1 " % build_dir, + output_file = bld_output_file, + echo=True) + + if report_to_stdout: + with open(bld_output_file, 'r', encoding='utf8') as build_out: + print(build_out.read()) if res != 0: print("[ERROR: Build for host-config: %s failed]\n" % host_config) @@ -245,10 +249,15 @@ def build_and_test_host_config(test_root, host_config, print("[log file: %s]" % tst_output_file) parallel_test = "" if test_serial else "-j16" - tst_cmd = "cd {0} && make CTEST_OUTPUT_ON_FAILURE=1 test ARGS=\"--no-compress-output -T Test -VV {1}\" | tee {2}".format(build_dir, - parallel_test, - tst_output_file) - res = sexe(tst_cmd, echo=True) + tst_cmd = "cd %s && make CTEST_OUTPUT_ON_FAILURE=1 test ARGS=\"--no-compress-output -T Test -VV %s\"" % (build_dir, parallel_test) + + res = sexe(tst_cmd, + output_file = tst_output_file, + echo=True) + + if report_to_stdout: + with open(tst_output_file, 'r', encoding='utf8') as test_out: + print(test_out.read()) # Convert CTest output to JUnit, do not overwrite previous res print("[Checking to see if xsltproc exists...]") @@ -275,20 +284,26 @@ def build_and_test_host_config(test_root, host_config, print("[starting docs generation]") print("[log file: %s]" % docs_output_file) - docs_cmd = "cd {0} && make -j16 docs | tee {1}".format(build_dir, docs_output_file) - res = sexe(docs_cmd, echo=True) + res = sexe("cd %s && make -j16 docs " % build_dir, + output_file = docs_output_file, + echo=True) + + if report_to_stdout: + with open(docs_output_file, 'r', encoding='utf8') as docs_out: + print(docs_out.read()) if res != 0: print("[ERROR: Docs generation for host-config: %s failed]\n\n" % host_config) return res # install the code - install_output_file = pjoin(build_dir,"output.log.make.install.txt") + inst_output_file = pjoin(build_dir,"output.log.make.install.txt") print("[starting install]") - print("[log file: %s]" % install_output_file) + print("[log file: %s]" % inst_output_file) - install_cmd = "cd {0} && make -j16 install | tee {1}".format(build_dir, install_output_file) - res = sexe(install_cmd, echo=True) + res = sexe("cd %s && make -j16 install " % build_dir, + output_file = inst_output_file, + echo=True) if res != 0: print("[ERROR: Install for host-config: %s failed]\n\n" % host_config) @@ -318,16 +333,17 @@ def build_and_test_host_config(test_root, host_config, "mkdir build", "cd build", """echo "[Configuring '{}' example]" """.format("using-with-cmake"), - "cmake -C ../host-config.cmake .. | tee -a {0}".format(install_example_output_file), + "cmake -C ../host-config.cmake ..", """echo "[Building '{}' example]" """.format("using-with-cmake"), - "make | tee -a {0}".format(install_example_output_file), + "make ", """echo "[Running '{}' example]" """.format("using-with-cmake"), - "./example | tee -a {0}".format(install_example_output_file), + "./example", """echo "[Done]" """ ] - cmd = " && ".join(example_commands) - res = sexe(cmd, echo=True) + res = sexe(" && ".join(example_commands), + output_file = install_example_output_file, + echo=True) if res != 0: print("[ERROR: Installed 'using-with-cmake' example for host-config: %s failed]\n\n" % host_config) @@ -346,16 +362,17 @@ def build_and_test_host_config(test_root, host_config, "mkdir build", "cd build", """echo "[Configuring '{}' example]" """.format("using-with-blt"), - "cmake -C ../host-config.cmake .. | tee -a {0}".format(install_example_output_file), + "cmake -C ../host-config.cmake ..", """echo "[Building '{}' example]" """.format("using-with-blt"), - "make | tee -a {0}".format(install_example_output_file), + "make ", """echo "[Running '{}' example]" """.format("using-with-blt"), - "./bin/example | tee -a {0}".format(install_example_output_file), + "./bin/example", """echo "[Done]" """ ] - cmd = " && ".join(example_commands) - res = sexe(cmd, echo=True) + res = sexe(" && ".join(example_commands), + output_file = install_example_output_file, + echo=True) if res != 0: print("[ERROR: Installed 'using-with-blt' example for host-config: %s failed]\n\n" % host_config) From 9546669c3907e4ded8bd6ad83f591c06e2a7bb72 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 2 Apr 2024 14:06:25 -0700 Subject: [PATCH 088/592] Workaround for missing __ppc_trap symbol on Clang 16 --- src/axom/core/Array.hpp | 4 ++-- src/axom/core/tests/core_array_for_all.hpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/axom/core/Array.hpp b/src/axom/core/Array.hpp index 79ecb009f4..9d5fa4383d 100644 --- a/src/axom/core/Array.hpp +++ b/src/axom/core/Array.hpp @@ -1038,7 +1038,7 @@ AXOM_HOST_DEVICE Array::Array(const Array& other) "Use axom::ArrayView for value captures instead.\n"); #endif #if defined(__CUDA_ARCH__) - __trap(); + assert(false); #endif #else initialize(other.size(), other.capacity()); @@ -1539,7 +1539,7 @@ AXOM_DEVICE inline IndexType Array::reserveForDeviceInsert(IndexT "on the device.\n"); #endif #ifdef AXOM_USE_CUDA - __trap(); + assert(false); #elif defined(AXOM_USE_HIP) abort(); #endif diff --git a/src/axom/core/tests/core_array_for_all.hpp b/src/axom/core/tests/core_array_for_all.hpp index fb0ebdab91..30caaa8f4a 100644 --- a/src/axom/core/tests/core_array_for_all.hpp +++ b/src/axom/core/tests/core_array_for_all.hpp @@ -66,7 +66,7 @@ using MyTypes = ::testing::Types< TYPED_TEST_SUITE(core_array_for_all, MyTypes); //------------------------------------------------------------------------------ -#if defined(AXOM_USE_RAJA) && defined(AXOM_USE_CUDA) && defined(AXOM_USE_UMPIRE) +#if defined(AXOM_USE_RAJA) && defined(AXOM_USE_CUDA) && defined(AXOM_USE_UMPIRE) && defined(AXOM_DEBUG) AXOM_CUDA_TEST(core_array_for_all, capture_test) { using ExecSpace = axom::CUDA_EXEC<256>; From 639248a498f25b1b1f6df0c90d43f1f2b2224784 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 2 Apr 2024 14:14:28 -0700 Subject: [PATCH 089/592] Run clang-format --- src/axom/core/Array.hpp | 2 +- src/axom/core/tests/core_array_for_all.hpp | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/axom/core/Array.hpp b/src/axom/core/Array.hpp index 9d5fa4383d..fea20ec993 100644 --- a/src/axom/core/Array.hpp +++ b/src/axom/core/Array.hpp @@ -1038,7 +1038,7 @@ AXOM_HOST_DEVICE Array::Array(const Array& other) "Use axom::ArrayView for value captures instead.\n"); #endif #if defined(__CUDA_ARCH__) - assert(false); + assert(false); #endif #else initialize(other.size(), other.capacity()); diff --git a/src/axom/core/tests/core_array_for_all.hpp b/src/axom/core/tests/core_array_for_all.hpp index 30caaa8f4a..1e9050058f 100644 --- a/src/axom/core/tests/core_array_for_all.hpp +++ b/src/axom/core/tests/core_array_for_all.hpp @@ -66,7 +66,8 @@ using MyTypes = ::testing::Types< TYPED_TEST_SUITE(core_array_for_all, MyTypes); //------------------------------------------------------------------------------ -#if defined(AXOM_USE_RAJA) && defined(AXOM_USE_CUDA) && defined(AXOM_USE_UMPIRE) && defined(AXOM_DEBUG) +#if defined(AXOM_USE_RAJA) && defined(AXOM_USE_CUDA) && \ + defined(AXOM_USE_UMPIRE) && defined(AXOM_DEBUG) AXOM_CUDA_TEST(core_array_for_all, capture_test) { using ExecSpace = axom::CUDA_EXEC<256>; From de08162817dd47598b548c260f9ab19b564b8e22 Mon Sep 17 00:00:00 2001 From: Chris White Date: Wed, 3 Apr 2024 17:11:00 -0700 Subject: [PATCH 090/592] temporarily turn off pci queue on tioga --- .gitlab/build_tioga.yml | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/.gitlab/build_tioga.yml b/.gitlab/build_tioga.yml index d1ec502610..11dfe9e835 100644 --- a/.gitlab/build_tioga.yml +++ b/.gitlab/build_tioga.yml @@ -21,14 +21,16 @@ .src_build_on_tioga: stage: build variables: - ALLOC_COMMAND: "flux run --queue pci --exclusive --time-limit=30m --nodes=1" +# ALLOC_COMMAND: "flux run --queue pci --exclusive --time-limit=30m --nodes=1" + ALLOC_COMMAND: "flux run --exclusive --time-limit=30m --nodes=1" extends: [.src_build_script, .on_tioga, .src_workflow] needs: [] .full_build_on_tioga: stage: build variables: - ALLOC_COMMAND: "flux run --queue pci --exclusive --time-limit=60m --nodes=1" +# ALLOC_COMMAND: "flux run --queue pci --exclusive --time-limit=60m --nodes=1" + ALLOC_COMMAND: "flux run --exclusive --time-limit=60m --nodes=1" extends: [.full_build_script, .on_tioga, .full_workflow] needs: [] From 5b9ab7f527a96ad5c31295baa6d7cd56b44a00e7 Mon Sep 17 00:00:00 2001 From: Alan Dayton <6393677+adayton1@users.noreply.github.com> Date: Mon, 8 Apr 2024 08:03:25 -0700 Subject: [PATCH 091/592] Add closest_point operator for Segment (#1311) --- RELEASE-NOTES.md | 1 + src/axom/primal/operators/closest_point.hpp | 79 +++++++ .../primal/tests/primal_closest_point.cpp | 197 +++++++++++++++++- 3 files changed, 276 insertions(+), 1 deletion(-) diff --git a/RELEASE-NOTES.md b/RELEASE-NOTES.md index 65d36b3185..f8f7672940 100644 --- a/RELEASE-NOTES.md +++ b/RELEASE-NOTES.md @@ -23,6 +23,7 @@ The Axom project release numbers follow [Semantic Versioning](http://semver.org/ - Adds prelimiary support for the optional `caliper` and `adiak` dependencies to axom. These dependencies are added through axom's `spack` package via the new `+profiling` variant, and are enabled in axom's build system via the `CALIPER_DIR` and `ADIAK_DIR` configuration paths. +- Primal: Adds a `closest_point` operator for finding the closest point on a `Segment` ### Changed - Upgrades `vcpkg` usage for axom's automated Windows builds to its diff --git a/src/axom/primal/operators/closest_point.hpp b/src/axom/primal/operators/closest_point.hpp index df9b55c28a..7d12f0d4dd 100644 --- a/src/axom/primal/operators/closest_point.hpp +++ b/src/axom/primal/operators/closest_point.hpp @@ -15,6 +15,7 @@ #define AXOM_PRIMAL_CLOSEST_POINT_HPP_ #include "axom/primal/geometry/Point.hpp" +#include "axom/primal/geometry/Segment.hpp" #include "axom/primal/geometry/Triangle.hpp" #include "axom/primal/geometry/Sphere.hpp" #include "axom/primal/geometry/OrientedBoundingBox.hpp" @@ -23,6 +24,84 @@ namespace axom { namespace primal { +/*! + * \brief Computes the closest point from a point, P, to a given segment. + * + * \param [in] P the query point + * \param [in] seg user-supplied segment + * \param [out] t location along the line segment + * \param [in] EPS fuzz factor for equality comparisons + * \return cp the closest point from a point P and a segment + * + * \note t \f$ \in [0, 1] \f% represents the fraction of the way from A to B, + * with 0 corresponding to A and 1 corresponding to B. + */ +template +AXOM_HOST_DEVICE inline Point closest_point(const Point& P, + const Segment& seg, + T& t, + double EPS = 1E-12) +{ + using PointType = Point; + using VectorType = Vector; + + using detail::isGeq; + using detail::isLeq; + + constexpr T ZERO {0.}; + constexpr T ONE {1.}; + + const PointType& A = seg[0]; + const PointType& B = seg[1]; + + const VectorType AB(A, B); + const T squaredNormAB = AB.squared_norm(); + + // Check if segment is degenerate + if(isLeq(squaredNormAB, ZERO, EPS)) + { + t = ZERO; + return A; + } + + // Compute length of the projection of AP onto AB + t = VectorType(A, P).dot(AB); + + if(isLeq(t, ZERO, EPS)) + { + t = ZERO; + return A; + } + else if(isGeq(t, squaredNormAB, EPS)) + { + t = ONE; + return B; + } + else + { + // Normalize t + t /= squaredNormAB; + return A + AB * t; + } +} + +/*! + * \brief Computes the closest point from a point, P, to a given segment. + * + * \param [in] P the query point + * \param [in] seg user-supplied segment + * \param [in] EPS fuzz factor for equality comparisons + * \return cp the closest point from a point P and a segment + */ +template +AXOM_HOST_DEVICE inline Point closest_point(const Point& P, + const Segment& seg, + double EPS = 1E-12) +{ + T t; + return closest_point(P, seg, t, EPS); +} + /*! * \brief Computes the closest point from a point, P, to a given triangle. * diff --git a/src/axom/primal/tests/primal_closest_point.cpp b/src/axom/primal/tests/primal_closest_point.cpp index 770af91f29..6127de6ea8 100644 --- a/src/axom/primal/tests/primal_closest_point.cpp +++ b/src/axom/primal/tests/primal_closest_point.cpp @@ -11,6 +11,201 @@ namespace primal = axom::primal; +//------------------------------------------------------------------------------ +TEST(primal_closest_point, seg_test_degenerate) +{ + constexpr double EPS = 1e-12; + + constexpr int DIM = 3; + using CoordType = double; + using QPoint = primal::Point; + using QSegment = primal::Segment; + + QPoint A({0.0, 0.0, 0.0}); + QPoint B({1.0e-9, 0.0, 0.0}); + QSegment S(A, B); + double t; + + // Query point is on the midpoint of AB + EXPECT_TRUE(primal::closest_point(QPoint({0.5e-10, 0.0, 0.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is on the line perpendicular to AB running through the midpoint + EXPECT_TRUE(primal::closest_point(QPoint({0.5e-10, 1.0, 0.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is equal to A + EXPECT_TRUE(primal::closest_point(QPoint({0.0, 0.0, 0.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is equal to B (for a degenerate segment, A is always returned) + EXPECT_TRUE(primal::closest_point(QPoint({1.0e-9, 0.0, 0.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // + // Now let's reverse the segment + // + QSegment S_reverse(B, A); + + // Query point is on the midpoint of AB + EXPECT_TRUE( + primal::closest_point(QPoint({0.5e-10, 0.0, 0.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is on the line perpendicular to AB running through the midpoint + EXPECT_TRUE( + primal::closest_point(QPoint({0.5e-10, 1.0, 0.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is equal to A + EXPECT_TRUE( + primal::closest_point(QPoint({0.0, 0.0, 0.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is equal to B (for a degenerate segment, A is always returned) + EXPECT_TRUE( + primal::closest_point(QPoint({1.0e-9, 0.0, 0.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); +} + +//------------------------------------------------------------------------------ +TEST(primal_closest_point, seg_test_closest_point_vertex_0) +{ + constexpr double EPS = 1e-12; + + constexpr int DIM = 3; + using CoordType = double; + using QPoint = primal::Point; + using QSegment = primal::Segment; + + QPoint A({0.0, 1.0, 1.0}); + QPoint B({1.0, 0.0, 0.0}); + QSegment S(A, B); + double t; + + // Query point is on the line extended past point A + EXPECT_TRUE(primal::closest_point(QPoint({-1.0, 2.0, 2.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is on the line perpendicular to AB running through point A + EXPECT_TRUE(primal::closest_point(QPoint({-1.0, 0.0, 2.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is equal to A + EXPECT_TRUE(primal::closest_point(QPoint({0.0, 1.0, 1.0}), S, t, EPS) == A); + EXPECT_NEAR(t, 0.0, EPS); + + // + // Now let's reverse the segment + // + QSegment S_reverse(B, A); + + // Query point is on the line extended past point A + EXPECT_TRUE( + primal::closest_point(QPoint({-1.0, 2.0, 2.0}), S_reverse, t, EPS) == A); + EXPECT_NEAR(t, 1.0, EPS); + + // Query point is on the line perpendicular to AB running through point A + EXPECT_TRUE( + primal::closest_point(QPoint({-1.0, 0.0, 2.0}), S_reverse, t, EPS) == A); + EXPECT_NEAR(t, 1.0, EPS); + + // Query point is equal to A + EXPECT_TRUE( + primal::closest_point(QPoint({0.0, 1.0, 1.0}), S_reverse, t, EPS) == A); + EXPECT_NEAR(t, 1.0, EPS); +} + +//------------------------------------------------------------------------------ +TEST(primal_closest_point, seg_test_closest_point_vertex_1) +{ + constexpr double EPS = 1e-12; + + constexpr int DIM = 3; + using CoordType = double; + using QPoint = primal::Point; + using QSegment = primal::Segment; + + QPoint A({0.0, 1.0, 1.0}); + QPoint B({1.0, 0.0, 0.0}); + QSegment S(A, B); + double t; + + // Query point is on the line extended past point B + EXPECT_TRUE(primal::closest_point(QPoint({2.0, -1.0, 1.0}), S, t, EPS) == B); + EXPECT_NEAR(t, 1.0, EPS); + + // Query point is on the line perpendicular to AB running through point B + EXPECT_TRUE(primal::closest_point(QPoint({2.0, 1.0, -1.0}), S, t, EPS) == B); + EXPECT_NEAR(t, 1.0, EPS); + + // Query point is equal to B + EXPECT_TRUE(primal::closest_point(QPoint({1.0, 0.0, 0.0}), S, t, EPS) == B); + EXPECT_NEAR(t, 1.0, EPS); + + // + // Now let's reverse the segment + // + QSegment S_reverse(B, A); + + // Query point is on the line extended past point B + EXPECT_TRUE( + primal::closest_point(QPoint({2.0, -1.0, 1.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is on the line perpendicular to AB running through point B + EXPECT_TRUE( + primal::closest_point(QPoint({2.0, 1.0, -1.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); + + // Query point is equal to B + EXPECT_TRUE( + primal::closest_point(QPoint({1.0, 0.0, 0.0}), S_reverse, t, EPS) == B); + EXPECT_NEAR(t, 0.0, EPS); +} + +//------------------------------------------------------------------------------ +TEST(primal_closest_point, seg_test_closest_point_interior) +{ + constexpr double EPS = 1e-12; + + constexpr int DIM = 3; + using CoordType = double; + using QPoint = primal::Point; + using QSegment = primal::Segment; + + QPoint A({0.0, 1.0, 1.0}); + QPoint B({1.0, 0.0, 0.0}); + QSegment S(A, B); + double t; + + // Query point is perpendicular to the midpoint of AB + EXPECT_TRUE(primal::closest_point(QPoint({0.0, 0.0, 0.5}), S, t, EPS) == + QPoint::lerp(A, B, 0.5)); + EXPECT_NEAR(t, 0.5, EPS); + + // Query point is a quarter of the way to B from A + EXPECT_TRUE(primal::closest_point(QPoint({0.25, 0.75, 0.75}), S, t, EPS) == + QPoint::lerp(A, B, 0.25)); + EXPECT_NEAR(t, 0.25, EPS); + + // + // Now let's reverse the segment + // + QSegment S_reverse(B, A); + + // Query point is perpendicular to the midpoint of AB + EXPECT_TRUE(primal::closest_point(QPoint({0.0, 0.0, 0.5}), S_reverse, t, EPS) == + QPoint::lerp(A, B, 0.5)); + EXPECT_NEAR(t, 0.5, EPS); + + // Query point is a quarter of the way to B from A + EXPECT_TRUE( + primal::closest_point(QPoint({0.25, 0.75, 0.75}), S_reverse, t, EPS) == + QPoint::lerp(A, B, 0.25)); + EXPECT_NEAR(t, 0.75, EPS); +} + //------------------------------------------------------------------------------ TEST(primal_closest_point, obb_test_closest_point_interior) { @@ -263,4 +458,4 @@ TEST(primal_closest_point, sphere_point_3D) } } } -} \ No newline at end of file +} From 7a16f081aa34a72938b837feaba044a1f5d75831 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 11 Dec 2023 17:34:28 -0800 Subject: [PATCH 092/592] Add a RangeAdapter helper class for looping over pairs of iterators --- src/axom/core/CMakeLists.txt | 1 + src/axom/core/RangeAdapter.hpp | 37 ++++++++++++++++++++++++++++++++++ 2 files changed, 38 insertions(+) create mode 100644 src/axom/core/RangeAdapter.hpp diff --git a/src/axom/core/CMakeLists.txt b/src/axom/core/CMakeLists.txt index 0d45eccc89..1fdca4951b 100644 --- a/src/axom/core/CMakeLists.txt +++ b/src/axom/core/CMakeLists.txt @@ -61,6 +61,7 @@ set(core_headers Map.hpp FlatMap.hpp Path.hpp + RangeAdapter.hpp StackArray.hpp Types.hpp memory_management.hpp diff --git a/src/axom/core/RangeAdapter.hpp b/src/axom/core/RangeAdapter.hpp new file mode 100644 index 0000000000..7439cdb6c8 --- /dev/null +++ b/src/axom/core/RangeAdapter.hpp @@ -0,0 +1,37 @@ +// Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +#ifndef Axom_Core_RangeAdapter_HPP +#define Axom_Core_RangeAdapter_HPP + +namespace axom +{ +/*! + * \class RangeAdapter + * + * \brief Simple adapter class that converts a pair of iterators into a range + * that can be iterated over in a range-based for-loop. + */ +template +class RangeAdapter +{ +public: + RangeAdapter(IteratorType begin, IteratorType end) + : m_begin(begin) + , m_end(end) + { } + /// \brief Returns an iterator to the beginning of the range. + IteratorType begin() const { return m_begin; } + /// \brief Returns an iterator to the end of the range. + IteratorType end() const { return m_end; } + +private: + IteratorType m_begin; + IteratorType m_end; +}; + +} // namespace axom + +#endif From 3646f271c974bf7dad502750c52c92cf0b4de9a2 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 11 Dec 2023 17:37:17 -0800 Subject: [PATCH 093/592] Slam: split Map iterators into flat/range iterators Per-set-element iteration is handled by a new iterator class, MapRangeIterator, which returns an axom::ArrayView to the strided Map data. The original MapIterator is used to handle iteration over the flat mapped data. --- src/axom/multimat/examples/traversal.cpp | 3 +- src/axom/slam/Map.hpp | 89 ++++++++++++++++++------ src/axom/slam/tests/slam_map_Map.cpp | 23 ++---- 3 files changed, 77 insertions(+), 38 deletions(-) diff --git a/src/axom/multimat/examples/traversal.cpp b/src/axom/multimat/examples/traversal.cpp index 6e8704660f..60d137b8bd 100644 --- a/src/axom/multimat/examples/traversal.cpp +++ b/src/axom/multimat/examples/traversal.cpp @@ -284,8 +284,7 @@ void various_traversal_methods(int nmats, timer.start(); { auto map = mm.get1dField("Cell Array"); - for(MultiMat::Field1D::iterator iter = map.begin(); iter != map.end(); - iter++) + for(auto iter = map.set_begin(); iter != map.set_end(); iter++) { for(int comp = 0; comp < iter.numComp(); ++comp) { diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 2d4c56b356..04f91e5bf9 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -25,6 +25,7 @@ #include "axom/slam/NullSet.hpp" #include "axom/core/IteratorBase.hpp" +#include "axom/core/RangeAdapter.hpp" #include "axom/slam/policies/StridePolicies.hpp" #include "axom/slam/policies/IndirectionPolicies.hpp" @@ -394,7 +395,40 @@ class Map : public StrPol, }; /** - * \class MapIterator + * \class MapIterator + * \brief An iterator type for a map. Each increment operation advances the + * iterator to the element at the next flat index. + */ + class MapIterator : public IteratorBase + { + public: + using iterator_category = std::random_access_iterator_tag; + using value_type = DataType; + using difference_type = SetPosition; + + using IterBase = IteratorBase; + using iter = MapIterator; + using PositionType = SetPosition; + using IterBase::m_pos; + + public: + MapIterator(PositionType pos, Map* oMap) : IterBase(pos), m_mapPtr(oMap) { } + + /** + * \brief Returns the current iterator value. + */ + DataType& operator*() { return (*m_mapPtr)[m_pos]; } + + protected: + /** Implementation of advance() as required by IteratorBase */ + void advance(PositionType n) { m_pos += n; } + + protected: + Map* m_mapPtr; + }; + + /** + * \class MapRangeIterator * \brief An iterator type for a map. * Each increment operation advances the iterator to the next set * element. @@ -409,42 +443,43 @@ class Map : public StrPol, * the currently pointed to element (where 0 <= j < numComp()).\n * For example: `iter[off]` is the same as `(iter+off)(0)` */ - class MapIterator : public IteratorBase + class MapRangeIterator : public IteratorBase { public: - using iterator_category = std::random_access_iterator_tag; - using value_type = DataType; - using difference_type = SetPosition; - using IterBase = IteratorBase; using iter = MapIterator; using PositionType = SetPosition; using IterBase::m_pos; + using iterator_category = std::random_access_iterator_tag; + using value_type = axom::ArrayView; + using difference_type = SetPosition; + public: - MapIterator(PositionType pos, Map* oMap) : IterBase(pos), m_mapPtr(oMap) { } + MapRangeIterator(PositionType pos, Map* oMap) + : IterBase(pos) + , m_mapPtr(oMap) + { } /** - * \brief Returns the current iterator value. If the map has multiple - * components, this will return the first component. To access - * the other components, use iter(comp) + * \brief Returns the current iterator value. */ - DataType& operator*() { return (*m_mapPtr)(m_pos, 0); } + value_type operator*() + { + return value_type {m_mapPtr->data().data() + m_pos * m_mapPtr->stride(), + m_mapPtr->stride()}; + } /** * \brief Returns the iterator's value at the specified component. * Returns the first component if comp_idx is not specified. - * \param comp_idx (Optional) Zero-based index of the component. + * \param comp_idx Zero-based index of the component. */ - DataType& operator()(SetPosition comp_idx = 0) + DataType& operator()(SetPosition comp_idx) const { return (*m_mapPtr)(m_pos, comp_idx); } - - /** \brief Returns the first component value after n increments. */ - const DataType& operator[](PositionType n) const { return *(*this + n); } - - DataType& operator[](PositionType n) { return *(*this + n); } + DataType& operator[](PositionType n) const { return (*this).flatIndex(n); } /** \brief Returns the number of components per element in the Map. */ PositionType numComp() const { return m_mapPtr->stride(); } @@ -459,8 +494,22 @@ class Map : public StrPol, public: // Functions related to iteration MapIterator begin() { return MapIterator(0, this); } - MapIterator end() { return MapIterator(size(), this); } - const_iterator_pair range() const { return std::make_pair(begin(), end()); } + MapIterator end() + { + return MapIterator(size() * StridePolicyType::stride(), this); + } + + RangeAdapter range() const + { + return RangeAdapter {begin(), end()}; + } + + MapRangeIterator set_begin() { return MapRangeIterator(0, this); } + MapRangeIterator set_end() { return MapRangeIterator(size(), this); } + RangeAdapter set_elements() + { + return RangeAdapter {set_begin(), set_end()}; + } public: /** diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index 2a76edb221..5da4e11d79 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -285,15 +285,6 @@ TEST(slam_map, iterate) } } - //iter[n] access - { - IterType beginIter = m.begin(); - for(int idx = 0; idx < m.size(); idx++) - { - EXPECT_EQ(beginIter[idx], static_cast(idx * multFac)); - } - } - //iter1 - iter2 { IterType beginIter = m.begin(); @@ -315,6 +306,7 @@ void constructAndTestMapIteratorWithStride(int stride) using RealMap = slam::Map, VecIndirection, StrideType>; using MapIterator = typename RealMap::MapIterator; + using MapRangeIterator = typename RealMap::MapRangeIterator; SetType s(MAX_SET_SIZE); @@ -335,11 +327,11 @@ void constructAndTestMapIteratorWithStride(int stride) double multFac2 = 1.010; { int idx = 0; - for(MapIterator iter = m.begin(); iter != m.end(); ++iter) + for(auto submap : m.set_elements()) { - for(auto idx2 = 0; idx2 < iter.numComp(); ++idx2) + for(auto idx2 = 0; idx2 < submap.size(); ++idx2) { - iter(idx2) = static_cast(idx * multFac + idx2 * multFac2); + submap[idx2] = static_cast(idx * multFac + idx2 * multFac2); } ++idx; } @@ -352,12 +344,11 @@ void constructAndTestMapIteratorWithStride(int stride) //iter++ access { int idx = 0; - for(MapIterator iter = m.begin(); iter != m.end(); iter++) + for(auto submap : m.set_elements()) { - EXPECT_EQ(*iter, static_cast(idx * multFac)); - for(auto idx2 = 0; idx2 < iter.numComp(); ++idx2) + for(auto idx2 = 0; idx2 < submap.size(); ++idx2) { - EXPECT_DOUBLE_EQ(iter(idx2), + EXPECT_DOUBLE_EQ(submap[idx2], static_cast(idx * multFac + idx2 * multFac2)); } idx++; From 6a8ed1608050fb8015ea2749e6000b82eb01b737 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 15:30:48 -0800 Subject: [PATCH 094/592] BivariateSet: add iterators for ProductSet, RangeSet --- src/axom/slam/ProductSet.hpp | 66 +++++++++++ src/axom/slam/RelationSet.hpp | 106 ++++++++++++++++++ src/axom/slam/tests/slam_set_BivariateSet.cpp | 32 +++++- 3 files changed, 201 insertions(+), 3 deletions(-) diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 36d2ba995a..88193d13fe 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -13,6 +13,7 @@ #ifndef SLAM_PRODUCT_SET_H_ #define SLAM_PRODUCT_SET_H_ +#include "axom/core/IteratorBase.hpp" #include "axom/slam/BivariateSet.hpp" #include "axom/slam/RangeSet.hpp" @@ -93,6 +94,9 @@ class ProductSet final Type get(PositionType secondSetSize) const { return Type(secondSetSize); } }; + struct Iterator; + using IteratorType = Iterator; + public: using ConcreteSet = ProductSet; using VirtualSet = ProductSet; @@ -232,6 +236,18 @@ class ProductSet final PositionType size(PositionType) const { return this->secondSetSize(); } + /*! + * \brief Return an iterator to the first pair of set elements in the + * relation. + */ + Iterator begin() const { return Iterator(this, 0); } + + /*! + * \brief Return an iterator to one past the last pair of set elements in the + * relation. + */ + Iterator end() const { return Iterator(this, size()); } + AXOM_HOST_DEVICE RangeSetType elementRangeSet(PositionType pos1) const { const auto sz = this->secondSetSize(); @@ -289,6 +305,56 @@ class ProductSet final RowSet m_rowSet; }; +/*! + * \brief Iterator class for a ProductSet. + */ +template +struct ProductSet::Iterator + : public IteratorBase +{ +private: + using ProductSetType = ProductSet; + using BaseType = IteratorBase; + +public: + using difference_type = IndexType; + using value_type = std::pair; + using reference = value_type&; + using pointer = value_type*; + using iterator_category = std::random_access_iterator_tag; + + using IndexType = typename ProductSetType::PositionType; + + Iterator(const ProductSetType* bset, IndexType pos = 0) + : BaseType(pos) + , m_bset(bset) + { } + + std::pair operator*() const + { + return {m_bset->flatToFirstIndex(this->m_pos), + m_bset->flatToSecondIndex(this->m_pos)}; + } + + /// \brief Return the first set index pointed to by this iterator. + IndexType firstIndex() const { return m_bset->flatToFirstIndex(this->m_pos); } + + /// \brief Return the second set index pointed to by this iterator. + IndexType secondIndex() const + { + return m_bset->flatToSecondIndex(this->m_pos); + } + + /// \brief Return the flat iteration index of this iterator. + IndexType flatIndex() const { return this->m_pos; } + +protected: + void advance(IndexType n) { this->m_pos += n; } + +private: + const ProductSetType* m_bset; +}; + } // end namespace slam } // end namespace axom diff --git a/src/axom/slam/RelationSet.hpp b/src/axom/slam/RelationSet.hpp index 4dc35e8b30..2cb3aa8e52 100644 --- a/src/axom/slam/RelationSet.hpp +++ b/src/axom/slam/RelationSet.hpp @@ -58,6 +58,8 @@ class RelationSet final using BaseType::INVALID_POS; + struct Iterator; + public: using ConcreteSet = RelationSet; @@ -244,6 +246,18 @@ class RelationSet final */ PositionType size(PositionType pos) const { return m_relation->size(pos); } + /*! + * \brief Return an iterator to the first pair of set elements in the + * relation. + */ + Iterator begin() const { return Iterator(this, 0); } + + /*! + * \brief Return an iterator to one past the last pair of set elements in the + * relation. + */ + Iterator end() const { return Iterator(this, totalSize()); } + bool isValid(bool verboseOutput = false) const { if(m_relation == nullptr) @@ -299,6 +313,98 @@ class RelationSet final RelationType* m_relation; //the relation that this set is based off of }; +/*! + * \brief Iterator class for a RelationSet. + */ +template +struct RelationSet::Iterator +{ +public: + using difference_type = IndexType; + using value_type = std::pair; + using reference = value_type&; + using pointer = value_type*; + using iterator_category = std::forward_iterator_tag; + + using RelationSetType = + RelationSet; + using IndexType = typename RelationSetType::PositionType; + + Iterator(const RelationSetType* bset, IndexType flatPos = 0) : m_bset(bset) + { + if(flatPos >= m_bset->totalSize()) + { + m_firstIndex = m_bset->firstSetSize(); + m_firstOffset = m_bset->totalSize(); + m_secondOffset = 0; + } + else + { + m_firstIndex = m_bset->flatToFirstIndex(flatPos); + m_firstOffset = m_bset->getRelation()->offset(m_firstIndex); + m_secondOffset = flatPos - m_firstOffset; + } + } + + friend bool operator==(const Iterator& lhs, const Iterator& rhs) + { + return lhs.flatIndex() == rhs.flatIndex(); + } + + friend bool operator!=(const Iterator& lhs, const Iterator& rhs) + { + return lhs.flatIndex() != rhs.flatIndex(); + } + + Iterator& operator++() + { + this->moveForward(); + return *this; + } + + Iterator operator++(int) + { + Iterator next = *this; + ++(*this); + return next; + } + + std::pair operator*() const + { + // Going from flat-to-second index is always free for a StaticRelation. + return {m_firstIndex, m_bset->flatToSecondIndex(flatIndex())}; + } + + /// \brief Return the first set index pointed to by this iterator. + IndexType firstIndex() const { return m_firstIndex; } + + /// \brief Return the second set index pointed to by this iterator. + IndexType secondIndex() const + { + return m_bset->flatToSecondIndex(flatIndex()); + } + + /// \brief Return the flat iteration index of this iterator. + IndexType flatIndex() const { return m_firstOffset + m_secondOffset; } + +private: + void moveForward() + { + m_secondOffset++; + if(m_secondOffset == m_bset->size(m_firstIndex)) + { + m_firstOffset += m_bset->size(m_firstIndex); + m_firstIndex++; + m_secondOffset = 0; + } + } + + const RelationSetType* m_bset; + IndexType m_firstOffset; + IndexType m_firstIndex; + IndexType m_secondOffset; +}; + } // end namespace slam } // end namespace axom diff --git a/src/axom/slam/tests/slam_set_BivariateSet.cpp b/src/axom/slam/tests/slam_set_BivariateSet.cpp index 1169e086c3..c6165c33d0 100644 --- a/src/axom/slam/tests/slam_set_BivariateSet.cpp +++ b/src/axom/slam/tests/slam_set_BivariateSet.cpp @@ -388,7 +388,7 @@ TYPED_TEST(BivariateSetTester, sizes) // Tests BivariateSet::getFirstSet(), getSecondSet(), getElements(idx) // and the ability to operate and iterate on the resulting sets -template +template void bSetTraverseTest(slam::BivariateSet* bset, bool shouldCheckMod) { const auto firstSetSize = bset->firstSetSize(); @@ -426,6 +426,32 @@ void bSetTraverseTest(slam::BivariateSet* bset, bool shouldCheckMod) } SLIC_INFO(sstr.str() << "}"); } + + DerivedSetType* derivedSet = static_cast(bset); + + SLIC_INFO("Flat traversal:\n ----------------------"); + + std::stringstream sstr; + + // Iterate through the bivariate set as a list of indexes (i, j) in {S1, S2} + int flatIndex = 0; + for(auto bsetElem = derivedSet->begin(); bsetElem != derivedSet->end(); + ++bsetElem) + { + EXPECT_EQ(flatIndex, bsetElem.flatIndex()); + EXPECT_EQ(flatIndex, + derivedSet->findElementFlatIndex(bsetElem.firstIndex(), + bsetElem.secondIndex())); + EXPECT_EQ(bsetElem.firstIndex(), derivedSet->flatToFirstIndex(flatIndex)); + EXPECT_EQ(bsetElem.secondIndex(), derivedSet->flatToSecondIndex(flatIndex)); + + sstr << flatIndex << ": (" << firstSet->at(bsetElem.firstIndex()) << "," + << secondSet->at(bsetElem.secondIndex()) << "), "; + + flatIndex++; + } + + SLIC_INFO("{ " << sstr.str() << " }"); } TYPED_TEST(BivariateSetTester, traverse) @@ -443,7 +469,7 @@ TYPED_TEST(BivariateSetTester, traverse) EXPECT_TRUE(pset.isValid(true)); bool checkMod = false; - bSetTraverseTest(&pset, checkMod); + bSetTraverseTest(&pset, checkMod); } // Test traversal functions for a RelationSet @@ -458,7 +484,7 @@ TYPED_TEST(BivariateSetTester, traverse) EXPECT_TRUE(rset.isValid(true)); bool checkMod = true; - bSetTraverseTest(&rset, checkMod); + bSetTraverseTest(&rset, checkMod); } } From aa0b55cc30e4fd6ddb478010f4588e5a8885f3ce Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 16:15:48 -0800 Subject: [PATCH 095/592] BivariateSet: move RelationSet iterator impl into BivariateSet --- src/axom/slam/BivariateSet.hpp | 110 ++++++++++++++++++ src/axom/slam/RelationSet.hpp | 98 +--------------- src/axom/slam/tests/slam_set_BivariateSet.cpp | 67 ++++++++--- 3 files changed, 162 insertions(+), 113 deletions(-) diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index 0156928fd8..de66669670 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -28,6 +28,9 @@ namespace axom { namespace slam { +template +struct BivariateSetIterator; + /** * \class BivariateSet * @@ -95,6 +98,7 @@ class BivariateSet policies::ArrayViewIndirection>; using RangeSetType = RangeSet; + using IteratorType = BivariateSetIterator; public: static const PositionType INVALID_POS = PositionType(-1); @@ -232,6 +236,18 @@ class BivariateSet */ virtual SubsetType getElements(PositionType s1) const = 0; + /*! + * \brief Return an iterator to the first pair of set elements in the + * relation. + */ + IteratorType begin() const { return IteratorType(this, 0); } + + /*! + * \brief Return an iterator to one past the last pair of set elements in the + * relation. + */ + IteratorType end() const { return IteratorType(this, size()); } + virtual bool isValid(bool verboseOutput = false) const; private: @@ -278,6 +294,100 @@ bool BivariateSet::isValid(bool verboseOutput) const return m_set1->isValid(verboseOutput) && m_set2->isValid(verboseOutput); } +/*! + * \class BivariateSetIterator + * + * \brief Implements a forward iterator concept on a BivariateSet type. + */ +template +struct BivariateSetIterator +{ +public: + using IndexType = typename BivariateSetType::PositionType; + using difference_type = IndexType; + using value_type = std::pair; + using reference = value_type&; + using pointer = value_type*; + using iterator_category = std::forward_iterator_tag; + + BivariateSetIterator(const BivariateSetType* bset, IndexType flatPos = 0) + : m_bset(bset) + { + if(flatPos >= m_bset->size()) + { + m_firstIndex = m_bset->firstSetSize(); + m_firstOffset = m_bset->size(); + m_secondOffset = 0; + } + else + { + m_firstIndex = m_bset->flatToFirstIndex(flatPos); + m_firstOffset = m_bset->findElementFlatIndex(m_firstIndex); + m_secondOffset = flatPos - m_firstOffset; + } + } + + friend bool operator==(const BivariateSetIterator& lhs, + const BivariateSetIterator& rhs) + { + return lhs.flatIndex() == rhs.flatIndex(); + } + + friend bool operator!=(const BivariateSetIterator& lhs, + const BivariateSetIterator& rhs) + { + return lhs.flatIndex() != rhs.flatIndex(); + } + + BivariateSetIterator& operator++() + { + this->moveForward(); + return *this; + } + + BivariateSetIterator operator++(int) + { + BivariateSetIterator next = *this; + ++(*this); + return next; + } + + std::pair operator*() const + { + // Going from flat-to-second index is always free for a StaticRelation. + return {m_firstIndex, m_bset->flatToSecondIndex(flatIndex())}; + } + + /// \brief Return the first set index pointed to by this iterator. + IndexType firstIndex() const { return m_firstIndex; } + + /// \brief Return the second set index pointed to by this iterator. + IndexType secondIndex() const + { + return m_bset->flatToSecondIndex(flatIndex()); + } + + /// \brief Return the flat iteration index of this iterator. + IndexType flatIndex() const { return m_firstOffset + m_secondOffset; } + +private: + void moveForward() + { + m_secondOffset++; + if(m_secondOffset == m_bset->size(m_firstIndex)) + { + m_firstOffset += m_bset->size(m_firstIndex); + m_firstIndex++; + m_secondOffset = 0; + } + } + + const BivariateSetType* m_bset; + IndexType m_firstOffset; + IndexType m_firstIndex; + IndexType m_secondOffset; +}; + /** * \class NullBivariateSet * diff --git a/src/axom/slam/RelationSet.hpp b/src/axom/slam/RelationSet.hpp index 2cb3aa8e52..f759d5e755 100644 --- a/src/axom/slam/RelationSet.hpp +++ b/src/axom/slam/RelationSet.hpp @@ -58,7 +58,7 @@ class RelationSet final using BaseType::INVALID_POS; - struct Iterator; + using IteratorType = BivariateSetIterator; public: using ConcreteSet = @@ -250,13 +250,13 @@ class RelationSet final * \brief Return an iterator to the first pair of set elements in the * relation. */ - Iterator begin() const { return Iterator(this, 0); } + IteratorType begin() const { return IteratorType(this, 0); } /*! * \brief Return an iterator to one past the last pair of set elements in the * relation. */ - Iterator end() const { return Iterator(this, totalSize()); } + IteratorType end() const { return IteratorType(this, totalSize()); } bool isValid(bool verboseOutput = false) const { @@ -313,98 +313,6 @@ class RelationSet final RelationType* m_relation; //the relation that this set is based off of }; -/*! - * \brief Iterator class for a RelationSet. - */ -template -struct RelationSet::Iterator -{ -public: - using difference_type = IndexType; - using value_type = std::pair; - using reference = value_type&; - using pointer = value_type*; - using iterator_category = std::forward_iterator_tag; - - using RelationSetType = - RelationSet; - using IndexType = typename RelationSetType::PositionType; - - Iterator(const RelationSetType* bset, IndexType flatPos = 0) : m_bset(bset) - { - if(flatPos >= m_bset->totalSize()) - { - m_firstIndex = m_bset->firstSetSize(); - m_firstOffset = m_bset->totalSize(); - m_secondOffset = 0; - } - else - { - m_firstIndex = m_bset->flatToFirstIndex(flatPos); - m_firstOffset = m_bset->getRelation()->offset(m_firstIndex); - m_secondOffset = flatPos - m_firstOffset; - } - } - - friend bool operator==(const Iterator& lhs, const Iterator& rhs) - { - return lhs.flatIndex() == rhs.flatIndex(); - } - - friend bool operator!=(const Iterator& lhs, const Iterator& rhs) - { - return lhs.flatIndex() != rhs.flatIndex(); - } - - Iterator& operator++() - { - this->moveForward(); - return *this; - } - - Iterator operator++(int) - { - Iterator next = *this; - ++(*this); - return next; - } - - std::pair operator*() const - { - // Going from flat-to-second index is always free for a StaticRelation. - return {m_firstIndex, m_bset->flatToSecondIndex(flatIndex())}; - } - - /// \brief Return the first set index pointed to by this iterator. - IndexType firstIndex() const { return m_firstIndex; } - - /// \brief Return the second set index pointed to by this iterator. - IndexType secondIndex() const - { - return m_bset->flatToSecondIndex(flatIndex()); - } - - /// \brief Return the flat iteration index of this iterator. - IndexType flatIndex() const { return m_firstOffset + m_secondOffset; } - -private: - void moveForward() - { - m_secondOffset++; - if(m_secondOffset == m_bset->size(m_firstIndex)) - { - m_firstOffset += m_bset->size(m_firstIndex); - m_firstIndex++; - m_secondOffset = 0; - } - } - - const RelationSetType* m_bset; - IndexType m_firstOffset; - IndexType m_firstIndex; - IndexType m_secondOffset; -}; - } // end namespace slam } // end namespace axom diff --git a/src/axom/slam/tests/slam_set_BivariateSet.cpp b/src/axom/slam/tests/slam_set_BivariateSet.cpp index c6165c33d0..1b5ae6c880 100644 --- a/src/axom/slam/tests/slam_set_BivariateSet.cpp +++ b/src/axom/slam/tests/slam_set_BivariateSet.cpp @@ -427,31 +427,62 @@ void bSetTraverseTest(slam::BivariateSet* bset, bool shouldCheckMod) SLIC_INFO(sstr.str() << "}"); } - DerivedSetType* derivedSet = static_cast(bset); + SLIC_INFO( + "Flat traversal through virtual bivariate set:\n " + "----------------------"); - SLIC_INFO("Flat traversal:\n ----------------------"); + { + std::stringstream sstr; - std::stringstream sstr; + // Iterate through the bivariate set as a list of indexes (i, j) in {S1, S2} + int flatIndex = 0; + for(auto bsetElem = bset->begin(); bsetElem != bset->end(); ++bsetElem) + { + EXPECT_EQ(flatIndex, bsetElem.flatIndex()); + EXPECT_EQ(flatIndex, + bset->findElementFlatIndex(bsetElem.firstIndex(), + bsetElem.secondIndex())); + EXPECT_EQ(bsetElem.firstIndex(), bset->flatToFirstIndex(flatIndex)); + EXPECT_EQ(bsetElem.secondIndex(), bset->flatToSecondIndex(flatIndex)); - // Iterate through the bivariate set as a list of indexes (i, j) in {S1, S2} - int flatIndex = 0; - for(auto bsetElem = derivedSet->begin(); bsetElem != derivedSet->end(); - ++bsetElem) - { - EXPECT_EQ(flatIndex, bsetElem.flatIndex()); - EXPECT_EQ(flatIndex, - derivedSet->findElementFlatIndex(bsetElem.firstIndex(), - bsetElem.secondIndex())); - EXPECT_EQ(bsetElem.firstIndex(), derivedSet->flatToFirstIndex(flatIndex)); - EXPECT_EQ(bsetElem.secondIndex(), derivedSet->flatToSecondIndex(flatIndex)); + sstr << flatIndex << ": (" << firstSet->at(bsetElem.firstIndex()) << "," + << secondSet->at(bsetElem.secondIndex()) << "), "; - sstr << flatIndex << ": (" << firstSet->at(bsetElem.firstIndex()) << "," - << secondSet->at(bsetElem.secondIndex()) << "), "; + flatIndex++; + } - flatIndex++; + SLIC_INFO("{ " << sstr.str() << " }"); } - SLIC_INFO("{ " << sstr.str() << " }"); + DerivedSetType* derivedSet = static_cast(bset); + + SLIC_INFO( + "Flat traversal through derived bivariate set:\n " + "----------------------"); + + { + std::stringstream sstr; + + // Iterate through the bivariate set as a list of indexes (i, j) in {S1, S2} + int flatIndex = 0; + for(auto bsetElem = derivedSet->begin(); bsetElem != derivedSet->end(); + ++bsetElem) + { + EXPECT_EQ(flatIndex, bsetElem.flatIndex()); + EXPECT_EQ(flatIndex, + derivedSet->findElementFlatIndex(bsetElem.firstIndex(), + bsetElem.secondIndex())); + EXPECT_EQ(bsetElem.firstIndex(), derivedSet->flatToFirstIndex(flatIndex)); + EXPECT_EQ(bsetElem.secondIndex(), derivedSet->flatToSecondIndex(flatIndex)); + + sstr << flatIndex << ": (" << firstSet->at(bsetElem.firstIndex()) << "," + << secondSet->at(bsetElem.secondIndex()) << "), "; + + flatIndex++; + } + + SLIC_INFO("{ " << sstr.str() << " }"); + } } TYPED_TEST(BivariateSetTester, traverse) From af8d870a490a66383926559ff977c8fbf3a2c5a7 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 16:53:33 -0800 Subject: [PATCH 096/592] BivariateMap: use BivariateSet iterator internally Also adds a function BivariateMap::flatValue() for looking up an element with a flat index into the BivariateSet and a component index. --- src/axom/slam/BivariateMap.hpp | 145 +++++------------- src/axom/slam/tests/slam_map_BivariateMap.cpp | 13 +- 2 files changed, 47 insertions(+), 111 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 6afe7cd6fd..a033250785 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -353,6 +353,24 @@ class BivariateMap return useCompIndexing() ? m_map(idx, comp) : m_map[idx]; } + /** + * \brief Access the value associated with the given FlatIndex into the + * BivariateSet and the component index. + * + * \pre `0 <= flatIndex < size()` + * \pre `0 <= comp < numComp()` + */ + AXOM_HOST_DEVICE ConstValueType flatValue(SetPosition flatIndex, + SetPosition comp = 0) const + { + return useCompIndexing() ? m_map(flatIndex, comp) : m_map[flatIndex]; + } + + AXOM_HOST_DEVICE ValueType flatValue(SetPosition flatIndex, SetPosition comp = 0) + { + return useCompIndexing() ? m_map(flatIndex, comp) : m_map[flatIndex]; + } + /** * \brief Access the value associated with the given DenseIndex into the * BivariateSet and the component index. @@ -469,15 +487,12 @@ class BivariateMap */ template class BivariateMapIterator - : public IteratorBase, SetPosition> { private: - using iterator_category = std::random_access_iterator_tag; + using iterator_category = std::forward_iterator_tag; using value_type = DataType; using difference_type = SetPosition; - using IterBase = IteratorBase; - using IterBase::m_pos; using iter = BivariateMapIterator; public: @@ -493,18 +508,26 @@ class BivariateMap * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex */ BivariateMapIterator(BivariateMapPtr sMap, PositionType pos) - : IterBase(pos) - , m_map(sMap) - , firstIdx(INVALID_POS) - , secondIdx(INVALID_POS) - , secondSparseIdx(INVALID_POS) + : m_map(sMap) + , m_bsetIterator(m_map->set(), pos) + { } + + BivariateMapIterator& operator++() { - find_indices(pos); + m_bsetIterator++; + return *this; + } + + BivariateMapIterator operator++(int) + { + BivariateMapIterator next = *this; + ++(*this); + return next; } bool operator==(const iter& other) const { - return (m_map == other.m_map) && (m_pos == other.m_pos); + return (m_map == other.m_map) && (m_bsetIterator == other.m_bsetIterator); } bool operator!=(const iter& other) const { return !operator==(other); } @@ -513,7 +536,7 @@ class BivariateMap * multiple components, this will return the first component. * To access the other components, use iter(comp) */ - DataRefType operator*() { return (*m_map)(firstIdx, secondIdx, 0); } + DataRefType operator*() { return value(0); } /** * \brief Returns the iterator's value at the specified component. @@ -522,7 +545,7 @@ class BivariateMap */ DataRefType operator()(PositionType comp_idx = 0) { - return (*m_map)(firstIdx, secondIdx, comp_idx); + return value(comp_idx); } /** \brief Returns the first component value after n increments. */ @@ -533,114 +556,26 @@ class BivariateMap */ DataRefType value(PositionType comp = 0) { - return (*m_map)(firstIdx, secondIdx, comp); + return m_map->flatValue(m_bsetIterator.flatIndex(), comp); } /** * \brief return the current iterator's first index into the BivariateSet */ - PositionType firstIndex() const { return firstIdx; } + PositionType firstIndex() const { return m_bsetIterator.firstIndex(); } /** * \brief return the current iterator's second index (DenseIndex) * into the BivariateSet */ - PositionType secondIndex() const { return m_map->set()->at(m_pos); } + PositionType secondIndex() const { return m_bsetIterator.secondIndex(); } /** \brief Returns the number of components per element in the map. */ PositionType numComp() const { return m_map->numComp(); } - private: - /** Given the ElementFlatIndex, search for and update the other indices. - * This function does not depend on the three indices to be correct. */ - void find_indices(PositionType pos) - { - if(pos < 0 || pos > m_map->totalSize()) - { - firstIdx = INVALID_POS; - secondIdx = INVALID_POS; - secondSparseIdx = INVALID_POS; - return; - } - else if(pos == m_map->totalSize()) - { - firstIdx = m_map->firstSetSize(); - secondIdx = 0; - secondSparseIdx = 0; - return; - } - - firstIdx = 0; - PositionType beginIdx = 0; - while(beginIdx + m_map->set()->size(firstIdx) <= pos) - { - beginIdx += m_map->set()->size(firstIdx); - firstIdx++; - } - - SLIC_ASSERT(firstIdx < m_map->firstSetSize()); - secondIdx = m_map->set()->at(pos); - secondSparseIdx = pos - beginIdx; - } - - /* recursive helper function for advance(n) to update the three indices. - * This is an updating function, which assumes the pre-advance state is - * valid, i.e. the three indices were correct prior to advance(n). - * It will recurse as many times as the change in firstIdx. */ - void advance_helper(PositionType n, PositionType idx1, PositionType idx2) - { - const BivariateSetType* set = m_map->set(); - if(idx2 + n < 0) - { - advance_helper(n + (idx2 + 1), idx1 - 1, set->size(idx1 - 1) - 1); - } - else if(idx2 + n >= set->size(idx1)) - { - advance_helper(n - (set->size(idx1) - idx2), idx1 + 1, 0); - } - else - { - firstIdx = idx1; - secondSparseIdx = idx2 + n; - secondIdx = m_map->set()->at(m_pos); - } - } - - protected: - /** Implementation of advance() as required by IteratorBase. - * It updates the three other indices as well. */ - void advance(PositionType n) - { - m_pos += n; - PositionType size = m_map->totalSize(); - - if(firstIdx == INVALID_POS) - { //iterator was in an invalid position. search for the indices. - find_indices(m_pos); - } - else if(m_pos == size) - { - firstIdx = m_map->firstSetSize(); - secondIdx = 0; - secondSparseIdx = 0; - } - else if(m_pos < 0 || m_pos > size) - { - firstIdx = INVALID_POS; - secondIdx = INVALID_POS; - secondSparseIdx = INVALID_POS; - } - else - { - advance_helper(n, firstIdx, secondSparseIdx); - } - } - private: BivariateMapPtr m_map; - PositionType firstIdx; - PositionType secondIdx; - PositionType secondSparseIdx; + typename BivariateSetType::IteratorType m_bsetIterator; }; public: diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index fb4b398fad..40a50af5b7 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -389,9 +389,9 @@ void constructAndTestBivariateMapIterator(int stride) SLIC_INFO("Checking the elements with BivariateMap iterator."); { auto iter = m.begin(); - auto begin_iter = m.begin(); - auto end_iter = m.end(); - auto inval_iter = end_iter + 1; + //auto begin_iter = m.begin(); + //auto end_iter = m.end(); + //auto inval_iter = end_iter + 1; auto flat_idx = 0; for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) { @@ -405,9 +405,10 @@ void constructAndTestBivariateMapIterator(int stride) DataType val = getVal(idx1, idx2, i); EXPECT_EQ(iter.value(i), val); EXPECT_EQ(iter(i), val); - EXPECT_EQ((begin_iter + flat_idx).value(i), val); - EXPECT_EQ((end_iter - (m.totalSize() - flat_idx)).value(i), val); - EXPECT_EQ((inval_iter - (m.totalSize() - flat_idx + 1)).value(i), val); + // Below disabled because we can't test these with just a forward access iterator + //EXPECT_EQ((begin_iter + flat_idx).value(i), val); + //EXPECT_EQ((end_iter - (m.totalSize() - flat_idx)).value(i), val); + //EXPECT_EQ((inval_iter - (m.totalSize() - flat_idx + 1)).value(i), val); } iter++; flat_idx++; From da39568ce8fb3bb7b5a6c39b2f982878c94ddcc5 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 17:40:00 -0800 Subject: [PATCH 097/592] Map: enable const iterators --- src/axom/slam/Map.hpp | 68 +++++++++++++++++++--------- src/axom/slam/tests/slam_map_Map.cpp | 2 - 2 files changed, 47 insertions(+), 23 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 04f91e5bf9..d0308d2d3f 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -90,11 +90,17 @@ class Map : public StrPol, class MapBuilder; // types for iterator + template class MapIterator; - using const_iterator = MapIterator; + using const_iterator = MapIterator; using const_iterator_pair = std::pair; - using iterator = const_iterator; - using iterator_pair = const_iterator_pair; + using iterator = MapIterator; + using iterator_pair = std::pair; + + template + class MapRangeIterator; + using const_range_iterator = MapRangeIterator; + using range_iterator = MapRangeIterator; public: using ConcreteMap = Map; @@ -399,11 +405,14 @@ class Map : public StrPol, * \brief An iterator type for a map. Each increment operation advances the * iterator to the element at the next flat index. */ - class MapIterator : public IteratorBase + template + class MapIterator : public IteratorBase, SetPosition> { public: using iterator_category = std::random_access_iterator_tag; - using value_type = DataType; + using value_type = std::conditional_t; + using reference_type = value_type&; + using pointer_type = value_type*; using difference_type = SetPosition; using IterBase = IteratorBase; @@ -417,7 +426,7 @@ class Map : public StrPol, /** * \brief Returns the current iterator value. */ - DataType& operator*() { return (*m_mapPtr)[m_pos]; } + reference_type operator*() { return (*m_mapPtr)[m_pos]; } protected: /** Implementation of advance() as required by IteratorBase */ @@ -443,16 +452,20 @@ class Map : public StrPol, * the currently pointed to element (where 0 <= j < numComp()).\n * For example: `iter[off]` is the same as `(iter+off)(0)` */ - class MapRangeIterator : public IteratorBase + template + class MapRangeIterator + : public IteratorBase, SetPosition> { public: - using IterBase = IteratorBase; - using iter = MapIterator; + using IterBase = IteratorBase; + using DataConstType = std::conditional_t; using PositionType = SetPosition; using IterBase::m_pos; using iterator_category = std::random_access_iterator_tag; - using value_type = axom::ArrayView; + using value_type = axom::ArrayView; + using reference_type = value_type&; + using pointer_type = value_type*; using difference_type = SetPosition; public: @@ -475,11 +488,14 @@ class Map : public StrPol, * Returns the first component if comp_idx is not specified. * \param comp_idx Zero-based index of the component. */ - DataType& operator()(SetPosition comp_idx) const + DataConstType& operator()(SetPosition comp_idx) const { return (*m_mapPtr)(m_pos, comp_idx); } - DataType& operator[](PositionType n) const { return (*this).flatIndex(n); } + DataConstType& operator[](PositionType n) const + { + return (*this).flatIndex(n); + } /** \brief Returns the number of components per element in the Map. */ PositionType numComp() const { return m_mapPtr->stride(); } @@ -493,22 +509,32 @@ class Map : public StrPol, }; public: // Functions related to iteration - MapIterator begin() { return MapIterator(0, this); } - MapIterator end() + iterator begin() { return iterator(0, this); } + iterator end() { return iterator(size() * StridePolicyType::stride(), this); } + const_iterator begin() const { return const_iterator(0, this); } + const_iterator end() const { - return MapIterator(size() * StridePolicyType::stride(), this); + return const_iterator(size() * StridePolicyType::stride(), this); } - RangeAdapter range() const + RangeAdapter range() const { - return RangeAdapter {begin(), end()}; + return RangeAdapter {begin(), end()}; } - MapRangeIterator set_begin() { return MapRangeIterator(0, this); } - MapRangeIterator set_end() { return MapRangeIterator(size(), this); } - RangeAdapter set_elements() + range_iterator set_begin() { return range_iterator(0, this); } + range_iterator set_end() { return range_iterator(size(), this); } + const_range_iterator set_begin() const + { + return const_range_iterator(0, this); + } + const_range_iterator set_end() const + { + return const_range_iterator(size(), this); + } + RangeAdapter set_elements() { - return RangeAdapter {set_begin(), set_end()}; + return RangeAdapter {set_begin(), set_end()}; } public: diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index 5da4e11d79..37f1bddd17 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -305,8 +305,6 @@ void constructAndTestMapIteratorWithStride(int stride) { using RealMap = slam::Map, VecIndirection, StrideType>; - using MapIterator = typename RealMap::MapIterator; - using MapRangeIterator = typename RealMap::MapRangeIterator; SetType s(MAX_SET_SIZE); From 46afae5ccd54c19447a3ca0135fd2773c30dc5ed Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 17:41:43 -0800 Subject: [PATCH 098/592] BivariateMap: split iterators into flat/range iterators BivariateMap::FlatIterator, like its corollary in Map, iterates over the elements of the associated map. BivariateMap::RangeIterator iterates over set elements, and provides a range of associated elements, where the range size is dictated by the stride. --- src/axom/multimat/examples/traversal.cpp | 3 +- src/axom/slam/BivariateMap.hpp | 335 ++++++++++++------ src/axom/slam/tests/slam_map_BivariateMap.cpp | 6 +- 3 files changed, 229 insertions(+), 115 deletions(-) diff --git a/src/axom/multimat/examples/traversal.cpp b/src/axom/multimat/examples/traversal.cpp index 60d137b8bd..419eac3795 100644 --- a/src/axom/multimat/examples/traversal.cpp +++ b/src/axom/multimat/examples/traversal.cpp @@ -376,7 +376,7 @@ void various_traversal_methods(int nmats, timer.start(); { auto map2d = mm.get2dField("CellMat Array"); - for(auto iter = map2d.begin(); iter != map2d.end(); ++iter) + for(auto iter = map2d.set_begin(); iter != map2d.set_end(); ++iter) { //get the indices //int cell_id = iter.firstIndex(); @@ -387,7 +387,6 @@ void various_traversal_methods(int nmats, SLIC_ASSERT(val == iter.value(comp)); //another way to get the value sum += val; } - SLIC_ASSERT(iter(0) == *iter); //2 ways to get the first component value SLIC_ASSERT(iter(0) == iter.value()); } } diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index a033250785..3bb7aaaaef 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -109,9 +109,14 @@ class BivariateMap using BivariateMapType = BivariateMap; template - class BivariateMapIterator; - using iterator = BivariateMapIterator; - using const_iterator = BivariateMapIterator; + class FlatIterator; + using iterator = FlatIterator; + using const_iterator = FlatIterator; + + template + class RangeIterator; + using range_iterator = RangeIterator; + using const_range_iterator = RangeIterator; using SubMapType = SubMap; using ConstSubMapType = const SubMap; @@ -473,122 +478,36 @@ class BivariateMap // || (set()->getSecondSet()->at(0) != 0); } -public: - /** - * \class BivariateMapIterator - * \brief An iterator type for a BivariateMap, iterating via its - * ElementFlatIndex. - * - * This iterator class traverses the BivariateMap using its ElementFlatIndex. - * In addition to m_pos from IteratorBase, this class also keeps track of the - * iterator's first index (firstIdx), second dense index (secondIdx), and the - * second sparse index (secondSparseIdx). The advance() function is - * implemented to update those three additional indices. - */ - template - class BivariateMapIterator - { - private: - using iterator_category = std::forward_iterator_tag; - using value_type = DataType; - using difference_type = SetPosition; - - using iter = BivariateMapIterator; - - public: - using DataRefType = std::conditional_t; - using BivariateMapPtr = - std::conditional_t; - - using PositionType = SetPosition; - static constexpr PositionType INVALID_POS = -2; - - public: - /** - * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex - */ - BivariateMapIterator(BivariateMapPtr sMap, PositionType pos) - : m_map(sMap) - , m_bsetIterator(m_map->set(), pos) - { } - - BivariateMapIterator& operator++() - { - m_bsetIterator++; - return *this; - } - - BivariateMapIterator operator++(int) - { - BivariateMapIterator next = *this; - ++(*this); - return next; - } - - bool operator==(const iter& other) const - { - return (m_map == other.m_map) && (m_bsetIterator == other.m_bsetIterator); - } - bool operator!=(const iter& other) const { return !operator==(other); } - - /** - * \brief Returns the current iterator value. If the BivariateMap has - * multiple components, this will return the first component. - * To access the other components, use iter(comp) - */ - DataRefType operator*() { return value(0); } - - /** - * \brief Returns the iterator's value at the specified component. - * Returns the first component if comp_idx is not specified. - * \param comp_idx (Optional) Zero-based index of the component. - */ - DataRefType operator()(PositionType comp_idx = 0) - { - return value(comp_idx); - } - - /** \brief Returns the first component value after n increments. */ - DataRefType operator[](PositionType n) { return *(this->operator+(n)); } - - /** - * \brief Return the value at the iterator's position. Same as operator() - */ - DataRefType value(PositionType comp = 0) - { - return m_map->flatValue(m_bsetIterator.flatIndex(), comp); - } - - /** - * \brief return the current iterator's first index into the BivariateSet - */ - PositionType firstIndex() const { return m_bsetIterator.firstIndex(); } - - /** - * \brief return the current iterator's second index (DenseIndex) - * into the BivariateSet - */ - PositionType secondIndex() const { return m_bsetIterator.secondIndex(); } - - /** \brief Returns the number of components per element in the map. */ - PositionType numComp() const { return m_map->numComp(); } - - private: - BivariateMapPtr m_map; - typename BivariateSetType::IteratorType m_bsetIterator; - }; - public: /** BivariateMap iterator functions */ AXOM_HOST_DEVICE iterator begin() { return iterator(this, 0); } - AXOM_HOST_DEVICE iterator end() { return iterator(this, totalSize()); } + AXOM_HOST_DEVICE iterator end() + { + return iterator(this, totalSize() * numComp()); + } AXOM_HOST_DEVICE const_iterator begin() const { return const_iterator(this, 0); } AXOM_HOST_DEVICE const_iterator end() const { - return const_iterator(this, totalSize()); + return const_iterator(this, totalSize() * numComp()); + } + AXOM_HOST_DEVICE range_iterator set_begin() + { + return range_iterator(this, 0); + } + AXOM_HOST_DEVICE range_iterator set_end() + { + return range_iterator(this, totalSize()); + } + AXOM_HOST_DEVICE const_range_iterator set_begin() const + { + return const_range_iterator(this, 0); + } + AXOM_HOST_DEVICE const_range_iterator set_end() const + { + return const_range_iterator(this, totalSize()); } /** Iterator via Submap */ @@ -685,6 +604,202 @@ template ::NullBivariateSetType const BivariateMap::s_nullBiSet; +/** + * \class BivariateMapIterator + * \brief An iterator type for a BivariateMap, iterating via its + * ElementFlatIndex. + * + * This iterator class iterates over all elements in the associated map. + */ +template +template +class BivariateMap::FlatIterator +{ +private: + using iterator_category = std::forward_iterator_tag; + using value_type = DataType; + using difference_type = SetPosition; + + using iter = FlatIterator; + +public: + using DataRefType = std::conditional_t; + using BivariateMapPtr = + std::conditional_t; + + using PositionType = SetPosition; + static constexpr PositionType INVALID_POS = -2; + +public: + /** + * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex + */ + FlatIterator(BivariateMapPtr sMap, PositionType pos) + : m_map(sMap) + , m_bsetIterator(m_map->set(), pos / m_map->numComp()) + , m_compIndex(pos % m_map->numComp()) + { } + + FlatIterator& operator++() + { + m_compIndex++; + if(m_compIndex == m_map->numComp()) + { + m_bsetIterator++; + m_compIndex = 0; + } + return *this; + } + + FlatIterator operator++(int) + { + FlatIterator next = *this; + ++(*this); + return next; + } + + bool operator==(const iter& other) const + { + return (m_map == other.m_map) && (m_bsetIterator == other.m_bsetIterator) && + (m_compIndex == other.m_compIndex); + } + bool operator!=(const iter& other) const { return !operator==(other); } + + /** + * \brief Returns the current map element pointed to by the iterator. + */ + DataRefType operator*() + { + return m_map->flatValue(m_bsetIterator.flatIndex(), m_compIndex); + } + + /** + * \brief return the current iterator's first index into the BivariateSet + */ + PositionType firstIndex() const { return m_bsetIterator.firstIndex(); } + + /** + * \brief return the current iterator's second index (DenseIndex) + * into the BivariateSet + */ + PositionType secondIndex() const { return m_bsetIterator.secondIndex(); } + + /// \brief return the current iterator's component index + PositionType compIndex() const { return m_compIndex; } + + /** \brief Returns the number of components per element in the map. */ + PositionType numComp() const { return m_map->numComp(); } + +private: + BivariateMapPtr m_map; + typename BivariateSetType::IteratorType m_bsetIterator; + IndexType m_compIndex; +}; + +/** + * \class BivariateMap::RangeIterator + * + * \brief An iterator type for a BivariateMap, iterating over elements in an + * associated BivariateSet. + * + * Unlike the FlatIterator, which iterates over all map elements, the + * RangeIterator may point to a range of elements in the case of non-unit + * stride. + */ +template +template +class BivariateMap::RangeIterator +{ +private: + using MapIterator = typename MapType::template MapRangeIterator; + + using iterator_category = std::forward_iterator_tag; + using value_type = typename MapIterator::value_type; + using difference_type = SetPosition; + +public: + using DataRefType = std::conditional_t; + using BivariateMapPtr = + std::conditional_t; + + using PositionType = SetPosition; + static constexpr PositionType INVALID_POS = -2; + +public: + /** + * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex + */ + RangeIterator(BivariateMapPtr sMap, PositionType pos) + : m_map(sMap) + , m_mapIterator(m_map->getMap()->set_begin() + pos) + , m_bsetIterator(m_map->set(), pos) + { } + + RangeIterator& operator++() + { + m_bsetIterator++; + m_mapIterator++; + return *this; + } + + RangeIterator operator++(int) + { + RangeIterator next = *this; + ++(*this); + return next; + } + + bool operator==(const RangeIterator& other) const + { + return (m_map == other.m_map) && (m_bsetIterator == other.m_bsetIterator); + } + bool operator!=(const RangeIterator& other) const + { + return !operator==(other); + } + + /** + * \brief Returns the current iterator value. If the BivariateMap has + * multiple components, this will return the first component. + * To access the other components, use iter(comp) + */ + value_type operator*() { return *m_mapIterator; } + + /** + * \brief Returns the iterator's value at the specified component. + * Returns the first component if comp_idx is not specified. + * \param comp_idx (Optional) Zero-based index of the component. + */ + DataRefType operator()(PositionType comp_idx = 0) { return value(comp_idx); } + + /** \brief Returns the first component value after n increments. */ + DataRefType operator[](PositionType n) { return *(this->operator+(n)); } + + /** + * \brief Return the value at the iterator's position. Same as operator() + */ + DataRefType value(PositionType comp = 0) { return m_mapIterator(comp); } + + /** + * \brief return the current iterator's first index into the BivariateSet + */ + PositionType firstIndex() const { return m_bsetIterator.firstIndex(); } + + /** + * \brief return the current iterator's second index (DenseIndex) + * into the BivariateSet + */ + PositionType secondIndex() const { return m_bsetIterator.secondIndex(); } + + /** \brief Returns the number of components per element in the map. */ + PositionType numComp() const { return m_map->numComp(); } + +private: + BivariateMapPtr m_map; + typename MapType::template MapRangeIterator m_mapIterator; + typename BivariateSetType::IteratorType m_bsetIterator; +}; + } // end namespace slam } // end namespace axom diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index 40a50af5b7..c16eec20f9 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -386,9 +386,9 @@ void constructAndTestBivariateMapIterator(int stride) } } - SLIC_INFO("Checking the elements with BivariateMap iterator."); + SLIC_INFO("Checking the elements with BivariateMap range iterator."); { - auto iter = m.begin(); + auto iter = m.set_begin(); //auto begin_iter = m.begin(); //auto end_iter = m.end(); //auto inval_iter = end_iter + 1; @@ -397,7 +397,7 @@ void constructAndTestBivariateMapIterator(int stride) { for(auto idx2 = 0; idx2 < m.secondSetSize(); ++idx2) { - EXPECT_EQ(*iter, getVal(idx1, idx2, 0)); + EXPECT_EQ((*iter).size(), stride); EXPECT_EQ(iter.firstIndex(), idx1); EXPECT_EQ(iter.secondIndex(), idx2); for(auto i = 0; i < stride; i++) From acb138fa8999922057cd390920a29c57a7272d54 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 17:49:55 -0800 Subject: [PATCH 099/592] BivariateMap: add a test for flat iterators --- src/axom/slam/tests/slam_map_BivariateMap.cpp | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index c16eec20f9..a851d08442 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -385,6 +385,33 @@ void constructAndTestBivariateMapIterator(int stride) } } } + SLIC_INFO("Checking the elements with BivariateMap flat iterator."); + { + auto iter = m.begin(); + auto flat_idx = 0; + + for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) + { + for(auto idx2 = 0; idx2 < m.secondSetSize(); ++idx2) + { + for(auto i = 0; i < stride; i++) + { + // Check validity of indexing + EXPECT_EQ(iter.firstIndex(), idx1); + EXPECT_EQ(iter.secondIndex(), idx2); + EXPECT_EQ(iter.compIndex(), i); + EXPECT_NE(iter, m.end()); + + // Check equality of values + DataType val = getVal(idx1, idx2, i); + EXPECT_EQ(val, *iter); + + iter++; + flat_idx++; + } + } + } + } SLIC_INFO("Checking the elements with BivariateMap range iterator."); { From cdc8543ba71904436505ef35a7c8193d066cd11e Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 17:55:58 -0800 Subject: [PATCH 100/592] Slam: use a type alias for StrideOne --- src/axom/slam/policies/PolicyTraits.hpp | 9 -------- src/axom/slam/policies/StridePolicies.hpp | 27 +---------------------- 2 files changed, 1 insertion(+), 35 deletions(-) diff --git a/src/axom/slam/policies/PolicyTraits.hpp b/src/axom/slam/policies/PolicyTraits.hpp index 9e790c1f7f..ec64b40081 100644 --- a/src/axom/slam/policies/PolicyTraits.hpp +++ b/src/axom/slam/policies/PolicyTraits.hpp @@ -52,15 +52,6 @@ struct StrideToSize, IntType, VAL> using SizeType = CompileTimeSize; }; -/** - * \brief Specialization of StrideToSize trait for a StrideOne type - */ -template -struct StrideToSize, IntType> -{ - using SizeType = CompileTimeSize::DEFAULT_VALUE>; -}; - /** * \brief Type traits for null sets. * diff --git a/src/axom/slam/policies/StridePolicies.hpp b/src/axom/slam/policies/StridePolicies.hpp index d023303448..05f370edd2 100644 --- a/src/axom/slam/policies/StridePolicies.hpp +++ b/src/axom/slam/policies/StridePolicies.hpp @@ -107,32 +107,7 @@ struct CompileTimeStride * \brief A policy class for a set with stride one (i.e. the default stride) */ template -struct StrideOne -{ - static const IntType DEFAULT_VALUE; - static const bool IS_COMPILE_TIME = true; - - /** - * This constructor only exists to allow the derived class to not have - * to specialize for when the stride is known at compile time - */ - AXOM_HOST_DEVICE StrideOne(IntType val = DEFAULT_VALUE) { setStride(val); } - - AXOM_HOST_DEVICE inline const IntType stride() const { return DEFAULT_VALUE; } - inline const IntType operator()() const { return stride(); } - - AXOM_HOST_DEVICE void setStride(IntType AXOM_DEBUG_PARAM(val)) - { - SLIC_ASSERT_MSG( - val == DEFAULT_VALUE, - "slam::StrideOne policy -- tried to set a stride-one StridePolicy" - << " with value (" << val << "), but should always be 1."); - } - inline bool isValid(bool) const { return true; } -}; - -template -const IntType StrideOne::DEFAULT_VALUE = IntType {1}; +using StrideOne = CompileTimeStride; /// \} From 558535ba44b36afd853ad27339481584d6071036 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 20:56:33 -0800 Subject: [PATCH 101/592] ProductSet: rename IndexType to SetIndex in iterator --- src/axom/slam/ProductSet.hpp | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 88193d13fe..1430bf36a1 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -317,36 +317,36 @@ struct ProductSet::Iterator using BaseType = IteratorBase; public: - using difference_type = IndexType; - using value_type = std::pair; + using SetIndex = typename ProductSetType::PositionType; + + using difference_type = SetIndex; + using value_type = std::pair; using reference = value_type&; using pointer = value_type*; using iterator_category = std::random_access_iterator_tag; - using IndexType = typename ProductSetType::PositionType; - - Iterator(const ProductSetType* bset, IndexType pos = 0) + Iterator(const ProductSetType* bset, SetIndex pos = 0) : BaseType(pos) , m_bset(bset) { } - std::pair operator*() const + std::pair operator*() const { return {m_bset->flatToFirstIndex(this->m_pos), m_bset->flatToSecondIndex(this->m_pos)}; } /// \brief Return the first set index pointed to by this iterator. - IndexType firstIndex() const { return m_bset->flatToFirstIndex(this->m_pos); } + SetIndex firstIndex() const { return m_bset->flatToFirstIndex(this->m_pos); } /// \brief Return the second set index pointed to by this iterator. - IndexType secondIndex() const + SetIndex secondIndex() const { return m_bset->flatToSecondIndex(this->m_pos); } /// \brief Return the flat iteration index of this iterator. - IndexType flatIndex() const { return this->m_pos; } + SetIndex flatIndex() const { return this->m_pos; } protected: void advance(IndexType n) { this->m_pos += n; } From 57808a365d6ee69b48eec024e5c275370831bd9b Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 10 Jan 2024 23:34:45 -0800 Subject: [PATCH 102/592] Map: more fixes for const iterators Actually use the types from the IndirectionPolicy; this handles the case where the map data is provided by an axom::ArrayView. --- src/axom/slam/BivariateMap.hpp | 2 +- src/axom/slam/Map.hpp | 18 ++++++++++++------ 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 3bb7aaaaef..6c1551b148 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -718,7 +718,7 @@ class BivariateMap::RangeIterator using difference_type = SetPosition; public: - using DataRefType = std::conditional_t; + using DataRefType = typename MapIterator::DataRefType; using BivariateMapPtr = std::conditional_t; diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index d0308d2d3f..99a6870dee 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -409,9 +409,12 @@ class Map : public StrPol, class MapIterator : public IteratorBase, SetPosition> { public: + using DataRefType = std::conditional_t; + using DataType = std::remove_reference_t; + using iterator_category = std::random_access_iterator_tag; - using value_type = std::conditional_t; - using reference_type = value_type&; + using value_type = DataType; + using reference_type = DataRefType; using pointer_type = value_type*; using difference_type = SetPosition; @@ -458,12 +461,15 @@ class Map : public StrPol, { public: using IterBase = IteratorBase; - using DataConstType = std::conditional_t; + + using DataRefType = std::conditional_t; + using DataType = std::remove_reference_t; + using PositionType = SetPosition; using IterBase::m_pos; using iterator_category = std::random_access_iterator_tag; - using value_type = axom::ArrayView; + using value_type = axom::ArrayView; using reference_type = value_type&; using pointer_type = value_type*; using difference_type = SetPosition; @@ -488,11 +494,11 @@ class Map : public StrPol, * Returns the first component if comp_idx is not specified. * \param comp_idx Zero-based index of the component. */ - DataConstType& operator()(SetPosition comp_idx) const + DataRefType operator()(SetPosition comp_idx) const { return (*m_mapPtr)(m_pos, comp_idx); } - DataConstType& operator[](PositionType n) const + DataRefType operator[](PositionType n) const { return (*this).flatIndex(n); } From 0f1a1ef218b589ad69b8b8db006d3c9ba7837356 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Thu, 11 Jan 2024 14:47:43 -0800 Subject: [PATCH 103/592] Map: preparation for replacing SubMap Since Map now supports ArrayView indirection, we can just use Map in place of SubMap for BivariateMap "row" accesses. Preparatory changes for this include: * allowing Map iterators to keep a copy of the underlying Map if the indirection type is "view-like" * adding additional functions from SubMap to Map, such as SubMap::index and SubMap::value --- src/axom/slam/Map.hpp | 118 ++++++++++++++++++++++++++++++++++++------ 1 file changed, 101 insertions(+), 17 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 99a6870dee..4854c20203 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -294,6 +294,27 @@ class Map : public StrPol, return IndirectionPolicy::getIndirection(m_data, setIndex); } + AXOM_HOST_DEVICE ConstValueType value(SetPosition setIdx, + SetPosition comp = 0) const + { +#ifndef AXOM_DEVICE_CODE + verifyPositionImpl(setIdx, comp); +#endif + SetPosition setIndex = setIdx * StridePolicyType::stride() + comp; + return IndirectionPolicy::getConstIndirection(m_data, setIndex); + } + + AXOM_HOST_DEVICE ValueType value(SetPosition setIdx, SetPosition comp = 0) + { +#ifndef AXOM_DEVICE_CODE + verifyPositionImpl(setIdx, comp); +#endif + SetPosition setIndex = setIdx * StridePolicyType::stride() + comp; + return IndirectionPolicy::getIndirection(m_data, setIndex); + } + + SetElement index(IndexType idx) const { return set()->at(idx); } + /// @} /// \name Map cardinality functions @@ -400,13 +421,57 @@ class Map : public StrPol, DataType m_defaultValue = DataType(); }; +private: + /*! + * \class MapIteratorStorage + * + * \brief Helper class to handle storage for iterators. + * + * When the Map is backed by a mutable buffer (std::vector or axom::Array), + * access to the underlying Map is provided via a pointer. When the map is + * backed by a view-like object (axom::ArrayView), we just keep a copy of the + * Map by-value. + * + * This is necessary to allow BivariateMap to return subset iterators + * pointing to a temporary map. The original SubMap iterator would just keep + * the SubMap by-value. + */ + template + struct MapIteratorStorage; + + template + struct MapIteratorStorage + { + using MapConstType = std::conditional_t; + using MapRefType = std::conditional_t; + MapIteratorStorage(MapConstType pMap) : m_map(pMap) { } + + MapRefType map() const { return *m_map; } + + MapConstType m_map; + }; + + template + struct MapIteratorStorage + { + using MapConstType = std::conditional_t; + MapIteratorStorage(MapConstType pMap) : m_map(*pMap) { } + + const Map& map() const { return m_map; } + + Map m_map; + }; + +public: /** * \class MapIterator * \brief An iterator type for a map. Each increment operation advances the * iterator to the element at the next flat index. */ template - class MapIterator : public IteratorBase, SetPosition> + class MapIterator + : public IteratorBase, SetPosition>, + MapIteratorStorage { public: using DataRefType = std::conditional_t; @@ -419,24 +484,36 @@ class Map : public StrPol, using difference_type = SetPosition; using IterBase = IteratorBase; + using MapStorage = + MapIteratorStorage; using iter = MapIterator; using PositionType = SetPosition; using IterBase::m_pos; public: - MapIterator(PositionType pos, Map* oMap) : IterBase(pos), m_mapPtr(oMap) { } + MapIterator(PositionType pos, Map* oMap) : IterBase(pos), MapStorage(oMap) + { } /** * \brief Returns the current iterator value. */ - reference_type operator*() { return (*m_mapPtr)[m_pos]; } + reference_type operator*() { return this->map()[m_pos]; } + + /// \brief Returns the set element mapped by this iterator. + SetElement index() const + { + return this->map().index(this->m_pos / this->map().numComp()); + } + + /// \brief Returns the component index pointed to by this iterator. + PositionType compIndex() const { return m_pos % this->map().numComp(); } + + /// \brief Returns the flat index pointed to by this iterator. + SetPosition flatIndex() const { return this->m_pos; } protected: /** Implementation of advance() as required by IteratorBase */ void advance(PositionType n) { m_pos += n; } - - protected: - Map* m_mapPtr; }; /** @@ -457,10 +534,13 @@ class Map : public StrPol, */ template class MapRangeIterator - : public IteratorBase, SetPosition> + : public IteratorBase, SetPosition>, + MapIteratorStorage { public: using IterBase = IteratorBase; + using MapStorage = + MapIteratorStorage; using DataRefType = std::conditional_t; using DataType = std::remove_reference_t; @@ -477,7 +557,7 @@ class Map : public StrPol, public: MapRangeIterator(PositionType pos, Map* oMap) : IterBase(pos) - , m_mapPtr(oMap) + , MapStorage(oMap) { } /** @@ -485,8 +565,8 @@ class Map : public StrPol, */ value_type operator*() { - return value_type {m_mapPtr->data().data() + m_pos * m_mapPtr->stride(), - m_mapPtr->stride()}; + return value_type {this->map().data().data() + m_pos * this->map().stride(), + this->map().stride()}; } /** @@ -496,22 +576,26 @@ class Map : public StrPol, */ DataRefType operator()(SetPosition comp_idx) const { - return (*m_mapPtr)(m_pos, comp_idx); + return value(comp_idx); } - DataRefType operator[](PositionType n) const + DataRefType value(PositionType comp_idx) const { - return (*this).flatIndex(n); + return this->map()(m_pos, comp_idx); } + value_type operator[](PositionType n) const { return *(*this + n); } + + /// \brief Returns the set element mapped by this iterator. + SetElement index() const { return this->map().index(this->m_pos); } + + /// \brief Returns the flat index pointed to by this iterator. + SetPosition flatIndex() const { return this->m_pos; } /** \brief Returns the number of components per element in the Map. */ - PositionType numComp() const { return m_mapPtr->stride(); } + PositionType numComp() const { return this->map().stride(); } protected: /** Implementation of advance() as required by IteratorBase */ void advance(PositionType n) { m_pos += n; } - - protected: - Map* m_mapPtr; }; public: // Functions related to iteration From d360883060aebb65146e6fec782af1c27a684386 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Thu, 11 Jan 2024 15:05:04 -0800 Subject: [PATCH 104/592] BivariateMap: use Map as subset type instead of SubMap --- src/axom/multimat/examples/traversal.cpp | 5 +- src/axom/slam/BivariateMap.hpp | 49 ++++++++++++++++--- src/axom/slam/tests/slam_map_BivariateMap.cpp | 29 +++++++++-- 3 files changed, 67 insertions(+), 16 deletions(-) diff --git a/src/axom/multimat/examples/traversal.cpp b/src/axom/multimat/examples/traversal.cpp index 419eac3795..8ca749680a 100644 --- a/src/axom/multimat/examples/traversal.cpp +++ b/src/axom/multimat/examples/traversal.cpp @@ -330,7 +330,7 @@ void various_traversal_methods(int nmats, auto map2d = mm.get2dField("CellMat Array"); for(int i = 0; i < mm.getNumberOfCells() /*map2d.firstSetSize()*/; i++) { - for(auto iter = map2d.begin(i); iter != map2d.end(i); iter++) + for(auto iter = map2d.set_begin(i); iter != map2d.set_end(i); iter++) { // int idx = iter.index(); get the index for(int comp = 0; comp < map2d.numComp(); ++comp) @@ -338,8 +338,7 @@ void various_traversal_methods(int nmats, sum += iter(comp); //<---- SLIC_ASSERT(iter(comp) == iter.value(comp)); //value() } - SLIC_ASSERT(iter(0) == *iter); //2 ways to get the first component - SLIC_ASSERT(iter(0) == iter.value()); + SLIC_ASSERT(iter(0) == iter.value(0)); } } } diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 6c1551b148..40cabae2a3 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -118,10 +118,16 @@ class BivariateMap using range_iterator = RangeIterator; using const_range_iterator = RangeIterator; - using SubMapType = SubMap; - using ConstSubMapType = const SubMap; + using SubMapIndirection = policies::ArrayViewIndirection; + using SubMapConstIndirection = + policies::ArrayViewIndirection; + using SubMapType = Map; + using ConstSubMapType = Map; + using SubMapIterator = typename SubMapType::iterator; using ConstSubMapIterator = typename ConstSubMapType::iterator; + using SubMapRangeIterator = typename SubMapType::range_iterator; + using ConstSubMapRangeIterator = typename ConstSubMapType::range_iterator; using NullBivariateSetType = NullBivariateSet; @@ -319,9 +325,15 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif - auto s = set()->elementRangeSet(firstIdx); - const bool hasInd = submapIndicesHaveIndirection(); - return ConstSubMapType(this, s, hasInd); + // Construct an ArrayView with the subset data. + auto elemRange = set()->elementRangeSet(firstIdx); + SetPosition dataOffset = elemRange.offset() * StrPol::stride(); + SetPosition dataSize = elemRange.size() * StrPol::stride(); + axom::ArrayView submapView(m_map.data().data() + dataOffset, + dataSize); + + auto s = set()->getElements(firstIdx); + return ConstSubMapType(s, submapView, StrPol::stride()); } AXOM_HOST_DEVICE SubMapType operator()(SetPosition firstIdx) @@ -329,9 +341,14 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif - auto s = set()->elementRangeSet(firstIdx); - const bool hasInd = submapIndicesHaveIndirection(); - return SubMapType(this, s, hasInd); + // Construct an ArrayView with the subset data. + auto elemRange = set()->elementRangeSet(firstIdx); + SetPosition dataOffset = elemRange.offset() * StrPol::stride(); + SetPosition dataSize = elemRange.size() * StrPol::stride(); + axom::ArrayView submapView(m_map.data().data() + dataOffset, dataSize); + + auto s = set()->getElements(firstIdx); + return SubMapType(s, submapView, StrPol::stride()); } /** @@ -521,6 +538,22 @@ class BivariateMap { return (*this)(i).end(); } + AXOM_HOST_DEVICE SubMapRangeIterator set_begin(int i) + { + return (*this)(i).set_begin(); + } + AXOM_HOST_DEVICE SubMapRangeIterator set_end(int i) + { + return (*this)(i).set_end(); + } + AXOM_HOST_DEVICE ConstSubMapRangeIterator set_begin(int i) const + { + return (*this)(i).set_begin(); + } + AXOM_HOST_DEVICE ConstSubMapRangeIterator set_end(int i) const + { + return (*this)(i).set_end(); + } public: AXOM_HOST_DEVICE const BivariateSetType* set() const { return m_bset.get(); } diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index a851d08442..0b052bde22 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -369,16 +369,35 @@ void constructAndTestBivariateMapIterator(int stride) } } } + SLIC_INFO("Checking the elements with SubMap flat iterator."); + for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) + { + auto iter = m.begin(idx1); + for(auto idx2 = 0; idx2 < m.secondSetSize(); idx2++) + { + for(auto i = 0; i < stride; i++) + { + // Check iterator validity. + EXPECT_EQ(iter.index(), idx2); + EXPECT_EQ(iter.compIndex(), i); + EXPECT_NE(iter, m.end(idx1)); + + // Check iterator data. + EXPECT_EQ(*iter, getVal(idx1, idx2, i)); + + iter++; + } + } + } - SLIC_INFO("Checking the elements with SubMap iterator."); + SLIC_INFO("Checking the elements with SubMap range iterator."); for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) { int idx2 = 0; - auto begin_iter = m.begin(idx1); - for(auto iter = m.begin(idx1); iter != m.end(idx1); ++iter, ++idx2) + auto begin_iter = m.set_begin(idx1); + for(auto iter = m.set_begin(idx1); iter != m.set_end(idx1); ++iter, ++idx2) { - EXPECT_EQ(begin_iter[idx2], getVal(idx1, idx2)); - EXPECT_EQ(*iter, getVal(idx1, idx2)); + EXPECT_EQ(begin_iter[idx2], *iter); for(auto i = 0; i < iter.numComp(); i++) { EXPECT_EQ(iter(i), getVal(idx1, idx2, i)); From b332365ce0ce48c605596b4dea083b3a99a0e029 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 23 Jan 2024 14:38:24 -0800 Subject: [PATCH 105/592] Map: add support for multi-dimensional stride --- src/axom/slam/Map.hpp | 156 +++++++++++++++++----- src/axom/slam/policies/StridePolicies.hpp | 57 ++++++++ 2 files changed, 182 insertions(+), 31 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 4854c20203..f2b3a8f4d9 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -84,6 +84,8 @@ class Map : public StrPol, using SetElement = typename SetType::ElementType; static const NullSet s_nullSet; + using ElementShape = typename StridePolicyType::ShapeType; + using ValueType = typename IndirectionPolicy::IndirectionResult; using ConstValueType = typename IndirectionPolicy::ConstIndirectionResult; @@ -149,8 +151,8 @@ class Map : public StrPol, * \param theSet (Optional) A pointer to the map's set * \param defaultValue (Optional) If given, every entry in the map will be * initialized using defaultValue - * \param stride (Optional) The stride. The number of DataType that - * each element in the set will be mapped to. + * \param shape (Optional) The number of DataType that each element in the + * set will be mapped to. * When using a \a RuntimeStridePolicy, the default is 1. * \note When using a compile time StridePolicy, \a stride must be equal to * \a stride(), when provided. @@ -158,9 +160,9 @@ class Map : public StrPol, Map(const SetType* theSet = policies::EmptySetTraits::emptySet(), DataType defaultValue = DataType(), - SetPosition stride = StridePolicyType::DEFAULT_VALUE, + ElementShape shape = StridePolicyType::DefaultSize(), int allocatorID = axom::getDefaultAllocatorID()) - : StridePolicyType(stride) + : StridePolicyType(shape) , m_set(theSet) { m_data = @@ -174,9 +176,9 @@ class Map : public StrPol, !std::is_abstract::value && std::is_base_of::value>::type> Map(const USet& theSet, DataType defaultValue = DataType(), - SetPosition stride = StridePolicyType::DEFAULT_VALUE, + ElementShape shape = StridePolicyType::DefaultSize(), int allocatorID = axom::getDefaultAllocatorID()) - : StridePolicyType(stride) + : StridePolicyType(shape) , m_set(theSet) { static_assert(std::is_same::value, @@ -193,8 +195,8 @@ class Map : public StrPol, * * \param theSet A reference to the map's set * \param data Pointer to the externally-owned data - * \param stride (Optional) The stride. The number of DataType that - * each element in the set will be mapped to. + * \param shape (Optional) The number of DataType that each element in the + * set will be mapped to. * When using a \a RuntimeStridePolicy, the default is 1. * \note When using a compile time StridePolicy, \a stride must be equal to * \a stride(), when provided. @@ -205,8 +207,8 @@ class Map : public StrPol, !std::is_abstract::value && std::is_base_of::value>::type> Map(const USet& theSet, OrderedMap data, - SetPosition stride = StridePolicyType::DEFAULT_VALUE) - : StridePolicyType(stride) + ElementShape shape = StridePolicyType::DefaultSize()) + : StridePolicyType(shape) , m_set(theSet) , m_data(std::move(data)) { @@ -268,49 +270,88 @@ class Map : public StrPol, return IndirectionPolicy::getIndirection(m_data, setIndex); } + /** + * \brief Access the value associated with the given position in the set. + */ + AXOM_HOST_DEVICE ConstValueType operator()(SetPosition setIdx) const + { + // TODO: validate that runtime stride is 1-D with value 1? + return value(setIdx, 0); + } + + /// \overload + AXOM_HOST_DEVICE ValueType operator()(SetPosition setIdx) + { + return value(setIdx, 0); + } + /** * \brief Access the value associated with the given position in the set and * the component index. * * \pre `0 <= setIdx < size()` - * \pre `0 <= comp < numComp()` + * \pre `0 <= compIdx[i] < shape()[i]` */ + template AXOM_HOST_DEVICE ConstValueType operator()(SetPosition setIdx, - SetPosition comp = 0) const + ComponentPos... compIdx) const { -#ifndef AXOM_DEVICE_CODE - verifyPositionImpl(setIdx, comp); -#endif - SetPosition setIndex = setIdx * StridePolicyType::stride() + comp; - return IndirectionPolicy::getConstIndirection(m_data, setIndex); + return value(setIdx, compIdx...); } - AXOM_HOST_DEVICE ValueType operator()(SetPosition setIdx, SetPosition comp = 0) + /// \overload + template + AXOM_HOST_DEVICE ValueType operator()(SetPosition setIdx, + ComponentPos... compIdx) { -#ifndef AXOM_DEVICE_CODE - verifyPositionImpl(setIdx, comp); -#endif - SetPosition setIndex = setIdx * StridePolicyType::stride() + comp; - return IndirectionPolicy::getIndirection(m_data, setIndex); + return value(setIdx, compIdx...); + } + + AXOM_HOST_DEVICE ConstValueType value(SetPosition setIdx) const + { + return value(setIdx, 0); } + AXOM_HOST_DEVICE ValueType value(SetPosition setIdx) + { + return value(setIdx, 0); + } + + /** + * \brief Access the value associated with the given position in the set and + * the component index. + * + * \pre `0 <= setIdx < size()` + * \pre `0 <= compIdx[i] < shape()[i]` + */ + template AXOM_HOST_DEVICE ConstValueType value(SetPosition setIdx, - SetPosition comp = 0) const + ComponentPos... compIdx) const { + static_assert( + sizeof...(ComponentPos) == StridePolicyType::NumDims, + "Invalid number of components provided for given Map's StridePolicy"); #ifndef AXOM_DEVICE_CODE - verifyPositionImpl(setIdx, comp); + verifyPositionImpl(setIdx, compIdx...); #endif - SetPosition setIndex = setIdx * StridePolicyType::stride() + comp; - return IndirectionPolicy::getConstIndirection(m_data, setIndex); + SetPosition elemIndex = setIdx * StridePolicyType::stride(); + elemIndex += componentOffset(compIdx...); + return IndirectionPolicy::getConstIndirection(m_data, elemIndex); } - AXOM_HOST_DEVICE ValueType value(SetPosition setIdx, SetPosition comp = 0) + /// \overload + template + AXOM_HOST_DEVICE ValueType value(SetPosition setIdx, ComponentPos... compIdx) { + static_assert( + sizeof...(ComponentPos) == StridePolicyType::NumDims, + "Invalid number of components provided for given Map's StridePolicy"); #ifndef AXOM_DEVICE_CODE - verifyPositionImpl(setIdx, comp); + verifyPositionImpl(setIdx, compIdx...); #endif - SetPosition setIndex = setIdx * StridePolicyType::stride() + comp; - return IndirectionPolicy::getIndirection(m_data, setIndex); + SetPosition elemIndex = setIdx * StridePolicyType::stride(); + elemIndex += componentOffset(compIdx...); + return IndirectionPolicy::getIndirection(m_data, elemIndex); } SetElement index(IndexType idx) const { return set()->at(idx); } @@ -338,6 +379,16 @@ class Map : public StrPol, */ SetPosition numComp() const { return StridePolicyType::stride(); } + /** + * \brief Returns the shape of the component values associated with each + * element. + * + * For one-dimensional strides, equivalent to stride(); otherwise, returns + * an N-dimensional array with the number of values in each sub-component + * index. + */ + ElementShape shape() const { return StridePolicyType::shape(); } + /// @} /// \name Map modifying functions for all entries @@ -659,6 +710,49 @@ class Map : public StrPol, << " with " << numComp() << " components."); } + template + inline void verifyPositionImpl(SetPosition AXOM_DEBUG_PARAM(setIdx), + ComponentIndex... AXOM_DEBUG_PARAM(compIdx)) const + { +#ifdef AXOM_DEBUG + ElementShape indexArray {{compIdx...}}; + bool validIndexes = true; + for(int dim = 0; dim < StridePolicyType::NumDims; dim++) + { + validIndexes = validIndexes && (indexArray[dim] >= 0); + validIndexes = validIndexes && (indexArray[dim] < this->shape()[dim]); + } + std::string invalid_message = fmt::format( + "Attempted to access element at ({}, {}) but map's set has size {} with " + "component shape ({})", + setIdx, + fmt::join(indexArray, ", "), + size(), + fmt::join(this->shape(), ", ")); + SLIC_ASSERT_MSG(setIdx >= 0 && setIdx < size() && validIndexes, + invalid_message); +#endif + } + + AXOM_HOST_DEVICE inline SetPosition componentOffset(SetPosition componentIndex) const + { + return componentIndex; + } + + template + AXOM_HOST_DEVICE inline SetPosition componentOffset( + ComponentIndex... componentIndex) const + { + ElementShape indexArray {{componentIndex...}}; + ElementShape strides = StridePolicyType::strides(); + SetPosition offset = 0; + for(int dim = 0; dim < StridePolicyType::NumDims; dim++) + { + offset += indexArray[dim] * strides[dim]; + } + return offset; + } + // setStride function should not be called after constructor is called. // This (should) override the StridePolicy setStride(s) function. void setStride(SetPosition AXOM_UNUSED_PARAM(str)) diff --git a/src/axom/slam/policies/StridePolicies.hpp b/src/axom/slam/policies/StridePolicies.hpp index 05f370edd2..8bedb0e2b0 100644 --- a/src/axom/slam/policies/StridePolicies.hpp +++ b/src/axom/slam/policies/StridePolicies.hpp @@ -51,6 +51,11 @@ struct RuntimeStride public: static const IntType DEFAULT_VALUE = IntType(1); static const bool IS_COMPILE_TIME = false; + constexpr static int NumDims = 1; + + using ShapeType = IntType; + + static constexpr IntType DefaultSize() { return DEFAULT_VALUE; } AXOM_HOST_DEVICE RuntimeStride(IntType stride = DEFAULT_VALUE) : m_stride(stride) @@ -81,6 +86,11 @@ struct CompileTimeStride { static const IntType DEFAULT_VALUE = INT_VAL; static const bool IS_COMPILE_TIME = true; + constexpr static int NumDims = 1; + + using ShapeType = IntType; + + static constexpr IntType DefaultSize() { return DEFAULT_VALUE; } AXOM_HOST_DEVICE CompileTimeStride(IntType val = DEFAULT_VALUE) { @@ -109,6 +119,53 @@ struct CompileTimeStride template using StrideOne = CompileTimeStride; +/** + * \brief A policy class for a set with multi-dimensional stride. Assumed + * layout is row-major. + */ +template +struct MultiDimStride +{ + using ShapeType = StackArray; + constexpr static int NumDims = Dims; + + static ShapeType DefaultSize() + { + ShapeType array; + for(int i = 0; i < Dims; i++) + { + array[i] = 1; + } + return array; + } + + AXOM_HOST_DEVICE MultiDimStride(StackArray shape) + : m_shape(shape) + { + m_strides[Dims - 1] = 1; + for(int i = Dims - 2; i >= 0; i--) + { + m_strides[i] = m_strides[i + 1] * m_shape[i + 1]; + } + } + + /// \brief Returns the "flat" stride of all the subcomponents. + AXOM_HOST_DEVICE inline IntType stride() const + { + return m_shape[0] * m_strides[0]; + } + + inline IntType operator()() const { return stride(); } + inline IntType& operator()() { return stride(); } + + AXOM_HOST_DEVICE inline ShapeType strides() const { return m_strides; } + AXOM_HOST_DEVICE inline ShapeType shape() const { return m_shape; } + +private: + ShapeType m_shape; + ShapeType m_strides; +}; + /// \} } // end namespace policies From a8b19d7fe6dc8e3e5ab930f6c5de3f5cfef367e8 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 23 Jan 2024 14:38:48 -0800 Subject: [PATCH 106/592] Map: add tests for multi-dimensional stride --- src/axom/slam/tests/slam_map_Map.cpp | 144 +++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index 37f1bddd17..408683ff63 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -463,6 +463,13 @@ class slam_map_templated : public ::testing::Test using RealMap = slam::Map; + template + using MDStridePolicy = slam::policies::MultiDimStride; + + template + using MultiDimMap = + slam::Map, InterfacePolicy>; + slam_map_templated() : m_allocatorId(ExecTraits::getAllocatorId()) , m_unifiedAllocatorId(ExecTraits::getUnifiedAllocatorId()) @@ -485,6 +492,30 @@ class slam_map_templated : public ::testing::Test m_realBacking = RealData(backingSize, backingSize, m_allocatorId); } + template + void initializeWithMultiDimStride(axom::StackArray shape) + { + // Create associated set. + m_set = ConcreteSetType(MAX_SET_SIZE); + + SLIC_INFO("\nCreating set of size " << m_set.size()); + + EXPECT_EQ(m_set.size(), MAX_SET_SIZE); + EXPECT_TRUE(m_set.isValid()); + + int stride = 1; + for(int dim = 0; dim < Dims; dim++) + { + stride *= shape[dim]; + } + + // Create array of elements to back the map. + m_allocatorId = ExecTraits::getAllocatorId(); + axom::IndexType backingSize = m_set.size() * stride; + + m_realBacking = RealData(backingSize, backingSize, m_allocatorId); + } + protected: int m_allocatorId; int m_unifiedAllocatorId; @@ -592,6 +623,119 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTestStride3) EXPECT_TRUE(validEntry); } } + +//---------------------------------------------------------------------- +AXOM_TYPED_TEST(slam_map_templated, constructAndTest2DStride) +{ + using ExecSpace = typename TestFixture::ExecSpace; + using MapType = typename TestFixture::template MultiDimMap<2>; + + const axom::StackArray shape = {3, 5}; + const axom::StackArray strides = {5, 1}; + int stride = 3 * 5; + this->initializeWithMultiDimStride(shape); + + SLIC_INFO("\nCreating double map with shape (3, 5) on the set "); + MapType m(this->m_set, this->m_realBacking.view(), shape); + + EXPECT_EQ(m.stride(), stride); + EXPECT_EQ(m.shape(), shape); + + SLIC_INFO("\nSetting the elements."); + const double multFac = 100.0001; + const double multFac2 = 1.00100; + const double multFac3 = 0.10010; + axom::for_all( + this->m_set.size(), + AXOM_LAMBDA(int index) { + for(int i = 0; i < shape[0]; i++) + { + for(int j = 0; j < shape[1]; j++) + { + m(index, i, j) = index * multFac + i * multFac2 + j * multFac3; + } + } + }); + + SLIC_INFO("\nChecking the elements."); + + for(int setIdx = 0; setIdx < this->m_set.size(); setIdx++) + { + for(int i = 0; i < shape[0]; i++) + { + for(int j = 0; j < shape[1]; j++) + { + double expectedValue = setIdx * multFac + i * multFac2 + j * multFac3; + EXPECT_EQ(m(setIdx, i, j), expectedValue); + EXPECT_EQ(m.value(setIdx, i, j), expectedValue); + + int flatIndex = i * strides[0] + j * strides[1]; + EXPECT_EQ(m[setIdx * stride + flatIndex], expectedValue); + } + } + } +} +//---------------------------------------------------------------------- +AXOM_TYPED_TEST(slam_map_templated, constructAndTest3DStride) +{ + using ExecSpace = typename TestFixture::ExecSpace; + using MapType = typename TestFixture::template MultiDimMap<3>; + + const axom::StackArray shape = {2, 3, 4}; + const axom::StackArray strides = {12, 4, 1}; + int stride = 2 * 3 * 4; + this->initializeWithMultiDimStride(shape); + + SLIC_INFO("\nCreating double map with shape (2, 3, 4) on the set "); + MapType m(this->m_set, this->m_realBacking.view(), shape); + + EXPECT_EQ(m.stride(), stride); + EXPECT_EQ(m.shape(), shape); + + SLIC_INFO("\nSetting the elements."); + const double multFac = 100.0001; + const double multFac2 = 1.00100; + const double multFac3 = 0.10010; + const double multFac4 = 0.01001; + axom::for_all( + this->m_set.size(), + AXOM_LAMBDA(int index) { + for(int i = 0; i < shape[0]; i++) + { + for(int j = 0; j < shape[1]; j++) + { + for(int k = 0; k < shape[2]; k++) + { + m(index, i, j, k) = + index * multFac + i * multFac2 + j * multFac3 + k * multFac4; + } + } + } + }); + + SLIC_INFO("\nChecking the elements."); + + for(int setIdx = 0; setIdx < this->m_set.size(); setIdx++) + { + for(int i = 0; i < shape[0]; i++) + { + for(int j = 0; j < shape[1]; j++) + { + for(int k = 0; k < shape[2]; k++) + { + double expectedValue = + setIdx * multFac + i * multFac2 + j * multFac3 + k * multFac4; + EXPECT_EQ(m(setIdx, i, j, k), expectedValue); + EXPECT_EQ(m.value(setIdx, i, j, k), expectedValue); + + int flatIndex = i * strides[0] + j * strides[1] + k * strides[2]; + EXPECT_EQ(m[setIdx * stride + flatIndex], expectedValue); + } + } + } + } +} + } // namespace testing //---------------------------------------------------------------------- From c29ae5bf5a1f56c8e827d9feac7dc78858debbab Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 23 Jan 2024 15:07:15 -0800 Subject: [PATCH 107/592] Slam: add a shape() method to StridePolicies --- src/axom/slam/policies/StridePolicies.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/axom/slam/policies/StridePolicies.hpp b/src/axom/slam/policies/StridePolicies.hpp index 8bedb0e2b0..a939d11071 100644 --- a/src/axom/slam/policies/StridePolicies.hpp +++ b/src/axom/slam/policies/StridePolicies.hpp @@ -62,6 +62,7 @@ struct RuntimeStride { } AXOM_HOST_DEVICE inline IntType stride() const { return m_stride; } + AXOM_HOST_DEVICE inline IntType shape() const { return m_stride; } AXOM_HOST_DEVICE inline IntType& stride() { return m_stride; } void setStride(IntType str) { m_stride = str; } @@ -98,6 +99,7 @@ struct CompileTimeStride } AXOM_HOST_DEVICE inline IntType stride() const { return INT_VAL; } + AXOM_HOST_DEVICE inline IntType shape() const { return INT_VAL; } inline IntType operator()() const { return stride(); } AXOM_HOST_DEVICE void setStride(IntType AXOM_DEBUG_PARAM(val)) From 3bfb21603b98aca39e77e8884e1a5176c803c7f7 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 10:42:57 -0800 Subject: [PATCH 108/592] BivariateMap: fix instantiation of submap indirection policies Corresponding sub-map indirections for ArrayViews are shallow-const like the underlying ArrayView indirection. --- src/axom/slam/BivariateMap.hpp | 12 ++++++----- src/axom/slam/policies/PolicyTraits.hpp | 27 +++++++++++++++++++++++++ 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 40cabae2a3..4772ba2611 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -118,9 +118,10 @@ class BivariateMap using range_iterator = RangeIterator; using const_range_iterator = RangeIterator; - using SubMapIndirection = policies::ArrayViewIndirection; + using SubMapIndirection = + typename policies::ToViewIndirection::Type; using SubMapConstIndirection = - policies::ArrayViewIndirection; + typename policies::ToViewIndirection::ConstType; using SubMapType = Map; using ConstSubMapType = Map; @@ -325,12 +326,12 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif + using ArrayViewType = typename SubMapConstIndirection::IndirectionBufferType; // Construct an ArrayView with the subset data. auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - axom::ArrayView submapView(m_map.data().data() + dataOffset, - dataSize); + ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); return ConstSubMapType(s, submapView, StrPol::stride()); @@ -341,11 +342,12 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif + using ArrayViewType = typename SubMapIndirection::IndirectionBufferType; // Construct an ArrayView with the subset data. auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - axom::ArrayView submapView(m_map.data().data() + dataOffset, dataSize); + ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); return SubMapType(s, submapView, StrPol::stride()); diff --git a/src/axom/slam/policies/PolicyTraits.hpp b/src/axom/slam/policies/PolicyTraits.hpp index ec64b40081..0f6daa51b6 100644 --- a/src/axom/slam/policies/PolicyTraits.hpp +++ b/src/axom/slam/policies/PolicyTraits.hpp @@ -16,6 +16,7 @@ #include "axom/slam/NullSet.hpp" #include "axom/slam/policies/SizePolicies.hpp" #include "axom/slam/policies/StridePolicies.hpp" +#include "axom/slam/policies/IndirectionPolicies.hpp" #include @@ -98,6 +99,32 @@ struct EmptySetTraits> } }; +/*! + * \brief Type trait to get a compatible ArrayView-based indirection policy for + * another indirection policy. + */ +template +struct ToViewIndirection +{ + using Type = policies::ArrayViewIndirection; + using ConstType = policies::ArrayViewIndirection; +}; + +/*! + * \brief Specialization for ArrayViewIndirection. + * + * Since ArrayViews are shallow-const types, we just pass through the + * constness of the original ArrayView. + */ +template +struct ToViewIndirection> +{ + using Type = policies::ArrayViewIndirection; + using ConstType = policies::ArrayViewIndirection; +}; + } // end namespace policies namespace traits From 2d6851c0e6be20bd9eb71470272fddf42f2e6914 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 10:45:04 -0800 Subject: [PATCH 109/592] BivariateMap: add support for multi-dimensional indexing --- src/axom/slam/BivariateMap.hpp | 82 +++++++++++++++++----------------- 1 file changed, 40 insertions(+), 42 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 4772ba2611..317d8a4d2f 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -97,6 +97,8 @@ class BivariateMap using SetPosition = typename BSet::PositionType; using SetElement = typename BSet::ElementType; + using ElementShape = typename StridePolicyType::ShapeType; + using SetType = typename slam::RangeSet::ConcreteSet; using MapType = Map; using OrderedSetType = typename BSet::SubsetType; @@ -185,19 +187,18 @@ class BivariateMap * \param bSet (Optional) Pointer to the BivariateSet. * \param defaultValue (Optional) The default value used to initialize the * entries of the map. - * \param stride (Optional) The stride, or number of component, of the - * map. + * \param shape (Optional) The number of components in the map. * * \note When using a compile time StridePolicy, \a stride must be equal to * \a StridePolicy::stride(), when provided. */ BivariateMap(const BivariateSetType* bSet = &s_nullBiSet, DataType defaultValue = DataType(), - SetPosition stride = StridePolicyType::DEFAULT_VALUE, + ElementShape shape = StridePolicyType::DefaultSize(), int allocatorID = axom::getDefaultAllocatorID()) - : StridePolicyType(stride) + : StridePolicyType(shape) , m_bset(bSet) - , m_map(SetType(bSet->size()), defaultValue, stride, allocatorID) + , m_map(SetType(bSet->size()), defaultValue, shape, allocatorID) { } /// \overload @@ -207,11 +208,11 @@ class BivariateMap std::is_base_of::value>::type> BivariateMap(const UBSet& bSet, DataType defaultValue = DataType(), - SetPosition stride = StridePolicyType::DEFAULT_VALUE, + ElementShape shape = StridePolicyType::DefaultSize(), int allocatorID = axom::getDefaultAllocatorID()) - : StridePolicyType(stride) + : StridePolicyType(shape) , m_bset(bSet) - , m_map(SetType(bSet->size()), defaultValue, stride, allocatorID) + , m_map(SetType(bSet->size()), defaultValue, shape, allocatorID) { static_assert(std::is_same::value, "Argument set is of a more-derived type than the Map's set " @@ -225,18 +226,18 @@ class BivariateMap * * \param bSet A reference to the map's associated bivariate set * \param data The data buffer to set the map's data to. - * \param stride (Optional) The stride. The number of DataType that - * each element in the set will be mapped to. + * \param shape (Optional) The number of DataType that each element in the + * set will be mapped to. * When using a \a RuntimeStridePolicy, the default is 1. * \note When using a compile time StridePolicy, \a stride must be equal to * \a stride(), when provided. */ BivariateMap(const BivariateSetType* bSet, typename MapType::OrderedMap data, - SetPosition stride = StridePolicyType::DEFAULT_VALUE) - : StridePolicyType(stride) + ElementShape shape = StridePolicyType::DefaultSize()) + : StridePolicyType(shape) , m_bset(bSet) - , m_map(SetType(bSet->size()), data, stride) + , m_map(SetType(bSet->size()), data, shape) { } /** @@ -245,8 +246,8 @@ class BivariateMap * * \param bSet A reference to the map's associated bivariate set * \param data The data buffer to set the map's data to. - * \param stride (Optional) The stride. The number of DataType that - * each element in the set will be mapped to. + * \param shape (Optional) The number of DataType that each element in the + * set will be mapped to. * When using a \a RuntimeStridePolicy, the default is 1. * \note When using a compile time StridePolicy, \a stride must be equal to * \a stride(), when provided. @@ -258,10 +259,10 @@ class BivariateMap std::is_base_of::value>::type> BivariateMap(const UBSet& bSet, typename MapType::OrderedMap data, - SetPosition stride = StridePolicyType::DEFAULT_VALUE) - : StridePolicyType(stride) + ElementShape shape = StridePolicyType::DefaultSize()) + : StridePolicyType(shape) , m_bset(bSet) - , m_map(SetType(bSet.size()), data, stride) + , m_map(SetType(bSet.size()), data, shape) { static_assert(std::is_same::value, "Argument set is of a more-derived type than the Map's set " @@ -334,7 +335,7 @@ class BivariateMap ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); - return ConstSubMapType(s, submapView, StrPol::stride()); + return ConstSubMapType(s, submapView, StrPol::shape()); } AXOM_HOST_DEVICE SubMapType operator()(SetPosition firstIdx) @@ -350,7 +351,7 @@ class BivariateMap ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); - return SubMapType(s, submapView, StrPol::stride()); + return SubMapType(s, submapView, StrPol::shape()); } /** @@ -361,20 +362,22 @@ class BivariateMap * \pre `0 <= s2 < size(s1)` * \pre `0 <= comp < numComp()` */ + template AXOM_HOST_DEVICE ConstValueType operator()(SetPosition s1, SetPosition s2, - SetPosition comp = 0) const + ComponentIndex... comp) const { auto idx = flatIndex(s1, s2); - return useCompIndexing() ? m_map(idx, comp) : m_map[idx]; + return flatValue(idx, comp...); } + template AXOM_HOST_DEVICE ValueType operator()(SetPosition s1, SetPosition s2, - SetPosition comp = 0) + ComponentIndex... comp) { auto idx = flatIndex(s1, s2); - return useCompIndexing() ? m_map(idx, comp) : m_map[idx]; + return flatValue(idx, comp...); } /** @@ -384,15 +387,18 @@ class BivariateMap * \pre `0 <= flatIndex < size()` * \pre `0 <= comp < numComp()` */ + template AXOM_HOST_DEVICE ConstValueType flatValue(SetPosition flatIndex, - SetPosition comp = 0) const + ComponentIndex... comp) const { - return useCompIndexing() ? m_map(flatIndex, comp) : m_map[flatIndex]; + return m_map(flatIndex, comp...); } - AXOM_HOST_DEVICE ValueType flatValue(SetPosition flatIndex, SetPosition comp = 0) + template + AXOM_HOST_DEVICE ValueType flatValue(SetPosition flatIndex, + ComponentIndex... comp) { - return useCompIndexing() ? m_map(flatIndex, comp) : m_map[flatIndex]; + return m_map(flatIndex, comp...); } /** @@ -408,9 +414,10 @@ class BivariateMap * \warning For sparse BivariateSet type, this function may have to do a * linear search and can be slow. */ + template AXOM_HOST_DEVICE ConstPointerType findValue(SetPosition s1, SetPosition s2, - SetPosition comp = 0) const + ComponentIndex... comp) const { SetPosition i = set()->findElementFlatIndex(s1, s2); if(i == BivariateSetType::INVALID_POS) @@ -418,12 +425,13 @@ class BivariateMap //the BivariateSet does not contain this index pair return nullptr; } - return &(m_map(i, comp)); + return &(m_map(i, comp...)); } + template AXOM_HOST_DEVICE PointerType findValue(SetPosition s1, SetPosition s2, - SetPosition comp = 0) + ComponentIndex... comp) { SetPosition i = set()->findElementFlatIndex(s1, s2); if(i == BivariateSetType::INVALID_POS) @@ -431,7 +439,7 @@ class BivariateMap //the BivariateSet does not contain this index pair return nullptr; } - return &(m_map(i, comp)); + return &(m_map(i, comp...)); } /// @} @@ -474,16 +482,6 @@ class BivariateMap /// @} protected: - /** - * \brief Compile time predicate to check if we should use component indexing - * - * \note Intended to help optimize internal indexing - */ - AXOM_HOST_DEVICE constexpr bool useCompIndexing() const - { - return !(StrPol::IS_COMPILE_TIME && StrPol::DEFAULT_VALUE == 1); - } - /** * \brief Utility function to determine if submaps should use indirection * when finding the set indices of their elements. From 044d90dae5f4e334b36d293a0c1ead58a8812dc2 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 10:45:28 -0800 Subject: [PATCH 110/592] BivariateMap: add tests for multi-dimensional stride indexing --- src/axom/slam/tests/slam_map_BivariateMap.cpp | 214 ++++++++++++++++++ 1 file changed, 214 insertions(+) diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index 0b052bde22..9eb0da64ab 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -675,6 +675,15 @@ class slam_bivariate_map_templated : public ::testing::Test using CartesianMapType = slam::BivariateMap; + template + using NDStridePolicy = slam::policies::MultiDimStride; + template + using CartesianNDMapType = + slam::BivariateMap, InterfacePolicy>; + template + using RelationNDMapType = + slam::BivariateMap, InterfacePolicy>; + slam_bivariate_map_templated() : m_allocatorId(ExecTraits::getAllocatorId()) , m_unifiedAllocatorId(ExecTraits::getUnifiedAllocatorId()) @@ -682,8 +691,12 @@ class slam_bivariate_map_templated : public ::testing::Test void initializeAndTestCartesianMap(int stride); + void initializeAndTestCartesianMap(axom::StackArray shape); + void initializeAndTestRelationMap(int stride); + void initializeAndTestRelationMap(axom::StackArray shape); + protected: int m_allocatorId; int m_unifiedAllocatorId; @@ -799,6 +812,81 @@ void slam_bivariate_map_templated::initializeAndTestCartesianMap } } +//---------------------------------------------------------------------- +template +void slam_bivariate_map_templated::initializeAndTestCartesianMap( + axom::StackArray shape) +{ + using MapType = CartesianNDMapType<3>; + + // Create associated sets. + axom::Array sets(2, 2, m_unifiedAllocatorId); + sets[0] = ConcreteSetType(MAX_SET_SIZE1); + sets[1] = ConcreteSetType(MAX_SET_SIZE2); + + SLIC_INFO("Creating product set with size (" << MAX_SET_SIZE1 << ", " + << MAX_SET_SIZE2 << ")"); + ProductSetType prodSet(&sets[0], &sets[1]); + EXPECT_EQ(prodSet.size(), MAX_SET_SIZE1 * MAX_SET_SIZE2); + EXPECT_TRUE(prodSet.isValid()); + + int flatStride = shape[0] * shape[1] * shape[2]; + int strides[3] = {shape[1] * shape[2], shape[2], 1}; + + // Create array of elements to back the map. + m_allocatorId = ExecTraits::getAllocatorId(); + axom::IndexType backingSize = prodSet.size() * flatStride; + + RealData realBacking(backingSize, backingSize, m_unifiedAllocatorId); + + SLIC_INFO( + axom::fmt::format("\nCreating double map with shape ({}) on the ProductSet", + axom::fmt::join(shape, ", "))); + const MapType m(prodSet, realBacking.view(), shape); + + EXPECT_EQ(m.stride(), flatStride); + SLIC_INFO("\nSetting the elements."); + axom::for_all( + m.firstSetSize(), + AXOM_LAMBDA(int idx1) { + for(auto idx2 = 0; idx2 < m.secondSetSize(); idx2++) + { + for(int i = 0; i < shape[0]; i++) + for(int j = 0; j < shape[1]; j++) + for(int k = 0; k < shape[2]; k++) + { + int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; + m(idx1, idx2, i, j, k) = getVal(idx1, idx2, flatCompIdx); + } + } + }); + + SLIC_INFO("\nChecking the elements with findValue()."); + for(int idx1 = 0; idx1 < m.firstSetSize(); idx1++) + { + for(auto idx2 = 0; idx2 < m.secondSetSize(); idx2++) + { + int bsetIndex = idx1 * m.secondSetSize() + idx2; + for(int i = 0; i < shape[0]; i++) + for(int j = 0; j < shape[1]; j++) + for(int k = 0; k < shape[2]; k++) + { + int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; + int flatIdx = bsetIndex * flatStride; + flatIdx += flatCompIdx; + + double* ptr = m.findValue(idx1, idx2, i, j, k); + EXPECT_NE(ptr, nullptr); + EXPECT_EQ(*ptr, getVal(idx1, idx2, flatCompIdx)); + // Test other access methods: + EXPECT_EQ(*ptr, m.flatValue(bsetIndex, i, j, k)); + EXPECT_EQ(*ptr, m(idx1, idx2, i, j, k)); + EXPECT_EQ(*ptr, m[flatIdx]); + } + } + } +} + //---------------------------------------------------------------------- template void slam_bivariate_map_templated::initializeAndTestRelationMap( @@ -915,6 +1003,118 @@ void slam_bivariate_map_templated::initializeAndTestRelationMap( #endif } } +//---------------------------------------------------------------------- +template +void slam_bivariate_map_templated::initializeAndTestRelationMap( + axom::StackArray shape) +{ + using MapType = RelationNDMapType<3>; + + // Compute strides. + int flatStride = shape[0] * shape[1] * shape[2]; + int strides[3] = {shape[1] * shape[2], shape[2], 1}; + + // Create associated sets. + axom::Array sets(2, 2, m_unifiedAllocatorId); + sets[0] = ConcreteSetType(MAX_SET_SIZE1); + sets[1] = ConcreteSetType(MAX_SET_SIZE2); + + // Create a relation on the two sets. + SLIC_INFO("Creating static relation between two sets."); + axom::Array rel(1, 1, m_unifiedAllocatorId); + rel[0] = RelationType(&sets[0], &sets[1]); + axom::Array begin_vec(MAX_SET_SIZE1 + 1, + MAX_SET_SIZE1 + 1, + m_unifiedAllocatorId); + axom::Array index_vec(0, 0, m_unifiedAllocatorId); + + SetPosition curIdx = 0; + + for(auto i = 0; i < MAX_SET_SIZE1; ++i) + { + begin_vec[i] = curIdx; + if(MAX_SET_SIZE1 / 4 <= i && i <= MAX_SET_SIZE1 / 4 * 3) + { + for(auto j = MAX_SET_SIZE2 / 4; j < MAX_SET_SIZE2 / 4 * 3; ++j) + { + index_vec.push_back(j); + ++curIdx; + } + } + } + begin_vec[MAX_SET_SIZE1] = curIdx; + + rel[0].bindBeginOffsets(MAX_SET_SIZE1, begin_vec.view()); + rel[0].bindIndices(index_vec.size(), index_vec.view()); + + RelationType* relPtr = &rel[0]; + + RelationSetType relSet(&rel[0]); + EXPECT_EQ(index_vec.size(), relSet.totalSize()); + EXPECT_TRUE(relSet.isValid()); + + // Create array of elements to back the map. + m_allocatorId = ExecTraits::getUnifiedAllocatorId(); + axom::IndexType backingSize = index_vec.size() * flatStride; + + RealData realBacking(backingSize, backingSize, m_allocatorId); + + SLIC_INFO( + axom::fmt::format("\nCreating double map with shape ({}) on the ProductSet", + axom::fmt::join(shape, ", "))); + const MapType m(relSet, realBacking.view(), shape); + + EXPECT_EQ(m.stride(), flatStride); + axom::for_all( + m.firstSetSize(), + AXOM_LAMBDA(int idx1) { + auto submap = m(idx1); + for(auto slot = 0; slot < submap.size(); slot++) + for(int i = 0; i < shape[0]; i++) + for(int j = 0; j < shape[1]; j++) + for(int k = 0; k < shape[2]; k++) + { + int idx2 = submap.index(slot); + int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; + submap(slot, i, j, k) = getVal(idx1, idx2, flatCompIdx); + } + }); + + SLIC_INFO("\nChecking the elements with findValue()."); + for(int idx1 = 0; idx1 < m.firstSetSize(); idx1++) + { + auto submap = m(idx1); + int slot = 0; + for(int idx2 = 0; idx2 < m.secondSetSize(); idx2++) + { + bool inRelation = submap.size() > slot && submap.index(slot) == idx2; + for(int i = 0; i < shape[0]; i++) + for(int j = 0; j < shape[1]; j++) + for(int k = 0; k < shape[2]; k++) + { + int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; + double expected_value = getVal(idx1, idx2, flatCompIdx); + + double* valuePtr = m.findValue(idx1, idx2, i, j, k); + if(inRelation) + { + // Test set-based indexing: (idx1, idx2) + EXPECT_NE(valuePtr, nullptr); + EXPECT_EQ(expected_value, *valuePtr); + EXPECT_EQ(expected_value, m(idx1, idx2, i, j, k)); + } + else + { + EXPECT_EQ(valuePtr, nullptr); + } + } + if(inRelation) + { + slot++; + } + } + } +} //---------------------------------------------------------------------- AXOM_TYPED_TEST(slam_bivariate_map_templated, constructAndTestProductSet) @@ -924,6 +1124,13 @@ AXOM_TYPED_TEST(slam_bivariate_map_templated, constructAndTestProductSet) this->initializeAndTestCartesianMap(3); } +//---------------------------------------------------------------------- +AXOM_TYPED_TEST(slam_bivariate_map_templated, constructAndTestProductSet3D) +{ + this->initializeAndTestCartesianMap({2, 3, 5}); + this->initializeAndTestCartesianMap({3, 5, 7}); +} + //---------------------------------------------------------------------- AXOM_TYPED_TEST(slam_bivariate_map_templated, constructAndTestRelationSet) { @@ -932,6 +1139,13 @@ AXOM_TYPED_TEST(slam_bivariate_map_templated, constructAndTestRelationSet) this->initializeAndTestRelationMap(3); } +//---------------------------------------------------------------------- +AXOM_TYPED_TEST(slam_bivariate_map_templated, constructAndTestRelationSet3D) +{ + this->initializeAndTestRelationMap({2, 3, 5}); + this->initializeAndTestRelationMap({3, 5, 7}); +} + } // namespace testing //---------------------------------------------------------------------- From ff6e7893c518d87a7f0c86035a218268a1f278cd Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 15:43:40 -0800 Subject: [PATCH 111/592] Slam: fixes for GPU build Enables host/device execution for the following methods: * BivariateSet::getElements(idx) (also for ProductSet, RelationSet) * Set::at(idx) (also for OrderedSet) * OrderedSet/GenericRangeSet constructors --- src/axom/slam/BivariateMap.hpp | 10 ++++++---- src/axom/slam/BivariateSet.hpp | 4 ++-- src/axom/slam/DynamicSet.hpp | 5 ++++- src/axom/slam/Map.hpp | 33 +++++++++++++++++++-------------- src/axom/slam/NullSet.hpp | 2 +- src/axom/slam/OrderedSet.hpp | 19 +++++++++++-------- src/axom/slam/ProductSet.hpp | 9 ++++++--- src/axom/slam/RangeSet.hpp | 3 ++- src/axom/slam/RelationSet.hpp | 5 ++++- src/axom/slam/Set.hpp | 2 +- 10 files changed, 56 insertions(+), 36 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 317d8a4d2f..12327893d5 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -124,8 +124,10 @@ class BivariateMap typename policies::ToViewIndirection::Type; using SubMapConstIndirection = typename policies::ToViewIndirection::ConstType; - using SubMapType = Map; - using ConstSubMapType = Map; + using SubMapType = + Map; + using ConstSubMapType = + Map; using SubMapIterator = typename SubMapType::iterator; using ConstSubMapIterator = typename ConstSubMapType::iterator; @@ -332,7 +334,7 @@ class BivariateMap auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); + ArrayViewType submapView(m_map.data().data() + dataOffset, {dataSize}); auto s = set()->getElements(firstIdx); return ConstSubMapType(s, submapView, StrPol::shape()); @@ -348,7 +350,7 @@ class BivariateMap auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); + ArrayViewType submapView(m_map.data().data() + dataOffset, {dataSize}); auto s = set()->getElements(firstIdx); return SubMapType(s, submapView, StrPol::shape()); diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index de66669670..affe8bb7a1 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -234,7 +234,7 @@ class BivariateSet * \return An OrderedSet containing the elements * \pre 0 <= pos1 <= set1.size() */ - virtual SubsetType getElements(PositionType s1) const = 0; + AXOM_HOST_DEVICE virtual SubsetType getElements(PositionType s1) const = 0; /*! * \brief Return an iterator to the first pair of set elements in the @@ -448,7 +448,7 @@ class NullBivariateSet : public BivariateSet PositionType size(PositionType) const override { return PositionType(); } - SubsetType getElements(PositionType) const override + AXOM_HOST_DEVICE SubsetType getElements(PositionType) const override { using OrderedSetBuilder = typename SubsetType::SetBuilder; return OrderedSetBuilder(); diff --git a/src/axom/slam/DynamicSet.hpp b/src/axom/slam/DynamicSet.hpp index c63c592ce5..a429deeb47 100644 --- a/src/axom/slam/DynamicSet.hpp +++ b/src/axom/slam/DynamicSet.hpp @@ -254,7 +254,10 @@ class DynamicSet : public Set, SizePolicy * * \pre pos must be between 0 and size() */ - ElementType at(PositionType pos) const { return operator[](pos); }; + AXOM_HOST_DEVICE ElementType at(PositionType pos) const + { + return operator[](pos); + }; /** * \brief Access the element at position \a pos diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index f2b3a8f4d9..84f56de275 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -115,7 +115,7 @@ class Map : public StrPol, template struct SetContainer { - SetContainer(const USet* set) : m_pSet(set) { } + AXOM_HOST_DEVICE SetContainer(const USet* set) : m_pSet(set) { } AXOM_HOST_DEVICE const USet* get() const { return m_pSet; } @@ -125,8 +125,8 @@ class Map : public StrPol, template struct SetContainer { - SetContainer(const USet* set) : m_pSet(set) { } - SetContainer(const USet& set) : m_set(set) { } + AXOM_HOST_DEVICE SetContainer(const USet* set) : m_pSet(set) { } + AXOM_HOST_DEVICE SetContainer(const USet& set) : m_set(set) { } AXOM_HOST_DEVICE const USet* get() const { @@ -205,9 +205,9 @@ class Map : public StrPol, typename TSet = SetType, typename Enable = typename std::enable_if< !std::is_abstract::value && std::is_base_of::value>::type> - Map(const USet& theSet, - OrderedMap data, - ElementShape shape = StridePolicyType::DefaultSize()) + AXOM_HOST_DEVICE Map(const USet& theSet, + OrderedMap data, + ElementShape shape = StridePolicyType::DefaultSize()) : StridePolicyType(shape) , m_set(theSet) , m_data(std::move(data)) @@ -217,8 +217,10 @@ class Map : public StrPol, "type. This may lead to object slicing. Use Map's pointer " "constructor instead to store polymorphic sets."); +#ifndef AXOM_DEVICE_CODE checkBackingSize( std::integral_constant {}); +#endif } /** @@ -240,7 +242,7 @@ class Map : public StrPol, /** * \brief Returns a pointer to the map's underlying set */ - const SetType* set() const { return m_set.get(); } + AXOM_HOST_DEVICE const SetType* set() const { return m_set.get(); } /// \name Map individual access functions /// @{ @@ -354,7 +356,10 @@ class Map : public StrPol, return IndirectionPolicy::getIndirection(m_data, elemIndex); } - SetElement index(IndexType idx) const { return set()->at(idx); } + AXOM_HOST_DEVICE SetElement index(IndexType idx) const + { + return set()->at(idx); + } /// @} @@ -495,9 +500,9 @@ class Map : public StrPol, { using MapConstType = std::conditional_t; using MapRefType = std::conditional_t; - MapIteratorStorage(MapConstType pMap) : m_map(pMap) { } + AXOM_HOST_DEVICE MapIteratorStorage(MapConstType pMap) : m_map(pMap) { } - MapRefType map() const { return *m_map; } + AXOM_HOST_DEVICE MapRefType map() const { return *m_map; } MapConstType m_map; }; @@ -506,9 +511,9 @@ class Map : public StrPol, struct MapIteratorStorage { using MapConstType = std::conditional_t; - MapIteratorStorage(MapConstType pMap) : m_map(*pMap) { } + AXOM_HOST_DEVICE MapIteratorStorage(MapConstType pMap) : m_map(*pMap) { } - const Map& map() const { return m_map; } + AXOM_HOST_DEVICE const Map& map() const { return m_map; } Map m_map; }; @@ -682,8 +687,8 @@ class Map : public StrPol, /** * \brief Returns a reference to the underlying map data */ - OrderedMap& data() { return m_data; } - const OrderedMap& data() const { return m_data; } + AXOM_HOST_DEVICE OrderedMap& data() { return m_data; } + AXOM_HOST_DEVICE const OrderedMap& data() const { return m_data; } private: inline void verifyPosition(SetPosition idx) const { verifyPositionImpl(idx); } diff --git a/src/axom/slam/NullSet.hpp b/src/axom/slam/NullSet.hpp index afcf29e68d..ffc5b8ca37 100644 --- a/src/axom/slam/NullSet.hpp +++ b/src/axom/slam/NullSet.hpp @@ -39,7 +39,7 @@ class NullSet : public Set AXOM_HOST_DEVICE inline PositionType size() const { return PositionType(); } - inline ElementType at(PositionType pos) const + AXOM_HOST_DEVICE inline ElementType at(PositionType pos) const { verifyPosition(pos); return PositionType(); diff --git a/src/axom/slam/OrderedSet.hpp b/src/axom/slam/OrderedSet.hpp index 267b0b9c9b..7ab9892900 100644 --- a/src/axom/slam/OrderedSet.hpp +++ b/src/axom/slam/OrderedSet.hpp @@ -92,13 +92,13 @@ struct OrderedSet using iterator_pair = std::pair; public: - OrderedSet(PositionType size = SizePolicyType::DEFAULT_VALUE, - PositionType offset = OffsetPolicyType::DEFAULT_VALUE, - PositionType stride = StridePolicyType::DEFAULT_VALUE - // Note: constructor does not yet take an - // indirection type pointer... - // const Set* parentSet = &s_nullSet - ) + AXOM_HOST_DEVICE OrderedSet(PositionType size = SizePolicyType::DEFAULT_VALUE, + PositionType offset = OffsetPolicyType::DEFAULT_VALUE, + PositionType stride = StridePolicyType::DEFAULT_VALUE + // Note: constructor does not yet take an + // indirection type pointer... + // const Set* parentSet = &s_nullSet + ) : SizePolicyType(size) , OffsetPolicyType(offset) , StridePolicyType(stride) @@ -474,7 +474,10 @@ struct OrderedSet return IndirectionPolicy::indirection(pos * StridePolicyType::stride() + OffsetPolicyType::offset()); } - inline ElementType at(PositionType pos) const { return operator[](pos); } + AXOM_HOST_DEVICE inline ElementType at(PositionType pos) const + { + return operator[](pos); + } AXOM_HOST_DEVICE inline PositionType size() const { diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 1430bf36a1..9792595460 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -75,7 +75,7 @@ class ProductSet final .data(m_data.view()); } - Type get(PositionType) const { return m_set; } + AXOM_HOST_DEVICE Type get(PositionType) const { return m_set; } axom::Array m_data; SetType m_set; @@ -91,7 +91,10 @@ class ProductSet final RowSet(PositionType) { } - Type get(PositionType secondSetSize) const { return Type(secondSetSize); } + AXOM_HOST_DEVICE Type get(PositionType secondSetSize) const + { + return Type(secondSetSize); + } }; struct Iterator; @@ -220,7 +223,7 @@ class ProductSet final * * \return An OrderedSet of the elements in the row. */ - SubsetType getElements(PositionType AXOM_DEBUG_PARAM(pos1)) const + AXOM_HOST_DEVICE SubsetType getElements(PositionType AXOM_DEBUG_PARAM(pos1)) const { SLIC_ASSERT(pos1 >= 0 && pos1 < this->firstSetSize()); diff --git a/src/axom/slam/RangeSet.hpp b/src/axom/slam/RangeSet.hpp index fb9252e8d8..6a24340151 100644 --- a/src/axom/slam/RangeSet.hpp +++ b/src/axom/slam/RangeSet.hpp @@ -80,7 +80,8 @@ class GenericRangeSet : public OrderedSet Date: Wed, 24 Jan 2024 15:46:12 -0800 Subject: [PATCH 112/592] Slam: use fuzzy comparisons in Map/BivariateMap tests --- src/axom/slam/tests/slam_map_BivariateMap.cpp | 8 ++++---- src/axom/slam/tests/slam_map_Map.cpp | 6 +++--- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index 9eb0da64ab..4629240a1a 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -877,11 +877,11 @@ void slam_bivariate_map_templated::initializeAndTestCartesianMap double* ptr = m.findValue(idx1, idx2, i, j, k); EXPECT_NE(ptr, nullptr); - EXPECT_EQ(*ptr, getVal(idx1, idx2, flatCompIdx)); + EXPECT_DOUBLE_EQ(*ptr, getVal(idx1, idx2, flatCompIdx)); // Test other access methods: - EXPECT_EQ(*ptr, m.flatValue(bsetIndex, i, j, k)); - EXPECT_EQ(*ptr, m(idx1, idx2, i, j, k)); - EXPECT_EQ(*ptr, m[flatIdx]); + EXPECT_DOUBLE_EQ(*ptr, m.flatValue(bsetIndex, i, j, k)); + EXPECT_DOUBLE_EQ(*ptr, m(idx1, idx2, i, j, k)); + EXPECT_DOUBLE_EQ(*ptr, m[flatIdx]); } } } diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index 408683ff63..f496fb700f 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -666,11 +666,11 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest2DStride) for(int j = 0; j < shape[1]; j++) { double expectedValue = setIdx * multFac + i * multFac2 + j * multFac3; - EXPECT_EQ(m(setIdx, i, j), expectedValue); - EXPECT_EQ(m.value(setIdx, i, j), expectedValue); + EXPECT_DOUBLE_EQ(m(setIdx, i, j), expectedValue); + EXPECT_DOUBLE_EQ(m.value(setIdx, i, j), expectedValue); int flatIndex = i * strides[0] + j * strides[1]; - EXPECT_EQ(m[setIdx * stride + flatIndex], expectedValue); + EXPECT_DOUBLE_EQ(m[setIdx * stride + flatIndex], expectedValue); } } } From 13d494faf23554a0e88a48f018dd72cad9ca1419 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 15:54:30 -0800 Subject: [PATCH 113/592] Map: allocate multi-dimensional stride backing in unified memory --- src/axom/slam/tests/slam_map_Map.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index f496fb700f..b893d59708 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -510,10 +510,9 @@ class slam_map_templated : public ::testing::Test } // Create array of elements to back the map. - m_allocatorId = ExecTraits::getAllocatorId(); axom::IndexType backingSize = m_set.size() * stride; - m_realBacking = RealData(backingSize, backingSize, m_allocatorId); + m_realBacking = RealData(backingSize, backingSize, m_unifiedAllocatorId); } protected: From 6d6e98a35603364fa63f09224a1500859befc6fe Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 17:03:44 -0800 Subject: [PATCH 114/592] Revert "Slam: fixes for GPU build" This reverts commit 2d286e488d48b1aec9530115de7c46b912337e7f. --- src/axom/slam/BivariateMap.hpp | 10 ++++------ src/axom/slam/BivariateSet.hpp | 4 ++-- src/axom/slam/DynamicSet.hpp | 5 +---- src/axom/slam/Map.hpp | 33 ++++++++++++++------------------- src/axom/slam/NullSet.hpp | 2 +- src/axom/slam/OrderedSet.hpp | 19 ++++++++----------- src/axom/slam/ProductSet.hpp | 9 +++------ src/axom/slam/RangeSet.hpp | 3 +-- src/axom/slam/RelationSet.hpp | 5 +---- src/axom/slam/Set.hpp | 2 +- 10 files changed, 36 insertions(+), 56 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 12327893d5..317d8a4d2f 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -124,10 +124,8 @@ class BivariateMap typename policies::ToViewIndirection::Type; using SubMapConstIndirection = typename policies::ToViewIndirection::ConstType; - using SubMapType = - Map; - using ConstSubMapType = - Map; + using SubMapType = Map; + using ConstSubMapType = Map; using SubMapIterator = typename SubMapType::iterator; using ConstSubMapIterator = typename ConstSubMapType::iterator; @@ -334,7 +332,7 @@ class BivariateMap auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - ArrayViewType submapView(m_map.data().data() + dataOffset, {dataSize}); + ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); return ConstSubMapType(s, submapView, StrPol::shape()); @@ -350,7 +348,7 @@ class BivariateMap auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - ArrayViewType submapView(m_map.data().data() + dataOffset, {dataSize}); + ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); return SubMapType(s, submapView, StrPol::shape()); diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index affe8bb7a1..de66669670 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -234,7 +234,7 @@ class BivariateSet * \return An OrderedSet containing the elements * \pre 0 <= pos1 <= set1.size() */ - AXOM_HOST_DEVICE virtual SubsetType getElements(PositionType s1) const = 0; + virtual SubsetType getElements(PositionType s1) const = 0; /*! * \brief Return an iterator to the first pair of set elements in the @@ -448,7 +448,7 @@ class NullBivariateSet : public BivariateSet PositionType size(PositionType) const override { return PositionType(); } - AXOM_HOST_DEVICE SubsetType getElements(PositionType) const override + SubsetType getElements(PositionType) const override { using OrderedSetBuilder = typename SubsetType::SetBuilder; return OrderedSetBuilder(); diff --git a/src/axom/slam/DynamicSet.hpp b/src/axom/slam/DynamicSet.hpp index a429deeb47..c63c592ce5 100644 --- a/src/axom/slam/DynamicSet.hpp +++ b/src/axom/slam/DynamicSet.hpp @@ -254,10 +254,7 @@ class DynamicSet : public Set, SizePolicy * * \pre pos must be between 0 and size() */ - AXOM_HOST_DEVICE ElementType at(PositionType pos) const - { - return operator[](pos); - }; + ElementType at(PositionType pos) const { return operator[](pos); }; /** * \brief Access the element at position \a pos diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 84f56de275..f2b3a8f4d9 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -115,7 +115,7 @@ class Map : public StrPol, template struct SetContainer { - AXOM_HOST_DEVICE SetContainer(const USet* set) : m_pSet(set) { } + SetContainer(const USet* set) : m_pSet(set) { } AXOM_HOST_DEVICE const USet* get() const { return m_pSet; } @@ -125,8 +125,8 @@ class Map : public StrPol, template struct SetContainer { - AXOM_HOST_DEVICE SetContainer(const USet* set) : m_pSet(set) { } - AXOM_HOST_DEVICE SetContainer(const USet& set) : m_set(set) { } + SetContainer(const USet* set) : m_pSet(set) { } + SetContainer(const USet& set) : m_set(set) { } AXOM_HOST_DEVICE const USet* get() const { @@ -205,9 +205,9 @@ class Map : public StrPol, typename TSet = SetType, typename Enable = typename std::enable_if< !std::is_abstract::value && std::is_base_of::value>::type> - AXOM_HOST_DEVICE Map(const USet& theSet, - OrderedMap data, - ElementShape shape = StridePolicyType::DefaultSize()) + Map(const USet& theSet, + OrderedMap data, + ElementShape shape = StridePolicyType::DefaultSize()) : StridePolicyType(shape) , m_set(theSet) , m_data(std::move(data)) @@ -217,10 +217,8 @@ class Map : public StrPol, "type. This may lead to object slicing. Use Map's pointer " "constructor instead to store polymorphic sets."); -#ifndef AXOM_DEVICE_CODE checkBackingSize( std::integral_constant {}); -#endif } /** @@ -242,7 +240,7 @@ class Map : public StrPol, /** * \brief Returns a pointer to the map's underlying set */ - AXOM_HOST_DEVICE const SetType* set() const { return m_set.get(); } + const SetType* set() const { return m_set.get(); } /// \name Map individual access functions /// @{ @@ -356,10 +354,7 @@ class Map : public StrPol, return IndirectionPolicy::getIndirection(m_data, elemIndex); } - AXOM_HOST_DEVICE SetElement index(IndexType idx) const - { - return set()->at(idx); - } + SetElement index(IndexType idx) const { return set()->at(idx); } /// @} @@ -500,9 +495,9 @@ class Map : public StrPol, { using MapConstType = std::conditional_t; using MapRefType = std::conditional_t; - AXOM_HOST_DEVICE MapIteratorStorage(MapConstType pMap) : m_map(pMap) { } + MapIteratorStorage(MapConstType pMap) : m_map(pMap) { } - AXOM_HOST_DEVICE MapRefType map() const { return *m_map; } + MapRefType map() const { return *m_map; } MapConstType m_map; }; @@ -511,9 +506,9 @@ class Map : public StrPol, struct MapIteratorStorage { using MapConstType = std::conditional_t; - AXOM_HOST_DEVICE MapIteratorStorage(MapConstType pMap) : m_map(*pMap) { } + MapIteratorStorage(MapConstType pMap) : m_map(*pMap) { } - AXOM_HOST_DEVICE const Map& map() const { return m_map; } + const Map& map() const { return m_map; } Map m_map; }; @@ -687,8 +682,8 @@ class Map : public StrPol, /** * \brief Returns a reference to the underlying map data */ - AXOM_HOST_DEVICE OrderedMap& data() { return m_data; } - AXOM_HOST_DEVICE const OrderedMap& data() const { return m_data; } + OrderedMap& data() { return m_data; } + const OrderedMap& data() const { return m_data; } private: inline void verifyPosition(SetPosition idx) const { verifyPositionImpl(idx); } diff --git a/src/axom/slam/NullSet.hpp b/src/axom/slam/NullSet.hpp index ffc5b8ca37..afcf29e68d 100644 --- a/src/axom/slam/NullSet.hpp +++ b/src/axom/slam/NullSet.hpp @@ -39,7 +39,7 @@ class NullSet : public Set AXOM_HOST_DEVICE inline PositionType size() const { return PositionType(); } - AXOM_HOST_DEVICE inline ElementType at(PositionType pos) const + inline ElementType at(PositionType pos) const { verifyPosition(pos); return PositionType(); diff --git a/src/axom/slam/OrderedSet.hpp b/src/axom/slam/OrderedSet.hpp index 7ab9892900..267b0b9c9b 100644 --- a/src/axom/slam/OrderedSet.hpp +++ b/src/axom/slam/OrderedSet.hpp @@ -92,13 +92,13 @@ struct OrderedSet using iterator_pair = std::pair; public: - AXOM_HOST_DEVICE OrderedSet(PositionType size = SizePolicyType::DEFAULT_VALUE, - PositionType offset = OffsetPolicyType::DEFAULT_VALUE, - PositionType stride = StridePolicyType::DEFAULT_VALUE - // Note: constructor does not yet take an - // indirection type pointer... - // const Set* parentSet = &s_nullSet - ) + OrderedSet(PositionType size = SizePolicyType::DEFAULT_VALUE, + PositionType offset = OffsetPolicyType::DEFAULT_VALUE, + PositionType stride = StridePolicyType::DEFAULT_VALUE + // Note: constructor does not yet take an + // indirection type pointer... + // const Set* parentSet = &s_nullSet + ) : SizePolicyType(size) , OffsetPolicyType(offset) , StridePolicyType(stride) @@ -474,10 +474,7 @@ struct OrderedSet return IndirectionPolicy::indirection(pos * StridePolicyType::stride() + OffsetPolicyType::offset()); } - AXOM_HOST_DEVICE inline ElementType at(PositionType pos) const - { - return operator[](pos); - } + inline ElementType at(PositionType pos) const { return operator[](pos); } AXOM_HOST_DEVICE inline PositionType size() const { diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 9792595460..1430bf36a1 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -75,7 +75,7 @@ class ProductSet final .data(m_data.view()); } - AXOM_HOST_DEVICE Type get(PositionType) const { return m_set; } + Type get(PositionType) const { return m_set; } axom::Array m_data; SetType m_set; @@ -91,10 +91,7 @@ class ProductSet final RowSet(PositionType) { } - AXOM_HOST_DEVICE Type get(PositionType secondSetSize) const - { - return Type(secondSetSize); - } + Type get(PositionType secondSetSize) const { return Type(secondSetSize); } }; struct Iterator; @@ -223,7 +220,7 @@ class ProductSet final * * \return An OrderedSet of the elements in the row. */ - AXOM_HOST_DEVICE SubsetType getElements(PositionType AXOM_DEBUG_PARAM(pos1)) const + SubsetType getElements(PositionType AXOM_DEBUG_PARAM(pos1)) const { SLIC_ASSERT(pos1 >= 0 && pos1 < this->firstSetSize()); diff --git a/src/axom/slam/RangeSet.hpp b/src/axom/slam/RangeSet.hpp index 6a24340151..fb9252e8d8 100644 --- a/src/axom/slam/RangeSet.hpp +++ b/src/axom/slam/RangeSet.hpp @@ -80,8 +80,7 @@ class GenericRangeSet : public OrderedSet Date: Wed, 24 Jan 2024 17:04:05 -0800 Subject: [PATCH 115/592] Revert "BivariateMap: fix instantiation of submap indirection policies" This reverts commit 4790c8b822ded815bb68684e4e36e0d2f5a88423. --- src/axom/slam/BivariateMap.hpp | 12 +++++------ src/axom/slam/policies/PolicyTraits.hpp | 27 ------------------------- 2 files changed, 5 insertions(+), 34 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 317d8a4d2f..2e5e8bdfa3 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -120,10 +120,9 @@ class BivariateMap using range_iterator = RangeIterator; using const_range_iterator = RangeIterator; - using SubMapIndirection = - typename policies::ToViewIndirection::Type; + using SubMapIndirection = policies::ArrayViewIndirection; using SubMapConstIndirection = - typename policies::ToViewIndirection::ConstType; + policies::ArrayViewIndirection; using SubMapType = Map; using ConstSubMapType = Map; @@ -327,12 +326,12 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif - using ArrayViewType = typename SubMapConstIndirection::IndirectionBufferType; // Construct an ArrayView with the subset data. auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); + axom::ArrayView submapView(m_map.data().data() + dataOffset, + dataSize); auto s = set()->getElements(firstIdx); return ConstSubMapType(s, submapView, StrPol::shape()); @@ -343,12 +342,11 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif - using ArrayViewType = typename SubMapIndirection::IndirectionBufferType; // Construct an ArrayView with the subset data. auto elemRange = set()->elementRangeSet(firstIdx); SetPosition dataOffset = elemRange.offset() * StrPol::stride(); SetPosition dataSize = elemRange.size() * StrPol::stride(); - ArrayViewType submapView(m_map.data().data() + dataOffset, dataSize); + axom::ArrayView submapView(m_map.data().data() + dataOffset, dataSize); auto s = set()->getElements(firstIdx); return SubMapType(s, submapView, StrPol::shape()); diff --git a/src/axom/slam/policies/PolicyTraits.hpp b/src/axom/slam/policies/PolicyTraits.hpp index 0f6daa51b6..ec64b40081 100644 --- a/src/axom/slam/policies/PolicyTraits.hpp +++ b/src/axom/slam/policies/PolicyTraits.hpp @@ -16,7 +16,6 @@ #include "axom/slam/NullSet.hpp" #include "axom/slam/policies/SizePolicies.hpp" #include "axom/slam/policies/StridePolicies.hpp" -#include "axom/slam/policies/IndirectionPolicies.hpp" #include @@ -99,32 +98,6 @@ struct EmptySetTraits> } }; -/*! - * \brief Type trait to get a compatible ArrayView-based indirection policy for - * another indirection policy. - */ -template -struct ToViewIndirection -{ - using Type = policies::ArrayViewIndirection; - using ConstType = policies::ArrayViewIndirection; -}; - -/*! - * \brief Specialization for ArrayViewIndirection. - * - * Since ArrayViews are shallow-const types, we just pass through the - * constness of the original ArrayView. - */ -template -struct ToViewIndirection> -{ - using Type = policies::ArrayViewIndirection; - using ConstType = policies::ArrayViewIndirection; -}; - } // end namespace policies namespace traits From 959ce4ab5af7cd34b0f7f75c1e05d8ed57788735 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Wed, 24 Jan 2024 17:12:34 -0800 Subject: [PATCH 116/592] Revert "BivariateMap: use Map as subset type instead of SubMap" This reverts commit 4f05b3e04aa95139963065bb5ebb9bbca6ba1faa. --- src/axom/multimat/examples/traversal.cpp | 5 +- src/axom/slam/BivariateMap.hpp | 49 +++---------------- src/axom/slam/tests/slam_map_BivariateMap.cpp | 29 ++--------- 3 files changed, 16 insertions(+), 67 deletions(-) diff --git a/src/axom/multimat/examples/traversal.cpp b/src/axom/multimat/examples/traversal.cpp index 8ca749680a..419eac3795 100644 --- a/src/axom/multimat/examples/traversal.cpp +++ b/src/axom/multimat/examples/traversal.cpp @@ -330,7 +330,7 @@ void various_traversal_methods(int nmats, auto map2d = mm.get2dField("CellMat Array"); for(int i = 0; i < mm.getNumberOfCells() /*map2d.firstSetSize()*/; i++) { - for(auto iter = map2d.set_begin(i); iter != map2d.set_end(i); iter++) + for(auto iter = map2d.begin(i); iter != map2d.end(i); iter++) { // int idx = iter.index(); get the index for(int comp = 0; comp < map2d.numComp(); ++comp) @@ -338,7 +338,8 @@ void various_traversal_methods(int nmats, sum += iter(comp); //<---- SLIC_ASSERT(iter(comp) == iter.value(comp)); //value() } - SLIC_ASSERT(iter(0) == iter.value(0)); + SLIC_ASSERT(iter(0) == *iter); //2 ways to get the first component + SLIC_ASSERT(iter(0) == iter.value()); } } } diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 2e5e8bdfa3..215fdd1258 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -120,16 +120,10 @@ class BivariateMap using range_iterator = RangeIterator; using const_range_iterator = RangeIterator; - using SubMapIndirection = policies::ArrayViewIndirection; - using SubMapConstIndirection = - policies::ArrayViewIndirection; - using SubMapType = Map; - using ConstSubMapType = Map; - + using SubMapType = SubMap; + using ConstSubMapType = const SubMap; using SubMapIterator = typename SubMapType::iterator; using ConstSubMapIterator = typename ConstSubMapType::iterator; - using SubMapRangeIterator = typename SubMapType::range_iterator; - using ConstSubMapRangeIterator = typename ConstSubMapType::range_iterator; using NullBivariateSetType = NullBivariateSet; @@ -326,15 +320,9 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif - // Construct an ArrayView with the subset data. - auto elemRange = set()->elementRangeSet(firstIdx); - SetPosition dataOffset = elemRange.offset() * StrPol::stride(); - SetPosition dataSize = elemRange.size() * StrPol::stride(); - axom::ArrayView submapView(m_map.data().data() + dataOffset, - dataSize); - - auto s = set()->getElements(firstIdx); - return ConstSubMapType(s, submapView, StrPol::shape()); + auto s = set()->elementRangeSet(firstIdx); + const bool hasInd = submapIndicesHaveIndirection(); + return ConstSubMapType(this, s, hasInd); } AXOM_HOST_DEVICE SubMapType operator()(SetPosition firstIdx) @@ -342,14 +330,9 @@ class BivariateMap #ifndef AXOM_DEVICE_CODE verifyFirstSetIndex(firstIdx); #endif - // Construct an ArrayView with the subset data. - auto elemRange = set()->elementRangeSet(firstIdx); - SetPosition dataOffset = elemRange.offset() * StrPol::stride(); - SetPosition dataSize = elemRange.size() * StrPol::stride(); - axom::ArrayView submapView(m_map.data().data() + dataOffset, dataSize); - - auto s = set()->getElements(firstIdx); - return SubMapType(s, submapView, StrPol::shape()); + auto s = set()->elementRangeSet(firstIdx); + const bool hasInd = submapIndicesHaveIndirection(); + return SubMapType(this, s, hasInd); } /** @@ -536,22 +519,6 @@ class BivariateMap { return (*this)(i).end(); } - AXOM_HOST_DEVICE SubMapRangeIterator set_begin(int i) - { - return (*this)(i).set_begin(); - } - AXOM_HOST_DEVICE SubMapRangeIterator set_end(int i) - { - return (*this)(i).set_end(); - } - AXOM_HOST_DEVICE ConstSubMapRangeIterator set_begin(int i) const - { - return (*this)(i).set_begin(); - } - AXOM_HOST_DEVICE ConstSubMapRangeIterator set_end(int i) const - { - return (*this)(i).set_end(); - } public: AXOM_HOST_DEVICE const BivariateSetType* set() const { return m_bset.get(); } diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index 4629240a1a..f6e985a6c6 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -369,35 +369,16 @@ void constructAndTestBivariateMapIterator(int stride) } } } - SLIC_INFO("Checking the elements with SubMap flat iterator."); - for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) - { - auto iter = m.begin(idx1); - for(auto idx2 = 0; idx2 < m.secondSetSize(); idx2++) - { - for(auto i = 0; i < stride; i++) - { - // Check iterator validity. - EXPECT_EQ(iter.index(), idx2); - EXPECT_EQ(iter.compIndex(), i); - EXPECT_NE(iter, m.end(idx1)); - - // Check iterator data. - EXPECT_EQ(*iter, getVal(idx1, idx2, i)); - - iter++; - } - } - } - SLIC_INFO("Checking the elements with SubMap range iterator."); + SLIC_INFO("Checking the elements with SubMap iterator."); for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) { int idx2 = 0; - auto begin_iter = m.set_begin(idx1); - for(auto iter = m.set_begin(idx1); iter != m.set_end(idx1); ++iter, ++idx2) + auto begin_iter = m.begin(idx1); + for(auto iter = m.begin(idx1); iter != m.end(idx1); ++iter, ++idx2) { - EXPECT_EQ(begin_iter[idx2], *iter); + EXPECT_EQ(begin_iter[idx2], getVal(idx1, idx2)); + EXPECT_EQ(*iter, getVal(idx1, idx2)); for(auto i = 0; i < iter.numComp(); i++) { EXPECT_EQ(iter(i), getVal(idx1, idx2, i)); From 15e38f2369dbd350327c0765ba5d8d6a39c02cb1 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Thu, 25 Jan 2024 18:25:07 -0800 Subject: [PATCH 117/592] SubMap: add support for multi-dimensional indexing --- src/axom/slam/SubMap.hpp | 67 +++++++++++++++++++++++++++++++++++----- 1 file changed, 60 insertions(+), 7 deletions(-) diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 60a711dd85..00688cbb33 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -69,6 +69,8 @@ class SubMap using StridePolicyType = typename SuperMapType::StridePolicyType; using IndirectionPolicyType = typename SuperMapType::IndirectionPolicy; + using ElementShape = typename StridePolicyType::ShapeType; + using MapType = Map; @@ -98,7 +100,7 @@ class SubMap AXOM_HOST_DEVICE SubMap(SuperMapType* supermap, SubsetType subset_idxset, bool indicesHaveIndirection = true) - : StridePolicyType(supermap->stride()) + : StridePolicyType(*supermap) , m_superMap(supermap) , m_subsetIdx(subset_idxset) , m_indicesHaveIndirection(indicesHaveIndirection) @@ -130,14 +132,16 @@ class SubMap * \pre `0 <= idx < size()` * \pre `0 <= comp < numComp()` */ - AXOM_HOST_DEVICE DataRefType operator()(IndexType idx, IndexType comp = 0) const + template + AXOM_HOST_DEVICE DataRefType operator()(IndexType idx, + ComponentIndex... comp) const { #ifndef AXOM_DEVICE_CODE - verifyPositionImpl(idx, comp); + verifyPositionImpl(idx, comp...); #endif SLIC_ASSERT_MSG(m_superMap != nullptr, "Submap's super map was null."); - - return (*m_superMap)[getMapElemFlatIndex(idx) * numComp() + comp]; + IndexType elemBegin = getMapElemFlatIndex(idx) * numComp(); + return (*m_superMap)[elemBegin + componentOffset(comp...)]; } /** @@ -147,9 +151,10 @@ class SubMap * \pre `0 <= idx < size()` * \pre `0 <= comp < numComp()` */ - DataRefType value(IndexType idx, IndexType comp = 0) const + template + AXOM_HOST_DEVICE DataRefType value(IndexType idx, ComponentIndex... comp) const { - return operator()(idx, comp); + return operator()(idx, comp...); } /** @@ -237,6 +242,54 @@ class SubMap << m_subsetIdx.size() << " with " << numComp() << " component"); } + /** Checks the ElementFlatIndex and the component index is valid */ + template + void verifyPositionImpl(SetPosition AXOM_DEBUG_PARAM(idx), + ComponentIndex... AXOM_DEBUG_PARAM(comp)) const + { +#ifdef AXOM_DEBUG + ElementShape indexArray {{comp...}}; + bool validIndexes = true; + for(int dim = 0; dim < StridePolicyType::NumDims; dim++) + { + validIndexes = validIndexes && (indexArray[dim] >= 0); + validIndexes = validIndexes && (indexArray[dim] < m_superMap->shape()[dim]); + } + std::string invalid_message = fmt::format( + "Attempted to access element {} component ({}), but SubMap's data has " + "size {} with component shape ({})", + idx, + fmt::join(indexArray, ", "), + m_subsetIdx.size(), + fmt::join(m_superMap->shape(), ", ")); + SLIC_ASSERT_MSG(idx >= 0 && idx < m_subsetIdx.size() && validIndexes, + invalid_message); +#endif + } + + /*! + * \brief Computes the flat indexing offset for a given component. + */ + AXOM_HOST_DEVICE inline SetPosition componentOffset( + SetPosition componentIndex = 0) const + { + return componentIndex; + } + + template + AXOM_HOST_DEVICE inline SetPosition componentOffset( + ComponentIndex... componentIndex) const + { + ElementShape indexArray {{componentIndex...}}; + ElementShape strides = StridePolicyType::strides(); + SetPosition offset = 0; + for(int dim = 0; dim < StridePolicyType::NumDims; dim++) + { + offset += indexArray[dim] * strides[dim]; + } + return offset; + } + public: /** * \class SubMapIterator From 871ad2a2af8ddec794b077d283bc6d3a49cff281 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Thu, 25 Jan 2024 23:53:15 -0800 Subject: [PATCH 118/592] Slam: fixes for GPU build Adds host/device annotations to BivariateSet::at(), SubMap::index() --- src/axom/slam/BivariateSet.hpp | 7 +++++-- src/axom/slam/ProductSet.hpp | 5 ++++- src/axom/slam/RelationSet.hpp | 4 +++- src/axom/slam/SubMap.hpp | 2 +- 4 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index de66669670..81de3ad4b8 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -225,7 +225,7 @@ class BivariateSet const SecondSetType* getSecondSet() const { return m_set2; } /** \brief Returns the element at the given FlatIndex \a pos */ - virtual ElementType at(PositionType pos) const = 0; + AXOM_HOST_DEVICE virtual ElementType at(PositionType pos) const = 0; /** * \brief A set of elements with the given first set index. @@ -442,7 +442,10 @@ class NullBivariateSet : public BivariateSet return RangeSetType(); } - ElementType at(PositionType) const override { return PositionType(); } + AXOM_HOST_DEVICE ElementType at(PositionType) const override + { + return PositionType(); + } AXOM_HOST_DEVICE PositionType size() const override { return PositionType(); } diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 1430bf36a1..818463d7e8 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -227,7 +227,10 @@ class ProductSet final return m_rowSet.get(this->secondSetSize()); } - ElementType at(PositionType pos) const { return pos % this->secondSetSize(); } + AXOM_HOST_DEVICE ElementType at(PositionType pos) const + { + return pos % this->secondSetSize(); + } AXOM_HOST_DEVICE PositionType size() const { diff --git a/src/axom/slam/RelationSet.hpp b/src/axom/slam/RelationSet.hpp index f759d5e755..26a5e12bf3 100644 --- a/src/axom/slam/RelationSet.hpp +++ b/src/axom/slam/RelationSet.hpp @@ -221,9 +221,11 @@ class RelationSet final */ SubsetType getElements(PositionType s1) const { return (*m_relation)[s1]; } - ElementType at(PositionType pos) const + AXOM_HOST_DEVICE ElementType at(PositionType pos) const { +#ifndef AXOM_DEVICE_CODE RelationSet::verifyPosition(pos); +#endif return m_relation->relationData()[pos]; } diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 00688cbb33..63e61a3261 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -160,7 +160,7 @@ class SubMap /** * \brief Return the set element in the SuperMap at the given subset index */ - IndexType index(IndexType idx) const + AXOM_HOST_DEVICE IndexType index(IndexType idx) const { return m_indicesHaveIndirection ? m_superMap->set()->at(m_subsetIdx[idx]) : idx; From ea348902521f87b158b6d4efba599ece9c26148b Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 13:59:13 -0800 Subject: [PATCH 119/592] Map: revert storage by-value --- src/axom/slam/Map.hpp | 82 +++++++++++-------------------------------- 1 file changed, 21 insertions(+), 61 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index f2b3a8f4d9..3732cc6d58 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -472,47 +472,6 @@ class Map : public StrPol, DataType m_defaultValue = DataType(); }; -private: - /*! - * \class MapIteratorStorage - * - * \brief Helper class to handle storage for iterators. - * - * When the Map is backed by a mutable buffer (std::vector or axom::Array), - * access to the underlying Map is provided via a pointer. When the map is - * backed by a view-like object (axom::ArrayView), we just keep a copy of the - * Map by-value. - * - * This is necessary to allow BivariateMap to return subset iterators - * pointing to a temporary map. The original SubMap iterator would just keep - * the SubMap by-value. - */ - template - struct MapIteratorStorage; - - template - struct MapIteratorStorage - { - using MapConstType = std::conditional_t; - using MapRefType = std::conditional_t; - MapIteratorStorage(MapConstType pMap) : m_map(pMap) { } - - MapRefType map() const { return *m_map; } - - MapConstType m_map; - }; - - template - struct MapIteratorStorage - { - using MapConstType = std::conditional_t; - MapIteratorStorage(MapConstType pMap) : m_map(*pMap) { } - - const Map& map() const { return m_map; } - - Map m_map; - }; - public: /** * \class MapIterator @@ -520,9 +479,7 @@ class Map : public StrPol, * iterator to the element at the next flat index. */ template - class MapIterator - : public IteratorBase, SetPosition>, - MapIteratorStorage + class MapIterator : public IteratorBase, SetPosition> { public: using DataRefType = std::conditional_t; @@ -535,29 +492,28 @@ class Map : public StrPol, using difference_type = SetPosition; using IterBase = IteratorBase; - using MapStorage = - MapIteratorStorage; + using MapConstPtr = std::conditional_t; using iter = MapIterator; using PositionType = SetPosition; using IterBase::m_pos; public: - MapIterator(PositionType pos, Map* oMap) : IterBase(pos), MapStorage(oMap) + MapIterator(PositionType pos, MapConstPtr oMap) : IterBase(pos), m_map(oMap) { } /** * \brief Returns the current iterator value. */ - reference_type operator*() { return this->map()[m_pos]; } + reference_type operator*() { return (*m_map)[m_pos]; } /// \brief Returns the set element mapped by this iterator. SetElement index() const { - return this->map().index(this->m_pos / this->map().numComp()); + return m_map->index(this->m_pos / m_map->numComp()); } /// \brief Returns the component index pointed to by this iterator. - PositionType compIndex() const { return m_pos % this->map().numComp(); } + PositionType compIndex() const { return m_pos % m_map->numComp(); } /// \brief Returns the flat index pointed to by this iterator. SetPosition flatIndex() const { return this->m_pos; } @@ -565,6 +521,9 @@ class Map : public StrPol, protected: /** Implementation of advance() as required by IteratorBase */ void advance(PositionType n) { m_pos += n; } + + private: + MapConstPtr m_map; }; /** @@ -585,13 +544,11 @@ class Map : public StrPol, */ template class MapRangeIterator - : public IteratorBase, SetPosition>, - MapIteratorStorage + : public IteratorBase, SetPosition> { public: using IterBase = IteratorBase; - using MapStorage = - MapIteratorStorage; + using MapConstPtr = std::conditional_t; using DataRefType = std::conditional_t; using DataType = std::remove_reference_t; @@ -606,9 +563,9 @@ class Map : public StrPol, using difference_type = SetPosition; public: - MapRangeIterator(PositionType pos, Map* oMap) + MapRangeIterator(PositionType pos, MapConstPtr oMap) : IterBase(pos) - , MapStorage(oMap) + , m_map(oMap) { } /** @@ -616,8 +573,8 @@ class Map : public StrPol, */ value_type operator*() { - return value_type {this->map().data().data() + m_pos * this->map().stride(), - this->map().stride()}; + return value_type {m_map->data().data() + m_pos * m_map->stride(), + m_map->stride()}; } /** @@ -631,22 +588,25 @@ class Map : public StrPol, } DataRefType value(PositionType comp_idx) const { - return this->map()(m_pos, comp_idx); + return (*m_map)(m_pos, comp_idx); } value_type operator[](PositionType n) const { return *(*this + n); } /// \brief Returns the set element mapped by this iterator. - SetElement index() const { return this->map().index(this->m_pos); } + SetElement index() const { return m_map->index(this->m_pos); } /// \brief Returns the flat index pointed to by this iterator. SetPosition flatIndex() const { return this->m_pos; } /** \brief Returns the number of components per element in the Map. */ - PositionType numComp() const { return this->map().stride(); } + PositionType numComp() const { return m_map->stride(); } protected: /** Implementation of advance() as required by IteratorBase */ void advance(PositionType n) { m_pos += n; } + + private: + MapConstPtr m_map; }; public: // Functions related to iteration From 5fe4954a90ca08c2df0552835baa83abdbf21eb0 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 14:50:24 -0800 Subject: [PATCH 120/592] Map: modifications/improvements to support multidimensional indexing --- src/axom/slam/Map.hpp | 67 ++++++++++++++++++++++++++++++++++--------- 1 file changed, 53 insertions(+), 14 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 3732cc6d58..3c3d7f2216 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -554,41 +554,74 @@ class Map : public StrPol, using DataType = std::remove_reference_t; using PositionType = SetPosition; - using IterBase::m_pos; + constexpr static int Dims = StridePolicyType::NumDims; + // Type traits to satisfy LegacyRandomAccessIterator concept using iterator_category = std::random_access_iterator_tag; - using value_type = axom::ArrayView; - using reference_type = value_type&; - using pointer_type = value_type*; + using value_type = axom::ArrayView; + using reference = const value_type&; + using pointer = const value_type*; using difference_type = SetPosition; + private: + static StackArray fetchDims(int stride) + { + return {0, stride}; + } + static StackArray fetchDims( + const StackArray stride) + { + StackArray dims; + for(int idim = 0; idim < Dims; idim++) + { + dims[idim + 1] = stride[idim]; + } + return dims; + } + public: MapRangeIterator(PositionType pos, MapConstPtr oMap) : IterBase(pos) , m_map(oMap) - { } + { + StackArray dataDims = fetchDims(oMap->shape()); + dataDims[0] = m_map->size(); + m_mapData = + axom::ArrayView(m_map->data().data(), dataDims); + m_currRange = m_mapData[pos]; + } /** * \brief Returns the current iterator value. */ - value_type operator*() - { - return value_type {m_map->data().data() + m_pos * m_map->stride(), - m_map->stride()}; - } + reference operator*() const { return m_currRange; } + + pointer operator->() const { return &m_currRange; } /** * \brief Returns the iterator's value at the specified component. * Returns the first component if comp_idx is not specified. * \param comp_idx Zero-based index of the component. */ - DataRefType operator()(SetPosition comp_idx) const + template + DataRefType operator()(ComponentIndex... comp_idx) const { - return value(comp_idx); + return value(comp_idx...); } DataRefType value(PositionType comp_idx) const { - return (*m_map)(m_pos, comp_idx); + static_assert(Dims == 1, + "Map::RangeIterator::value(): incorrect number of indexes " + "for the component dimensionality."); + return m_currRange[comp_idx]; + } + template + DataRefType value(ComponentIndex... comp_idx) const + { + static_assert(sizeof...(ComponentIndex) == Dims, + "Map::RangeIterator::value(): incorrect number of indexes " + "for the component dimensionality."); + return m_currRange(comp_idx...); } value_type operator[](PositionType n) const { return *(*this + n); } @@ -603,10 +636,16 @@ class Map : public StrPol, protected: /** Implementation of advance() as required by IteratorBase */ - void advance(PositionType n) { m_pos += n; } + void advance(PositionType n) + { + this->m_pos += n; + m_currRange = m_mapData[this->m_pos]; + } private: MapConstPtr m_map; + axom::ArrayView m_mapData; + value_type m_currRange; }; public: // Functions related to iteration From 9e7e8a85d684567c7412de06084a0e928a4358c7 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 14:50:43 -0800 Subject: [PATCH 121/592] Map: add tests for range iteration on multi-dim map --- src/axom/slam/tests/slam_map_Map.cpp | 44 ++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index b893d59708..4522556f43 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -673,6 +673,26 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest2DStride) } } } + + SLIC_INFO("\nChecking iteration through range iterator."); + for(auto it = m.set_begin(); it != m.set_end(); ++it) + { + int setIdx = it.flatIndex(); + EXPECT_EQ(m.index(setIdx), it.index()); + EXPECT_EQ(it->shape(), shape); + EXPECT_EQ(it->size(), it.numComp()); + EXPECT_EQ(m.set_begin() + setIdx, it); + for(int i = 0; i < shape[0]; i++) + { + for(int j = 0; j < shape[1]; j++) + { + double expectedValue = setIdx * multFac + i * multFac2 + j * multFac3; + EXPECT_EQ(expectedValue, (*it)(i, j)); + EXPECT_EQ(expectedValue, it(i, j)); + EXPECT_EQ(expectedValue, it.value(i, j)); + } + } + } } //---------------------------------------------------------------------- AXOM_TYPED_TEST(slam_map_templated, constructAndTest3DStride) @@ -733,6 +753,30 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest3DStride) } } } + + SLIC_INFO("\nChecking iteration through range iterator."); + for(auto it = m.set_begin(); it != m.set_end(); ++it) + { + int setIdx = it.flatIndex(); + EXPECT_EQ(m.index(setIdx), it.index()); + EXPECT_EQ(it->shape(), shape); + EXPECT_EQ(it->size(), it.numComp()); + EXPECT_EQ(m.set_begin() + setIdx, it); + for(int i = 0; i < shape[0]; i++) + { + for(int j = 0; j < shape[1]; j++) + { + for(int k = 0; k < shape[2]; k++) + { + double expectedValue = + setIdx * multFac + i * multFac2 + j * multFac3 + k * multFac4; + EXPECT_EQ(expectedValue, (*it)(i, j, k)); + EXPECT_EQ(expectedValue, it(i, j, k)); + EXPECT_EQ(expectedValue, it.value(i, j, k)); + } + } + } + } } } // namespace testing From 34c1f62fb40bd07ef9e245dd4c8cbb4c6b64f0ff Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 15:52:08 -0800 Subject: [PATCH 122/592] ArrayView: fix construction from ArraySubslices --- src/axom/core/ArrayView.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/axom/core/ArrayView.hpp b/src/axom/core/ArrayView.hpp index b98790bf20..42de1352ed 100644 --- a/src/axom/core/ArrayView.hpp +++ b/src/axom/core/ArrayView.hpp @@ -371,7 +371,7 @@ ArrayView::ArrayView( , m_allocator_id(static_cast(other).getAllocatorID()) { static_assert( - std::is_const::value, + std::is_const::value || detail::ArrayTraits::is_view, "Cannot create an ArrayView of non-const type from a const Array"); #ifdef AXOM_DEBUG // If it's not dynamic, the allocator ID from the argument array has to match the template param. From cf634fdba816f3efdbf19e8edec7fbd479fcd9fa Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 15:52:53 -0800 Subject: [PATCH 123/592] BivariateMap: add support for multi-dim range iteration --- src/axom/slam/BivariateMap.hpp | 23 ++++++++++++++++++++--- 1 file changed, 20 insertions(+), 3 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 215fdd1258..8019315a16 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -713,6 +713,8 @@ class BivariateMap::RangeIterator using iterator_category = std::forward_iterator_tag; using value_type = typename MapIterator::value_type; + using reference = typename MapIterator::reference; + using pointer = typename MapIterator::pointer; using difference_type = SetPosition; public: @@ -761,14 +763,20 @@ class BivariateMap::RangeIterator * multiple components, this will return the first component. * To access the other components, use iter(comp) */ - value_type operator*() { return *m_mapIterator; } + reference operator*() { return *m_mapIterator; } + + pointer operator->() { return m_mapIterator.operator->(); } /** * \brief Returns the iterator's value at the specified component. * Returns the first component if comp_idx is not specified. * \param comp_idx (Optional) Zero-based index of the component. */ - DataRefType operator()(PositionType comp_idx = 0) { return value(comp_idx); } + template + DataRefType operator()(ComponentIndex... comp_idx) + { + return value(comp_idx...); + } /** \brief Returns the first component value after n increments. */ DataRefType operator[](PositionType n) { return *(this->operator+(n)); } @@ -776,7 +784,11 @@ class BivariateMap::RangeIterator /** * \brief Return the value at the iterator's position. Same as operator() */ - DataRefType value(PositionType comp = 0) { return m_mapIterator(comp); } + template + DataRefType value(ComponentIndex... comp) + { + return m_mapIterator(comp...); + } /** * \brief return the current iterator's first index into the BivariateSet @@ -789,6 +801,11 @@ class BivariateMap::RangeIterator */ PositionType secondIndex() const { return m_bsetIterator.secondIndex(); } + /** + * \brief Return the current iterator's flat bivariate index. + */ + PositionType flatIndex() const { return m_mapIterator.flatIndex(); } + /** \brief Returns the number of components per element in the map. */ PositionType numComp() const { return m_map->numComp(); } From 99f37b10f90fe459d403435798da06a4919f08f4 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 15:53:15 -0800 Subject: [PATCH 124/592] BivariateMap: add tests for range iteration over multi-dim map --- src/axom/slam/tests/slam_map_BivariateMap.cpp | 48 +++++++++++++++++++ 1 file changed, 48 insertions(+) diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index f6e985a6c6..79e7347b25 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -866,6 +866,30 @@ void slam_bivariate_map_templated::initializeAndTestCartesianMap } } } + + SLIC_INFO("\nChecking the elements with BivariateMap range iterator."); + for(auto it = m.set_begin(); it != m.set_end(); ++it) + { + int idx1 = it.firstIndex(); + int idx2 = it.secondIndex(); + int flatIdx = it.flatIndex(); + + EXPECT_EQ(idx1, m.set()->flatToFirstIndex(flatIdx)); + EXPECT_EQ(idx2, m.set()->flatToSecondIndex(flatIdx)); + EXPECT_EQ(it.numComp(), m.stride()); + + for(int i = 0; i < shape[0]; i++) + for(int j = 0; j < shape[1]; j++) + for(int k = 0; k < shape[2]; k++) + { + int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; + double expected_value = getVal(idx1, idx2, flatCompIdx); + + EXPECT_EQ(expected_value, (*it)(i, j, k)); + EXPECT_EQ(expected_value, it(i, j, k)); + EXPECT_EQ(expected_value, it.value(i, j, k)); + } + } } //---------------------------------------------------------------------- @@ -1095,6 +1119,30 @@ void slam_bivariate_map_templated::initializeAndTestRelationMap( } } } + + SLIC_INFO("\nChecking the elements with BivariateMap range iterator."); + for(auto it = m.set_begin(); it != m.set_end(); ++it) + { + int idx1 = it.firstIndex(); + int idx2 = it.secondIndex(); + int flatIdx = it.flatIndex(); + + EXPECT_EQ(idx1, m.set()->flatToFirstIndex(flatIdx)); + EXPECT_EQ(idx2, m.set()->flatToSecondIndex(flatIdx)); + EXPECT_EQ(it.numComp(), m.stride()); + + for(int i = 0; i < shape[0]; i++) + for(int j = 0; j < shape[1]; j++) + for(int k = 0; k < shape[2]; k++) + { + int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; + double expected_value = getVal(idx1, idx2, flatCompIdx); + + EXPECT_EQ(expected_value, (*it)(i, j, k)); + EXPECT_EQ(expected_value, it(i, j, k)); + EXPECT_EQ(expected_value, it.value(i, j, k)); + } + } } //---------------------------------------------------------------------- From ddf4ca2e18d788847b44cd642cc2deecc9e48e19 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 17:05:25 -0800 Subject: [PATCH 125/592] ProductSet: make iterator type public --- src/axom/slam/ProductSet.hpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 818463d7e8..73b40faf61 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -55,6 +55,9 @@ class ProductSet final using ElementType = typename BaseType::ElementType; using ProductSetType = ProductSet; + struct Iterator; + using IteratorType = Iterator; + private: template struct RowSet @@ -94,9 +97,6 @@ class ProductSet final Type get(PositionType secondSetSize) const { return Type(secondSetSize); } }; - struct Iterator; - using IteratorType = Iterator; - public: using ConcreteSet = ProductSet; using VirtualSet = ProductSet; From 5848d736deef076f4b219bdce586381a1152725c Mon Sep 17 00:00:00 2001 From: Max Yang Date: Fri, 26 Jan 2024 17:47:37 -0800 Subject: [PATCH 126/592] Remove errant assert --- src/axom/multimat/examples/traversal.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/src/axom/multimat/examples/traversal.cpp b/src/axom/multimat/examples/traversal.cpp index 419eac3795..cf6de1b02b 100644 --- a/src/axom/multimat/examples/traversal.cpp +++ b/src/axom/multimat/examples/traversal.cpp @@ -387,7 +387,6 @@ void various_traversal_methods(int nmats, SLIC_ASSERT(val == iter.value(comp)); //another way to get the value sum += val; } - SLIC_ASSERT(iter(0) == iter.value()); } } timer.stop(); From 864f2db207e319a6a826a61657298941149c2270 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 11:16:47 -0800 Subject: [PATCH 127/592] Map/BivariateMap: use fuzzy comparisons in more tests --- src/axom/slam/tests/slam_map_BivariateMap.cpp | 16 ++++++++-------- src/axom/slam/tests/slam_map_Map.cpp | 18 +++++++++--------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index 79e7347b25..3f020f4907 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -885,9 +885,9 @@ void slam_bivariate_map_templated::initializeAndTestCartesianMap int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; double expected_value = getVal(idx1, idx2, flatCompIdx); - EXPECT_EQ(expected_value, (*it)(i, j, k)); - EXPECT_EQ(expected_value, it(i, j, k)); - EXPECT_EQ(expected_value, it.value(i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, (*it)(i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, it(i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, it.value(i, j, k)); } } } @@ -1105,8 +1105,8 @@ void slam_bivariate_map_templated::initializeAndTestRelationMap( { // Test set-based indexing: (idx1, idx2) EXPECT_NE(valuePtr, nullptr); - EXPECT_EQ(expected_value, *valuePtr); - EXPECT_EQ(expected_value, m(idx1, idx2, i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, *valuePtr); + EXPECT_DOUBLE_EQ(expected_value, m(idx1, idx2, i, j, k)); } else { @@ -1138,9 +1138,9 @@ void slam_bivariate_map_templated::initializeAndTestRelationMap( int flatCompIdx = i * strides[0] + j * strides[1] + k * strides[2]; double expected_value = getVal(idx1, idx2, flatCompIdx); - EXPECT_EQ(expected_value, (*it)(i, j, k)); - EXPECT_EQ(expected_value, it(i, j, k)); - EXPECT_EQ(expected_value, it.value(i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, (*it)(i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, it(i, j, k)); + EXPECT_DOUBLE_EQ(expected_value, it.value(i, j, k)); } } } diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index 4522556f43..ef34e470e9 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -687,9 +687,9 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest2DStride) for(int j = 0; j < shape[1]; j++) { double expectedValue = setIdx * multFac + i * multFac2 + j * multFac3; - EXPECT_EQ(expectedValue, (*it)(i, j)); - EXPECT_EQ(expectedValue, it(i, j)); - EXPECT_EQ(expectedValue, it.value(i, j)); + EXPECT_DOUBLE_EQ(expectedValue, (*it)(i, j)); + EXPECT_DOUBLE_EQ(expectedValue, it(i, j)); + EXPECT_DOUBLE_EQ(expectedValue, it.value(i, j)); } } } @@ -744,11 +744,11 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest3DStride) { double expectedValue = setIdx * multFac + i * multFac2 + j * multFac3 + k * multFac4; - EXPECT_EQ(m(setIdx, i, j, k), expectedValue); - EXPECT_EQ(m.value(setIdx, i, j, k), expectedValue); + EXPECT_DOUBLE_EQ(m(setIdx, i, j, k), expectedValue); + EXPECT_DOUBLE_EQ(m.value(setIdx, i, j, k), expectedValue); int flatIndex = i * strides[0] + j * strides[1] + k * strides[2]; - EXPECT_EQ(m[setIdx * stride + flatIndex], expectedValue); + EXPECT_DOUBLE_EQ(m[setIdx * stride + flatIndex], expectedValue); } } } @@ -770,9 +770,9 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest3DStride) { double expectedValue = setIdx * multFac + i * multFac2 + j * multFac3 + k * multFac4; - EXPECT_EQ(expectedValue, (*it)(i, j, k)); - EXPECT_EQ(expectedValue, it(i, j, k)); - EXPECT_EQ(expectedValue, it.value(i, j, k)); + EXPECT_DOUBLE_EQ(expectedValue, (*it)(i, j, k)); + EXPECT_DOUBLE_EQ(expectedValue, it(i, j, k)); + EXPECT_DOUBLE_EQ(expectedValue, it.value(i, j, k)); } } } From 72ac4799bdeccbaa2887e287d08a247a7520c98b Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 11:35:42 -0800 Subject: [PATCH 128/592] Slam: fixes for 64-bit index type --- src/axom/slam/Map.hpp | 15 ++++++++++----- src/axom/slam/SubMap.hpp | 10 ++++++++-- src/axom/slam/policies/StridePolicies.hpp | 3 +++ src/axom/slam/tests/slam_map_Map.cpp | 14 +++++++------- 4 files changed, 28 insertions(+), 14 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 3c3d7f2216..d2d2d54f7f 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -554,6 +554,7 @@ class Map : public StrPol, using DataType = std::remove_reference_t; using PositionType = SetPosition; + using StrideIndexType = typename StridePolicyType::IndexType; constexpr static int Dims = StridePolicyType::NumDims; // Type traits to satisfy LegacyRandomAccessIterator concept @@ -564,12 +565,12 @@ class Map : public StrPol, using difference_type = SetPosition; private: - static StackArray fetchDims(int stride) + static StackArray fetchDims(StrideIndexType stride) { return {0, stride}; } static StackArray fetchDims( - const StackArray stride) + const StackArray stride) { StackArray dims; for(int idim = 0; idim < Dims; idim++) @@ -608,7 +609,8 @@ class Map : public StrPol, { return value(comp_idx...); } - DataRefType value(PositionType comp_idx) const + template + DataRefType value(ComponentIndex comp_idx) const { static_assert(Dims == 1, "Map::RangeIterator::value(): incorrect number of indexes " @@ -699,8 +701,9 @@ class Map : public StrPol, << idx << " but map's data has size " << m_data.size()); } + template inline void verifyPositionImpl(SetPosition AXOM_DEBUG_PARAM(setIdx), - SetPosition AXOM_DEBUG_PARAM(compIdx)) const + ComponentIndex AXOM_DEBUG_PARAM(compIdx)) const { SLIC_ASSERT_MSG( setIdx >= 0 && setIdx < size() && compIdx >= 0 && compIdx < numComp(), @@ -733,7 +736,9 @@ class Map : public StrPol, #endif } - AXOM_HOST_DEVICE inline SetPosition componentOffset(SetPosition componentIndex) const + template + AXOM_HOST_DEVICE inline SetPosition componentOffset( + ComponentIndex componentIndex) const { return componentIndex; } diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 63e61a3261..68d126e5f8 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -232,8 +232,9 @@ class SubMap } /** Checks the ElementFlatIndex and the component index is valid */ + template void verifyPositionImpl(SetPosition AXOM_DEBUG_PARAM(idx), - SetPosition AXOM_DEBUG_PARAM(comp)) const + ComponentIndex AXOM_DEBUG_PARAM(comp)) const { SLIC_ASSERT_MSG( idx >= 0 && idx < m_subsetIdx.size() && comp >= 0 && comp < numComp(), @@ -270,8 +271,13 @@ class SubMap /*! * \brief Computes the flat indexing offset for a given component. */ + AXOM_HOST_DEVICE inline SetPosition componentOffset() const + { + return SetPosition {}; + } + template AXOM_HOST_DEVICE inline SetPosition componentOffset( - SetPosition componentIndex = 0) const + ComponentIndex componentIndex) const { return componentIndex; } diff --git a/src/axom/slam/policies/StridePolicies.hpp b/src/axom/slam/policies/StridePolicies.hpp index a939d11071..e8b519dbc1 100644 --- a/src/axom/slam/policies/StridePolicies.hpp +++ b/src/axom/slam/policies/StridePolicies.hpp @@ -53,6 +53,7 @@ struct RuntimeStride static const bool IS_COMPILE_TIME = false; constexpr static int NumDims = 1; + using IndexType = IntType; using ShapeType = IntType; static constexpr IntType DefaultSize() { return DEFAULT_VALUE; } @@ -89,6 +90,7 @@ struct CompileTimeStride static const bool IS_COMPILE_TIME = true; constexpr static int NumDims = 1; + using IndexType = IntType; using ShapeType = IntType; static constexpr IntType DefaultSize() { return DEFAULT_VALUE; } @@ -128,6 +130,7 @@ using StrideOne = CompileTimeStride; template struct MultiDimStride { + using IndexType = IntType; using ShapeType = StackArray; constexpr static int NumDims = Dims; diff --git a/src/axom/slam/tests/slam_map_Map.cpp b/src/axom/slam/tests/slam_map_Map.cpp index ef34e470e9..dc13e4d933 100644 --- a/src/axom/slam/tests/slam_map_Map.cpp +++ b/src/axom/slam/tests/slam_map_Map.cpp @@ -457,14 +457,14 @@ class slam_map_templated : public ::testing::Test using RealData = axom::Array; using IndirectionPolicy = slam::policies::ArrayViewIndirection; - using StridePolicy = slam::policies::RuntimeStride; + using StridePolicy = slam::policies::RuntimeStride; using InterfacePolicy = slam::policies::ConcreteInterface; using RealMap = slam::Map; template - using MDStridePolicy = slam::policies::MultiDimStride; + using MDStridePolicy = slam::policies::MultiDimStride; template using MultiDimMap = @@ -493,7 +493,7 @@ class slam_map_templated : public ::testing::Test } template - void initializeWithMultiDimStride(axom::StackArray shape) + void initializeWithMultiDimStride(axom::StackArray shape) { // Create associated set. m_set = ConcreteSetType(MAX_SET_SIZE); @@ -629,8 +629,8 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest2DStride) using ExecSpace = typename TestFixture::ExecSpace; using MapType = typename TestFixture::template MultiDimMap<2>; - const axom::StackArray shape = {3, 5}; - const axom::StackArray strides = {5, 1}; + const axom::StackArray shape = {3, 5}; + const axom::StackArray strides = {5, 1}; int stride = 3 * 5; this->initializeWithMultiDimStride(shape); @@ -700,8 +700,8 @@ AXOM_TYPED_TEST(slam_map_templated, constructAndTest3DStride) using ExecSpace = typename TestFixture::ExecSpace; using MapType = typename TestFixture::template MultiDimMap<3>; - const axom::StackArray shape = {2, 3, 4}; - const axom::StackArray strides = {12, 4, 1}; + const axom::StackArray shape = {2, 3, 4}; + const axom::StackArray strides = {12, 4, 1}; int stride = 2 * 3 * 4; this->initializeWithMultiDimStride(shape); From ccff830cc4066c291be03559d0abc82fbbb93acf Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 11:37:47 -0800 Subject: [PATCH 129/592] Map/SubMap: add some static_asserts --- src/axom/slam/Map.hpp | 12 ++++++++++++ src/axom/slam/SubMap.hpp | 3 +++ 2 files changed, 15 insertions(+) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index d2d2d54f7f..acc6692b73 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -331,6 +331,9 @@ class Map : public StrPol, static_assert( sizeof...(ComponentPos) == StridePolicyType::NumDims, "Invalid number of components provided for given Map's StridePolicy"); + static_assert( + axom::detail::all_types_are_integral::value, + "Map::value(...): index parameter pack must all be integral types."); #ifndef AXOM_DEVICE_CODE verifyPositionImpl(setIdx, compIdx...); #endif @@ -346,6 +349,9 @@ class Map : public StrPol, static_assert( sizeof...(ComponentPos) == StridePolicyType::NumDims, "Invalid number of components provided for given Map's StridePolicy"); + static_assert( + axom::detail::all_types_are_integral::value, + "Map::value(...): index parameter pack must all be integral types."); #ifndef AXOM_DEVICE_CODE verifyPositionImpl(setIdx, compIdx...); #endif @@ -615,6 +621,9 @@ class Map : public StrPol, static_assert(Dims == 1, "Map::RangeIterator::value(): incorrect number of indexes " "for the component dimensionality."); + static_assert(std::is_integral::value, + "Map::RangeIterator::value(): index must be an integral " + "type."); return m_currRange[comp_idx]; } template @@ -623,6 +632,9 @@ class Map : public StrPol, static_assert(sizeof...(ComponentIndex) == Dims, "Map::RangeIterator::value(): incorrect number of indexes " "for the component dimensionality."); + static_assert(axom::detail::all_types_are_integral::value, + "Map::RangeIterator::value(...): index parameter pack must " + "all be integral types."); return m_currRange(comp_idx...); } value_type operator[](PositionType n) const { return *(*this + n); } diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 68d126e5f8..9c7f3991e5 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -136,6 +136,9 @@ class SubMap AXOM_HOST_DEVICE DataRefType operator()(IndexType idx, ComponentIndex... comp) const { + static_assert( + axom::detail::all_types_are_integral::value, + "SubMap::operator(): index parameter pack must all be integral types."); #ifndef AXOM_DEVICE_CODE verifyPositionImpl(idx, comp...); #endif From c6865871a98e45556b89b353af577d745ff379cf Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:09:59 -0800 Subject: [PATCH 130/592] BivariateSet: make iterators random-access --- src/axom/slam/BivariateSet.hpp | 70 +++++++--------------------------- src/axom/slam/ProductSet.hpp | 57 ++------------------------- 2 files changed, 16 insertions(+), 111 deletions(-) diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index 81de3ad4b8..e89f196d9f 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -301,8 +301,12 @@ bool BivariateSet::isValid(bool verboseOutput) const */ template struct BivariateSetIterator + : public IteratorBase, + typename BivariateSetType::PositionType> { public: + using BaseType = + IteratorBase, IndexType>; using IndexType = typename BivariateSetType::PositionType; using difference_type = IndexType; using value_type = std::pair; @@ -311,55 +315,18 @@ struct BivariateSetIterator using iterator_category = std::forward_iterator_tag; BivariateSetIterator(const BivariateSetType* bset, IndexType flatPos = 0) - : m_bset(bset) - { - if(flatPos >= m_bset->size()) - { - m_firstIndex = m_bset->firstSetSize(); - m_firstOffset = m_bset->size(); - m_secondOffset = 0; - } - else - { - m_firstIndex = m_bset->flatToFirstIndex(flatPos); - m_firstOffset = m_bset->findElementFlatIndex(m_firstIndex); - m_secondOffset = flatPos - m_firstOffset; - } - } - - friend bool operator==(const BivariateSetIterator& lhs, - const BivariateSetIterator& rhs) - { - return lhs.flatIndex() == rhs.flatIndex(); - } - - friend bool operator!=(const BivariateSetIterator& lhs, - const BivariateSetIterator& rhs) - { - return lhs.flatIndex() != rhs.flatIndex(); - } - - BivariateSetIterator& operator++() - { - this->moveForward(); - return *this; - } - - BivariateSetIterator operator++(int) - { - BivariateSetIterator next = *this; - ++(*this); - return next; - } + : BaseType(flatPos) + , m_bset(bset) + { } std::pair operator*() const { // Going from flat-to-second index is always free for a StaticRelation. - return {m_firstIndex, m_bset->flatToSecondIndex(flatIndex())}; + return {firstIndex(), secondIndex()}; } /// \brief Return the first set index pointed to by this iterator. - IndexType firstIndex() const { return m_firstIndex; } + IndexType firstIndex() const { return m_bset->flatToFirstIndex(flatIndex()); } /// \brief Return the second set index pointed to by this iterator. IndexType secondIndex() const @@ -368,24 +335,13 @@ struct BivariateSetIterator } /// \brief Return the flat iteration index of this iterator. - IndexType flatIndex() const { return m_firstOffset + m_secondOffset; } + IndexType flatIndex() const { return this->m_pos; } -private: - void moveForward() - { - m_secondOffset++; - if(m_secondOffset == m_bset->size(m_firstIndex)) - { - m_firstOffset += m_bset->size(m_firstIndex); - m_firstIndex++; - m_secondOffset = 0; - } - } +protected: + void advance(IndexType n) { this->m_pos += n; } +private: const BivariateSetType* m_bset; - IndexType m_firstOffset; - IndexType m_firstIndex; - IndexType m_secondOffset; }; /** diff --git a/src/axom/slam/ProductSet.hpp b/src/axom/slam/ProductSet.hpp index 73b40faf61..35895d5a45 100644 --- a/src/axom/slam/ProductSet.hpp +++ b/src/axom/slam/ProductSet.hpp @@ -55,8 +55,7 @@ class ProductSet final using ElementType = typename BaseType::ElementType; using ProductSetType = ProductSet; - struct Iterator; - using IteratorType = Iterator; + using IteratorType = BivariateSetIterator; private: template @@ -243,13 +242,13 @@ class ProductSet final * \brief Return an iterator to the first pair of set elements in the * relation. */ - Iterator begin() const { return Iterator(this, 0); } + IteratorType begin() const { return IteratorType(this, 0); } /*! * \brief Return an iterator to one past the last pair of set elements in the * relation. */ - Iterator end() const { return Iterator(this, size()); } + IteratorType end() const { return IteratorType(this, size()); } AXOM_HOST_DEVICE RangeSetType elementRangeSet(PositionType pos1) const { @@ -308,56 +307,6 @@ class ProductSet final RowSet m_rowSet; }; -/*! - * \brief Iterator class for a ProductSet. - */ -template -struct ProductSet::Iterator - : public IteratorBase -{ -private: - using ProductSetType = ProductSet; - using BaseType = IteratorBase; - -public: - using SetIndex = typename ProductSetType::PositionType; - - using difference_type = SetIndex; - using value_type = std::pair; - using reference = value_type&; - using pointer = value_type*; - using iterator_category = std::random_access_iterator_tag; - - Iterator(const ProductSetType* bset, SetIndex pos = 0) - : BaseType(pos) - , m_bset(bset) - { } - - std::pair operator*() const - { - return {m_bset->flatToFirstIndex(this->m_pos), - m_bset->flatToSecondIndex(this->m_pos)}; - } - - /// \brief Return the first set index pointed to by this iterator. - SetIndex firstIndex() const { return m_bset->flatToFirstIndex(this->m_pos); } - - /// \brief Return the second set index pointed to by this iterator. - SetIndex secondIndex() const - { - return m_bset->flatToSecondIndex(this->m_pos); - } - - /// \brief Return the flat iteration index of this iterator. - SetIndex flatIndex() const { return this->m_pos; } - -protected: - void advance(IndexType n) { this->m_pos += n; } - -private: - const ProductSetType* m_bset; -}; - } // end namespace slam } // end namespace axom From 65913564b1cec64a52deed5be638b20e9c497d02 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:11:15 -0800 Subject: [PATCH 131/592] BivariateMap: make iterator random-access --- src/axom/slam/BivariateMap.hpp | 102 +++++++++++++-------------------- 1 file changed, 40 insertions(+), 62 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 8019315a16..2094071c2e 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -612,10 +612,14 @@ typename BivariateMap::NullBivariateSetType c template template class BivariateMap::FlatIterator + : public IteratorBase, SetPosition> { private: - using iterator_category = std::forward_iterator_tag; + using IterBase = IteratorBase, SetPosition>; + using iterator_category = std::random_access_iterator_tag; using value_type = DataType; + using reference = DataType&; + using pointer = DataType*; using difference_type = SetPosition; using iter = FlatIterator; @@ -633,42 +637,17 @@ class BivariateMap::FlatIterator * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex */ FlatIterator(BivariateMapPtr sMap, PositionType pos) - : m_map(sMap) + : IterBase(pos) + , m_map(sMap) , m_bsetIterator(m_map->set(), pos / m_map->numComp()) - , m_compIndex(pos % m_map->numComp()) { } - FlatIterator& operator++() - { - m_compIndex++; - if(m_compIndex == m_map->numComp()) - { - m_bsetIterator++; - m_compIndex = 0; - } - return *this; - } - - FlatIterator operator++(int) - { - FlatIterator next = *this; - ++(*this); - return next; - } - - bool operator==(const iter& other) const - { - return (m_map == other.m_map) && (m_bsetIterator == other.m_bsetIterator) && - (m_compIndex == other.m_compIndex); - } - bool operator!=(const iter& other) const { return !operator==(other); } - /** * \brief Returns the current map element pointed to by the iterator. */ DataRefType operator*() { - return m_map->flatValue(m_bsetIterator.flatIndex(), m_compIndex); + return m_map->flatValue(m_bsetIterator.flatIndex(), compIndex()); } /** @@ -683,15 +662,24 @@ class BivariateMap::FlatIterator PositionType secondIndex() const { return m_bsetIterator.secondIndex(); } /// \brief return the current iterator's component index - PositionType compIndex() const { return m_compIndex; } + PositionType compIndex() const { return this->m_pos % numComp(); } /** \brief Returns the number of components per element in the map. */ PositionType numComp() const { return m_map->numComp(); } +protected: + void advance(IndexType n) + { + this->m_pos += n; + // Advance associated bset iterator. + auto oldBsetIndex = m_bsetIterator.flatIndex(); + auto newBsetIndex = this->m_pos / numComp(); + m_bsetIterator += (newBsetIndex - oldBsetIndex); + } + private: BivariateMapPtr m_map; typename BivariateSetType::IteratorType m_bsetIterator; - IndexType m_compIndex; }; /** @@ -707,11 +695,14 @@ class BivariateMap::FlatIterator template template class BivariateMap::RangeIterator + : public IteratorBase, SetPosition> { -private: +public: + using IterBase = IteratorBase, SetPosition>; + using MapIterator = typename MapType::template MapRangeIterator; - using iterator_category = std::forward_iterator_tag; + using iterator_category = std::random_access_iterator_tag; using value_type = typename MapIterator::value_type; using reference = typename MapIterator::reference; using pointer = typename MapIterator::pointer; @@ -730,42 +721,20 @@ class BivariateMap::RangeIterator * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex */ RangeIterator(BivariateMapPtr sMap, PositionType pos) - : m_map(sMap) + : IterBase(pos) + , m_map(sMap) , m_mapIterator(m_map->getMap()->set_begin() + pos) , m_bsetIterator(m_map->set(), pos) { } - RangeIterator& operator++() - { - m_bsetIterator++; - m_mapIterator++; - return *this; - } - - RangeIterator operator++(int) - { - RangeIterator next = *this; - ++(*this); - return next; - } - - bool operator==(const RangeIterator& other) const - { - return (m_map == other.m_map) && (m_bsetIterator == other.m_bsetIterator); - } - bool operator!=(const RangeIterator& other) const - { - return !operator==(other); - } - /** * \brief Returns the current iterator value. If the BivariateMap has * multiple components, this will return the first component. * To access the other components, use iter(comp) */ - reference operator*() { return *m_mapIterator; } + reference operator*() const { return *m_mapIterator; } - pointer operator->() { return m_mapIterator.operator->(); } + pointer operator->() const { return m_mapIterator.operator->(); } /** * \brief Returns the iterator's value at the specified component. @@ -773,19 +742,19 @@ class BivariateMap::RangeIterator * \param comp_idx (Optional) Zero-based index of the component. */ template - DataRefType operator()(ComponentIndex... comp_idx) + DataRefType operator()(ComponentIndex... comp_idx) const { return value(comp_idx...); } /** \brief Returns the first component value after n increments. */ - DataRefType operator[](PositionType n) { return *(this->operator+(n)); } + DataRefType operator[](PositionType n) const { return *(this->operator+(n)); } /** * \brief Return the value at the iterator's position. Same as operator() */ template - DataRefType value(ComponentIndex... comp) + DataRefType value(ComponentIndex... comp) const { return m_mapIterator(comp...); } @@ -809,6 +778,15 @@ class BivariateMap::RangeIterator /** \brief Returns the number of components per element in the map. */ PositionType numComp() const { return m_map->numComp(); } +protected: + void advance(IndexType n) + { + this->m_pos += n; + // Advance associated bset iterator. + m_bsetIterator += n; + m_mapIterator += n; + } + private: BivariateMapPtr m_map; typename MapType::template MapRangeIterator m_mapIterator; From ae6e794764e9b3e4bc10d01f06ae5b1372d87ce3 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 13:35:17 -0800 Subject: [PATCH 132/592] SubMap: make begin()/end() return flat iterators --- src/axom/slam/SubMap.hpp | 118 +++++++++--------- src/axom/slam/tests/slam_map_BivariateMap.cpp | 14 ++- src/axom/slam/tests/slam_map_SubMap.cpp | 9 +- 3 files changed, 69 insertions(+), 72 deletions(-) diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 9c7f3991e5..e2e7956809 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -77,8 +77,9 @@ class SubMap using SubsetBuilder = typename SubsetType::SetBuilder; //iterator type aliases - class SubMapIterator; - using iterator = SubMapIterator; + class Iterator; + using iterator = Iterator; + using const_iterator = Iterator; using iterator_pair = std::pair; using ValueType = typename IndirectionPolicyType::IndirectionResult; @@ -299,69 +300,11 @@ class SubMap return offset; } -public: - /** - * \class SubMapIterator - * \brief An iterator for SubMap, based on MapIterator - * - * \see MapIterator - */ - class SubMapIterator : public IteratorBase - { - public: - using iterator_category = std::random_access_iterator_tag; - using value_type = DataType; - using difference_type = SetPosition; - - using IterBase = IteratorBase; - using IterBase::m_pos; - using iter = SubMapIterator; - using PositionType = SetPosition; - - AXOM_HOST_DEVICE SubMapIterator(PositionType pos, SubMap sMap) - : IterBase(pos) - , m_submap(sMap) - { } - - /** - * \brief Returns the current iterator value. If the SubMap has multiple - * components, this will return the first component. To access - * the other components, use iter(comp) - */ - AXOM_HOST_DEVICE DataRefType operator*() { return m_submap(m_pos, 0); } - - /** - * \brief Returns the iterator's value at the specified component. - * Returns the first component if comp_idx is not specified. - * \param comp_idx (Optional) Zero-based index of the component. - */ - DataRefType operator()(IndexType comp = 0) { return m_submap(m_pos, comp); } - - /** \brief Returns the first component value after n increments. */ - DataRefType operator[](PositionType n) { return *(*this + n); } - - /** \brief Same as operator() */ - DataRefType value(IndexType comp = 0) { return m_submap(m_pos, comp); } - - /** \brief Returns the Set element at the iterator's position */ - IndexType index() { return m_submap.index(m_pos); } - - /** \brief Returns the number of component per element in the SubMap. */ - PositionType numComp() const { return m_submap.numComp(); } - - protected: - /* Implementation of advance() as required by IteratorBase */ - AXOM_HOST_DEVICE void advance(PositionType pos) { m_pos += pos; } - - private: - SubMap m_submap; - }; - public: // Functions related to iteration AXOM_HOST_DEVICE iterator begin() const { return iterator(0, *this); } AXOM_HOST_DEVICE iterator end() const { - return iterator(m_subsetIdx.size(), *this); + return iterator(m_subsetIdx.size() * numComp(), *this); } protected: //Member variables @@ -418,6 +361,59 @@ bool SubMap::isValid(bool verboseOutput) return isValid; } +/** + * \class SubMap::Iterator + * \brief An iterator for SubMap, based on MapIterator + * + * \see MapIterator + */ +template +class SubMap::Iterator + : public IteratorBase +{ +public: + using iterator_category = std::random_access_iterator_tag; + using value_type = DataType; + using reference = DataRefType; + using pointer = DataType*; + using difference_type = SetPosition; + + using IterBase = IteratorBase; + using IterBase::m_pos; + using iter = Iterator; + using PositionType = SetPosition; + + AXOM_HOST_DEVICE Iterator(PositionType pos, SubMap sMap) + : IterBase(pos) + , m_submap(sMap) + { } + + /// \brief Returns the current iterator value. + AXOM_HOST_DEVICE DataRefType operator*() const { return m_submap[m_pos]; } + + /** \brief Returns the first component value after n increments. */ + DataRefType operator[](PositionType n) const { return *(*this + n); } + + /** \brief Returns the Set element at the iterator's position */ + IndexType index() const { return m_submap.index(m_pos / m_submap.numComp()); } + + /// \brief Returns the component index pointed to by this iterator. + PositionType compIndex() const { return m_pos % m_submap.numComp(); } + + /// \brief Returns the flat index pointed to by this iterator. + SetPosition flatIndex() const { return this->m_pos; } + + /** \brief Returns the number of component per element in the SubMap. */ + PositionType numComp() const { return m_submap.numComp(); } + +protected: + /* Implementation of advance() as required by IteratorBase */ + AXOM_HOST_DEVICE void advance(PositionType pos) { m_pos += pos; } + +private: + SubMap m_submap; +}; + } // end namespace slam } // end namespace axom diff --git a/src/axom/slam/tests/slam_map_BivariateMap.cpp b/src/axom/slam/tests/slam_map_BivariateMap.cpp index 3f020f4907..e018b406a6 100644 --- a/src/axom/slam/tests/slam_map_BivariateMap.cpp +++ b/src/axom/slam/tests/slam_map_BivariateMap.cpp @@ -370,18 +370,20 @@ void constructAndTestBivariateMapIterator(int stride) } } - SLIC_INFO("Checking the elements with SubMap iterator."); + SLIC_INFO("Checking the elements with SubMap flat iterator."); for(auto idx1 = 0; idx1 < m.firstSetSize(); ++idx1) { int idx2 = 0; + int compIdx = 0; auto begin_iter = m.begin(idx1); - for(auto iter = m.begin(idx1); iter != m.end(idx1); ++iter, ++idx2) + for(auto iter = m.begin(idx1); iter != m.end(idx1); ++iter) { - EXPECT_EQ(begin_iter[idx2], getVal(idx1, idx2)); - EXPECT_EQ(*iter, getVal(idx1, idx2)); - for(auto i = 0; i < iter.numComp(); i++) + EXPECT_EQ(*iter, getVal(idx1, idx2, compIdx)); + compIdx++; + if(compIdx == m.numComp()) { - EXPECT_EQ(iter(i), getVal(idx1, idx2, i)); + compIdx = 0; + idx2++; } } } diff --git a/src/axom/slam/tests/slam_map_SubMap.cpp b/src/axom/slam/tests/slam_map_SubMap.cpp index 7770bc44c8..ac324998c0 100644 --- a/src/axom/slam/tests/slam_map_SubMap.cpp +++ b/src/axom/slam/tests/slam_map_SubMap.cpp @@ -128,13 +128,12 @@ bool constructAndTestSubMap() // Check iterator's value access functions { - auto mapVal = it.value(); - EXPECT_EQ(mapVal, *it); - EXPECT_EQ(mapVal, it()); - EXPECT_EQ(mapVal, it[0]); + auto expectedValue = getValue(submapOffset + cnt); + EXPECT_EQ(expectedValue, *it); + EXPECT_EQ(expectedValue, it[0]); auto expVal = getValue(submapOffset + cnt); - EXPECT_EQ(expVal, mapVal); + EXPECT_EQ(expVal, expectedValue); } } } From 497565cb8acd1d5b62e5c5a5bfba50e7c2af76a1 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:26:26 -0800 Subject: [PATCH 133/592] Map: reverse order of arguments for range_iterator ctor This is for consistency with BivariateMap. --- src/axom/slam/Map.hpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index acc6692b73..2dfb534d99 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -587,7 +587,7 @@ class Map : public StrPol, } public: - MapRangeIterator(PositionType pos, MapConstPtr oMap) + MapRangeIterator(MapConstPtr oMap, PositionType pos) : IterBase(pos) , m_map(oMap) { @@ -676,15 +676,15 @@ class Map : public StrPol, return RangeAdapter {begin(), end()}; } - range_iterator set_begin() { return range_iterator(0, this); } - range_iterator set_end() { return range_iterator(size(), this); } + range_iterator set_begin() { return range_iterator(this, 0); } + range_iterator set_end() { return range_iterator(this, size()); } const_range_iterator set_begin() const { - return const_range_iterator(0, this); + return const_range_iterator(this, 0); } const_range_iterator set_end() const { - return const_range_iterator(size(), this); + return const_range_iterator(this, size()); } RangeAdapter set_elements() { From b8fa2cdbbf73e1b3ad52f9df2cc7d221f7043041 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:29:20 -0800 Subject: [PATCH 134/592] SubMap: add a range iterator for non-unit strides --- src/axom/slam/SubMap.hpp | 107 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 107 insertions(+) diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index e2e7956809..6ee3f7ec1f 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -82,6 +82,10 @@ class SubMap using const_iterator = Iterator; using iterator_pair = std::pair; + class RangeIterator; + using const_range_iterator = RangeIterator; + using range_iterator = RangeIterator; + using ValueType = typename IndirectionPolicyType::IndirectionResult; using ConstValueType = typename IndirectionPolicyType::ConstIndirectionResult; @@ -198,6 +202,7 @@ class SubMap } private: //helper functions + friend class RangeIterator; /** * \brief Get the ElementFlatIndex into the SuperMap given the subset's index. */ @@ -306,6 +311,14 @@ class SubMap { return iterator(m_subsetIdx.size() * numComp(), *this); } + AXOM_HOST_DEVICE range_iterator set_begin() const + { + return range_iterator(0, *this); + } + AXOM_HOST_DEVICE range_iterator set_end() const + { + return range_iterator(m_subsetIdx.size(), *this); + } protected: //Member variables SuperMapType* m_superMap; @@ -414,6 +427,100 @@ class SubMap::Iterator SubMap m_submap; }; +/** + * \class SubMap::RangeIterator + * \brief An iterator for SubMap, based on MapIterator + * + * \see MapIterator + */ +template +class SubMap::RangeIterator + : public IteratorBase +{ +private: +public: + using IterBase = IteratorBase; + using IterBase::m_pos; + using iter = Iterator; + using PositionType = SetPosition; + +private: + using MapRangeIterator = + std::conditional_t::value, + typename SuperMapType::const_range_iterator, + typename SuperMapType::range_iterator>; + +public: + // Type traits to satisfy LegacyRandomAccessIterator concept + using iterator_category = typename MapRangeIterator::iterator_category; + using value_type = typename MapRangeIterator::value_type; + using reference = typename MapRangeIterator::reference; + using pointer = typename MapRangeIterator::pointer; + using difference_type = SetPosition; + +public: + AXOM_HOST_DEVICE RangeIterator(PositionType pos, SubMap sMap) + : IterBase(pos) + , m_submap(sMap) + , m_mapIter(m_submap.m_superMap, pos) + { } + + /// \brief Returns the current iterator value. + reference operator*() const { return (*m_mapIter); } + + pointer operator->() const { return m_mapIter.operator->(); } + + template + DataRefType operator()(ComponentIndex... comp_idx) const + { + return m_mapIter(comp_idx...); + } + template + DataRefType value(ComponentIndex... comp_idx) const + { + return m_mapIter.value(comp_idx...); + } + + value_type operator[](PositionType n) const { return *(*this + n); } + + /// \brief Returns the set element mapped by this iterator. + SetElement index() const { return m_submap.index(this->m_pos); } + + /*! + * \brief Returns the flat index in the original map pointed to by this + * iterator. + */ + SetPosition flatIndex() const { return m_mapIter.flatIndex(); } + + /// \brief Returns the index into the submap pointed to by this iterator. + SetPosition submapIndex() const { return this->m_pos; } + + /** \brief Returns the number of components per element in the Map. */ + PositionType numComp() const { return m_mapIter.numComp(); } + +protected: + /** Implementation of advance() as required by IteratorBase */ + void advance(PositionType n) + { + PositionType currIndex = m_submap.m_subsetIdx[this->m_pos]; + // End element is one past the last subset element. + PositionType nextIndex = + m_submap.m_subsetIdx[m_submap.m_subsetIdx.size() - 1] + 1; + if(this->m_pos + n < m_submap.m_subsetIdx.size()) + { + nextIndex = m_submap.m_subsetIdx[this->m_pos + n]; + } + // Move original iterator. + m_mapIter += (nextIndex - currIndex); + + this->m_pos += n; + } + +private: + SubMap m_submap; + MapRangeIterator m_mapIter; +}; + } // end namespace slam } // end namespace axom From 36be40969f199059a906fd9dfb50952f471a13ca Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:34:08 -0800 Subject: [PATCH 135/592] Add a test for SubMap range iterator --- src/axom/slam/tests/slam_map_SubMap.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/axom/slam/tests/slam_map_SubMap.cpp b/src/axom/slam/tests/slam_map_SubMap.cpp index ac324998c0..9b2b5caa88 100644 --- a/src/axom/slam/tests/slam_map_SubMap.cpp +++ b/src/axom/slam/tests/slam_map_SubMap.cpp @@ -159,6 +159,20 @@ bool constructAndTestSubMap() EXPECT_EQ(ssm.value(idx), getValue(subset_indices[idx])); EXPECT_EQ(ssm.index(idx), s[subset_indices[idx]]); } + + SLIC_INFO("Checking the elements using SubMap range iterator."); + { + int cnt = 0; + for(auto it = ssm.set_begin(); it != ssm.set_end(); ++it, ++cnt) + { + auto expectedValue = getValue(subset_indices[cnt]); + EXPECT_EQ(expectedValue, (*it)[0]); + EXPECT_EQ(expectedValue, it(0)); + EXPECT_EQ(expectedValue, it.value(0)); + EXPECT_EQ(it.index(), s[subset_indices[cnt]]); + } + EXPECT_EQ(cnt, subset_indices.size()); + } } return true; } From 8046b6a8714cf639279bf1c59971c60c30868b19 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:30:15 -0800 Subject: [PATCH 136/592] BivariateMap: add functions to access row iterators as SubMap range iterators --- src/axom/slam/BivariateMap.hpp | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 2094071c2e..4ce98bd92b 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -124,6 +124,8 @@ class BivariateMap using ConstSubMapType = const SubMap; using SubMapIterator = typename SubMapType::iterator; using ConstSubMapIterator = typename ConstSubMapType::iterator; + using SubMapRangeIterator = typename SubMapType::range_iterator; + using ConstSubMapRangeIterator = typename ConstSubMapType::range_iterator; using NullBivariateSetType = NullBivariateSet; @@ -519,6 +521,22 @@ class BivariateMap { return (*this)(i).end(); } + AXOM_HOST_DEVICE SubMapRangeIterator set_begin(int i) + { + return (*this)(i).set_begin(); + } + AXOM_HOST_DEVICE SubMapRangeIterator set_end(int i) + { + return (*this)(i).set_end(); + } + AXOM_HOST_DEVICE ConstSubMapRangeIterator set_begin(int i) const + { + return (*this)(i).set_begin(); + } + AXOM_HOST_DEVICE ConstSubMapRangeIterator set_end(int i) const + { + return (*this)(i).set_end(); + } public: AXOM_HOST_DEVICE const BivariateSetType* set() const { return m_bset.get(); } From c8551ae119f3bd6f9e263432317cdf0d714d837c Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:30:48 -0800 Subject: [PATCH 137/592] Multimat: update tests for submap iter changes --- src/axom/multimat/examples/traversal.cpp | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/axom/multimat/examples/traversal.cpp b/src/axom/multimat/examples/traversal.cpp index cf6de1b02b..078d1049ae 100644 --- a/src/axom/multimat/examples/traversal.cpp +++ b/src/axom/multimat/examples/traversal.cpp @@ -304,7 +304,7 @@ void various_traversal_methods(int nmats, for(int i = 0; i < map2d.firstSetSize(); i++) { auto submap = map2d(i); - for(auto iter = submap.begin(); iter != submap.end(); iter++) + for(auto iter = submap.set_begin(); iter != submap.set_end(); iter++) { //int idx = iter.index(); //get the index for(int comp = 0; comp < map2d.numComp(); ++comp) @@ -312,7 +312,6 @@ void various_traversal_methods(int nmats, sum += iter(comp); //<---- SLIC_ASSERT(iter(comp) == iter.value(comp)); //value() } - SLIC_ASSERT(*iter == iter.value()); //2 ways to get the first component } } } @@ -330,7 +329,7 @@ void various_traversal_methods(int nmats, auto map2d = mm.get2dField("CellMat Array"); for(int i = 0; i < mm.getNumberOfCells() /*map2d.firstSetSize()*/; i++) { - for(auto iter = map2d.begin(i); iter != map2d.end(i); iter++) + for(auto iter = map2d.set_begin(i); iter != map2d.set_end(i); iter++) { // int idx = iter.index(); get the index for(int comp = 0; comp < map2d.numComp(); ++comp) @@ -338,8 +337,8 @@ void various_traversal_methods(int nmats, sum += iter(comp); //<---- SLIC_ASSERT(iter(comp) == iter.value(comp)); //value() } - SLIC_ASSERT(iter(0) == *iter); //2 ways to get the first component - SLIC_ASSERT(iter(0) == iter.value()); + SLIC_ASSERT(iter(0) == (*iter)[0]); //2 ways to get the first component + SLIC_ASSERT(iter(0) == iter.value(0)); } } } From d84f9ed8705079ea56e33d48eddbaa5084b1da69 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:42:38 -0800 Subject: [PATCH 138/592] Slam: minor iterator fixups --- src/axom/slam/BivariateMap.hpp | 4 +++- src/axom/slam/Map.hpp | 8 +++++--- src/axom/slam/SubMap.hpp | 2 ++ 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index 4ce98bd92b..becdf927a1 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -663,11 +663,13 @@ class BivariateMap::FlatIterator /** * \brief Returns the current map element pointed to by the iterator. */ - DataRefType operator*() + DataRefType operator*() const { return m_map->flatValue(m_bsetIterator.flatIndex(), compIndex()); } + pointer operator->() const { return &(*this); } + /** * \brief return the current iterator's first index into the BivariateSet */ diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 2dfb534d99..ff770304bd 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -493,8 +493,8 @@ class Map : public StrPol, using iterator_category = std::random_access_iterator_tag; using value_type = DataType; - using reference_type = DataRefType; - using pointer_type = value_type*; + using reference = DataRefType; + using pointer = value_type*; using difference_type = SetPosition; using IterBase = IteratorBase; @@ -510,7 +510,9 @@ class Map : public StrPol, /** * \brief Returns the current iterator value. */ - reference_type operator*() { return (*m_map)[m_pos]; } + reference operator*() const { return (*m_map)[m_pos]; } + + pointer operator->() const { return &(*this); } /// \brief Returns the set element mapped by this iterator. SetElement index() const diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 6ee3f7ec1f..cda6cbbdb1 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -404,6 +404,8 @@ class SubMap::Iterator /// \brief Returns the current iterator value. AXOM_HOST_DEVICE DataRefType operator*() const { return m_submap[m_pos]; } + pointer operator->() const { return &(*this); } + /** \brief Returns the first component value after n increments. */ DataRefType operator[](PositionType n) const { return *(*this + n); } From 7c1bd2aa369232d282e75564fd50e1512cf9bbea Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 29 Jan 2024 17:50:43 -0800 Subject: [PATCH 139/592] BivariateSet: minor fixup --- src/axom/slam/BivariateSet.hpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index e89f196d9f..b7fb6d53e6 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -305,9 +305,9 @@ struct BivariateSetIterator typename BivariateSetType::PositionType> { public: + using IndexType = typename BivariateSetType::PositionType; using BaseType = IteratorBase, IndexType>; - using IndexType = typename BivariateSetType::PositionType; using difference_type = IndexType; using value_type = std::pair; using reference = value_type&; From c246fb73a8460ae6a6ace779ad842a530d5fc18b Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 30 Jan 2024 10:44:29 -0800 Subject: [PATCH 140/592] SubMap: compute parent map iterator position in ctor --- src/axom/slam/SubMap.hpp | 24 +++++++++++++++--------- 1 file changed, 15 insertions(+), 9 deletions(-) diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index cda6cbbdb1..145f9d102b 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -460,11 +460,23 @@ class SubMap::RangeIterator using pointer = typename MapRangeIterator::pointer; using difference_type = SetPosition; + PositionType getParentPosition(PositionType subset_pos) + { + PositionType subsetEnd = m_submap.m_subsetIdx.size() - 1; + // End element is one past the last subset element. + PositionType parentIndex = m_submap.m_subsetIdx[subsetEnd] + 1; + if(subset_pos < m_submap.m_subsetIdx.size()) + { + parentIndex = m_submap.m_subsetIdx[subset_pos]; + } + return parentIndex; + } + public: AXOM_HOST_DEVICE RangeIterator(PositionType pos, SubMap sMap) : IterBase(pos) , m_submap(sMap) - , m_mapIter(m_submap.m_superMap, pos) + , m_mapIter(m_submap.m_superMap, getParentPosition(pos)) { } /// \brief Returns the current iterator value. @@ -504,14 +516,8 @@ class SubMap::RangeIterator /** Implementation of advance() as required by IteratorBase */ void advance(PositionType n) { - PositionType currIndex = m_submap.m_subsetIdx[this->m_pos]; - // End element is one past the last subset element. - PositionType nextIndex = - m_submap.m_subsetIdx[m_submap.m_subsetIdx.size() - 1] + 1; - if(this->m_pos + n < m_submap.m_subsetIdx.size()) - { - nextIndex = m_submap.m_subsetIdx[this->m_pos + n]; - } + PositionType currIndex = m_mapIter.flatIndex(); + PositionType nextIndex = getParentPosition(this->m_pos + n); // Move original iterator. m_mapIter += (nextIndex - currIndex); From f61adafeb60619b6855efc588123e0de46a1cc62 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Tue, 30 Jan 2024 11:31:24 -0800 Subject: [PATCH 141/592] Slam: add a bunch of host-device annotations --- src/axom/slam/BivariateMap.hpp | 19 +++++++++++-------- src/axom/slam/BivariateSet.hpp | 4 ++-- src/axom/slam/Map.hpp | 18 +++++++++--------- src/axom/slam/SubMap.hpp | 14 ++++++++------ 4 files changed, 30 insertions(+), 25 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index becdf927a1..ac098ec0bc 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -663,12 +663,12 @@ class BivariateMap::FlatIterator /** * \brief Returns the current map element pointed to by the iterator. */ - DataRefType operator*() const + AXOM_HOST_DEVICE DataRefType operator*() const { return m_map->flatValue(m_bsetIterator.flatIndex(), compIndex()); } - pointer operator->() const { return &(*this); } + AXOM_HOST_DEVICE pointer operator->() const { return &(*this); } /** * \brief return the current iterator's first index into the BivariateSet @@ -685,10 +685,10 @@ class BivariateMap::FlatIterator PositionType compIndex() const { return this->m_pos % numComp(); } /** \brief Returns the number of components per element in the map. */ - PositionType numComp() const { return m_map->numComp(); } + AXOM_HOST_DEVICE PositionType numComp() const { return m_map->numComp(); } protected: - void advance(IndexType n) + AXOM_HOST_DEVICE void advance(IndexType n) { this->m_pos += n; // Advance associated bset iterator. @@ -752,9 +752,12 @@ class BivariateMap::RangeIterator * multiple components, this will return the first component. * To access the other components, use iter(comp) */ - reference operator*() const { return *m_mapIterator; } + AXOM_HOST_DEVICE reference operator*() const { return *m_mapIterator; } - pointer operator->() const { return m_mapIterator.operator->(); } + AXOM_HOST_DEVICE pointer operator->() const + { + return m_mapIterator.operator->(); + } /** * \brief Returns the iterator's value at the specified component. @@ -762,7 +765,7 @@ class BivariateMap::RangeIterator * \param comp_idx (Optional) Zero-based index of the component. */ template - DataRefType operator()(ComponentIndex... comp_idx) const + AXOM_HOST_DEVICE DataRefType operator()(ComponentIndex... comp_idx) const { return value(comp_idx...); } @@ -799,7 +802,7 @@ class BivariateMap::RangeIterator PositionType numComp() const { return m_map->numComp(); } protected: - void advance(IndexType n) + AXOM_HOST_DEVICE void advance(IndexType n) { this->m_pos += n; // Advance associated bset iterator. diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index b7fb6d53e6..d97280ad97 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -335,10 +335,10 @@ struct BivariateSetIterator } /// \brief Return the flat iteration index of this iterator. - IndexType flatIndex() const { return this->m_pos; } + AXOM_HOST_DEVICE IndexType flatIndex() const { return this->m_pos; } protected: - void advance(IndexType n) { this->m_pos += n; } + AXOM_HOST_DEVICE void advance(IndexType n) { this->m_pos += n; } private: const BivariateSetType* m_bset; diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index ff770304bd..948a83debb 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -510,9 +510,9 @@ class Map : public StrPol, /** * \brief Returns the current iterator value. */ - reference operator*() const { return (*m_map)[m_pos]; } + AXOM_HOST_DEVICE reference operator*() const { return (*m_map)[m_pos]; } - pointer operator->() const { return &(*this); } + AXOM_HOST_DEVICE pointer operator->() const { return &(*this); } /// \brief Returns the set element mapped by this iterator. SetElement index() const @@ -528,7 +528,7 @@ class Map : public StrPol, protected: /** Implementation of advance() as required by IteratorBase */ - void advance(PositionType n) { m_pos += n; } + AXOM_HOST_DEVICE void advance(PositionType n) { m_pos += n; } private: MapConstPtr m_map; @@ -603,9 +603,9 @@ class Map : public StrPol, /** * \brief Returns the current iterator value. */ - reference operator*() const { return m_currRange; } + AXOM_HOST_DEVICE reference operator*() const { return m_currRange; } - pointer operator->() const { return &m_currRange; } + AXOM_HOST_DEVICE pointer operator->() const { return &m_currRange; } /** * \brief Returns the iterator's value at the specified component. @@ -613,12 +613,12 @@ class Map : public StrPol, * \param comp_idx Zero-based index of the component. */ template - DataRefType operator()(ComponentIndex... comp_idx) const + AXOM_HOST_DEVICE DataRefType operator()(ComponentIndex... comp_idx) const { return value(comp_idx...); } template - DataRefType value(ComponentIndex comp_idx) const + AXOM_HOST_DEVICE DataRefType value(ComponentIndex comp_idx) const { static_assert(Dims == 1, "Map::RangeIterator::value(): incorrect number of indexes " @@ -629,7 +629,7 @@ class Map : public StrPol, return m_currRange[comp_idx]; } template - DataRefType value(ComponentIndex... comp_idx) const + AXOM_HOST_DEVICE DataRefType value(ComponentIndex... comp_idx) const { static_assert(sizeof...(ComponentIndex) == Dims, "Map::RangeIterator::value(): incorrect number of indexes " @@ -652,7 +652,7 @@ class Map : public StrPol, protected: /** Implementation of advance() as required by IteratorBase */ - void advance(PositionType n) + AXOM_HOST_DEVICE void advance(PositionType n) { this->m_pos += n; m_currRange = m_mapData[this->m_pos]; diff --git a/src/axom/slam/SubMap.hpp b/src/axom/slam/SubMap.hpp index 145f9d102b..b16ec02027 100644 --- a/src/axom/slam/SubMap.hpp +++ b/src/axom/slam/SubMap.hpp @@ -123,9 +123,11 @@ class SubMap * element, where `setIndex = i * numComp() + j`. * \pre 0 <= idx < size() * numComp() */ - DataRefType operator[](IndexType idx) const + AXOM_HOST_DEVICE DataRefType operator[](IndexType idx) const { +#ifndef AXOM_DEVICE_CODE verifyPositionImpl(idx); +#endif IndexType flat_idx = getMapCompFlatIndex(idx); return (*m_superMap)[flat_idx]; } @@ -480,17 +482,17 @@ class SubMap::RangeIterator { } /// \brief Returns the current iterator value. - reference operator*() const { return (*m_mapIter); } + AXOM_HOST_DEVICE reference operator*() const { return (*m_mapIter); } - pointer operator->() const { return m_mapIter.operator->(); } + AXOM_HOST_DEVICE pointer operator->() const { return m_mapIter.operator->(); } template - DataRefType operator()(ComponentIndex... comp_idx) const + AXOM_HOST_DEVICE DataRefType operator()(ComponentIndex... comp_idx) const { return m_mapIter(comp_idx...); } template - DataRefType value(ComponentIndex... comp_idx) const + AXOM_HOST_DEVICE DataRefType value(ComponentIndex... comp_idx) const { return m_mapIter.value(comp_idx...); } @@ -514,7 +516,7 @@ class SubMap::RangeIterator protected: /** Implementation of advance() as required by IteratorBase */ - void advance(PositionType n) + AXOM_HOST_DEVICE void advance(PositionType n) { PositionType currIndex = m_mapIter.flatIndex(); PositionType nextIndex = getParentPosition(this->m_pos + n); From 7c69ed12b1f476c5028ed99cdf807f0fb384d2db Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 8 Apr 2024 09:35:30 -0700 Subject: [PATCH 142/592] Update some documentation --- src/axom/slam/BivariateMap.hpp | 32 +++++++++++------------ src/axom/slam/BivariateSet.hpp | 2 +- src/axom/slam/Map.hpp | 6 +++-- src/axom/slam/policies/StridePolicies.hpp | 10 +++++++ 4 files changed, 31 insertions(+), 19 deletions(-) diff --git a/src/axom/slam/BivariateMap.hpp b/src/axom/slam/BivariateMap.hpp index ac098ec0bc..58b22b05c0 100644 --- a/src/axom/slam/BivariateMap.hpp +++ b/src/axom/slam/BivariateMap.hpp @@ -737,9 +737,9 @@ class BivariateMap::RangeIterator static constexpr PositionType INVALID_POS = -2; public: - /** - * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex - */ + /*! + * \brief Construct a new BivariateMap Iterator given an ElementFlatIndex + */ RangeIterator(BivariateMapPtr sMap, PositionType pos) : IterBase(pos) , m_map(sMap) @@ -747,11 +747,9 @@ class BivariateMap::RangeIterator , m_bsetIterator(m_map->set(), pos) { } - /** - * \brief Returns the current iterator value. If the BivariateMap has - * multiple components, this will return the first component. - * To access the other components, use iter(comp) - */ + /*! + * \brief Returns the range of elements pointed to by this iterator. + */ AXOM_HOST_DEVICE reference operator*() const { return *m_mapIterator; } AXOM_HOST_DEVICE pointer operator->() const @@ -759,11 +757,12 @@ class BivariateMap::RangeIterator return m_mapIterator.operator->(); } - /** - * \brief Returns the iterator's value at the specified component. - * Returns the first component if comp_idx is not specified. - * \param comp_idx (Optional) Zero-based index of the component. - */ + /*! + * \brief Returns the iterator's value at the given component index. + * + * \pre `sizeof(compIdx) == StridePolicy::NumDims` + * \pre `0 <= compIdx[idim] < shape()[idim]` + */ template AXOM_HOST_DEVICE DataRefType operator()(ComponentIndex... comp_idx) const { @@ -773,9 +772,10 @@ class BivariateMap::RangeIterator /** \brief Returns the first component value after n increments. */ DataRefType operator[](PositionType n) const { return *(this->operator+(n)); } - /** - * \brief Return the value at the iterator's position. Same as operator() - */ + /*! + * \brief Return the value at the iterator's position for a given component + * index. Same as operator() + */ template DataRefType value(ComponentIndex... comp) const { diff --git a/src/axom/slam/BivariateSet.hpp b/src/axom/slam/BivariateSet.hpp index d97280ad97..2828d1d8b9 100644 --- a/src/axom/slam/BivariateSet.hpp +++ b/src/axom/slam/BivariateSet.hpp @@ -321,7 +321,7 @@ struct BivariateSetIterator std::pair operator*() const { - // Going from flat-to-second index is always free for a StaticRelation. + // Going from flat index to second index is always free for a StaticRelation. return {firstIndex(), secondIndex()}; } diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 948a83debb..89f8495c88 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -290,7 +290,8 @@ class Map : public StrPol, * the component index. * * \pre `0 <= setIdx < size()` - * \pre `0 <= compIdx[i] < shape()[i]` + * \pre `sizeof(compIdx) == StridePolicy::NumDims` + * \pre `0 <= compIdx[idim] < shape()[idim]` */ template AXOM_HOST_DEVICE ConstValueType operator()(SetPosition setIdx, @@ -322,7 +323,8 @@ class Map : public StrPol, * the component index. * * \pre `0 <= setIdx < size()` - * \pre `0 <= compIdx[i] < shape()[i]` + * \pre `sizeof(compIdx) == StridePolicy::NumDims` + * \pre `0 <= compIdx[idim] < shape()[idim]` */ template AXOM_HOST_DEVICE ConstValueType value(SetPosition setIdx, diff --git a/src/axom/slam/policies/StridePolicies.hpp b/src/axom/slam/policies/StridePolicies.hpp index e8b519dbc1..641e8207f4 100644 --- a/src/axom/slam/policies/StridePolicies.hpp +++ b/src/axom/slam/policies/StridePolicies.hpp @@ -62,7 +62,12 @@ struct RuntimeStride : m_stride(stride) { } + /// \brief Returns the stride between consecutive elements. AXOM_HOST_DEVICE inline IntType stride() const { return m_stride; } + /*! + * \brief Returns the shape of the inner data for a given stride. + * This only has meaning when used with Map-based types. + */ AXOM_HOST_DEVICE inline IntType shape() const { return m_stride; } AXOM_HOST_DEVICE inline IntType& stride() { return m_stride; } @@ -163,7 +168,12 @@ struct MultiDimStride inline IntType operator()() const { return stride(); } inline IntType& operator()() { return stride(); } + /// \brief Returns the strides for each indexing dimension. AXOM_HOST_DEVICE inline ShapeType strides() const { return m_strides; } + /*! + * \brief Returns the multi-dimensional shape of the inner data. + * This only has meaning when used with Map-based types. + */ AXOM_HOST_DEVICE inline ShapeType shape() const { return m_shape; } private: From 379db95ceed3ce8e90145993a0d9c33f8103f330 Mon Sep 17 00:00:00 2001 From: Max Yang Date: Mon, 8 Apr 2024 10:16:38 -0700 Subject: [PATCH 143/592] Map: Rename stride -> shape in RangeIterator --- src/axom/slam/Map.hpp | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/axom/slam/Map.hpp b/src/axom/slam/Map.hpp index 89f8495c88..81f06954c3 100644 --- a/src/axom/slam/Map.hpp +++ b/src/axom/slam/Map.hpp @@ -575,17 +575,17 @@ class Map : public StrPol, using difference_type = SetPosition; private: - static StackArray fetchDims(StrideIndexType stride) + static StackArray fetchDims(StrideIndexType shape) { - return {0, stride}; + return {0, shape}; } static StackArray fetchDims( - const StackArray stride) + const StackArray shape) { StackArray dims; for(int idim = 0; idim < Dims; idim++) { - dims[idim + 1] = stride[idim]; + dims[idim + 1] = shape[idim]; } return dims; } From 897f854f257e5ca6ddadb7f371fe64c091d22280 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 1 Apr 2024 17:06:37 -0700 Subject: [PATCH 144/592] Adds stubs for annotations API and initializes adiak w/ basic unit tests --- src/axom/core/CMakeLists.txt | 6 +- src/axom/core/tests/CMakeLists.txt | 1 + src/axom/core/tests/core_serial_main.cpp | 3 +- src/axom/core/tests/utils_annotations.hpp | 142 ++++++++++++++++++++++ src/axom/core/utilities/Annotations.cpp | 54 ++++++++ src/axom/core/utilities/Annotations.hpp | 40 ++++++ 6 files changed, 244 insertions(+), 2 deletions(-) create mode 100644 src/axom/core/tests/utils_annotations.hpp create mode 100644 src/axom/core/utilities/Annotations.cpp create mode 100644 src/axom/core/utilities/Annotations.hpp diff --git a/src/axom/core/CMakeLists.txt b/src/axom/core/CMakeLists.txt index 1fdca4951b..c694c50361 100644 --- a/src/axom/core/CMakeLists.txt +++ b/src/axom/core/CMakeLists.txt @@ -21,6 +21,7 @@ axom_configure_file( set(core_headers ## utilities + utilities/Annotations.hpp utilities/AnnotationMacros.hpp utilities/BitUtilities.hpp utilities/FileUtilities.hpp @@ -80,6 +81,7 @@ set(core_headers ) set(core_sources + utilities/Annotations.cpp utilities/FileUtilities.cpp utilities/StringUtilities.cpp utilities/System.cpp @@ -100,10 +102,12 @@ set(core_sources #------------------------------------------------------------------------------ set( core_depends fmt ) +blt_list_append( TO core_depends ELEMENTS adiak::adiak IF ADIAK_FOUND ) +blt_list_append( TO core_depends ELEMENTS caliper IF CALIPER_FOUND ) blt_list_append( TO core_depends ELEMENTS camp IF CAMP_FOUND ) blt_list_append( TO core_depends ELEMENTS umpire IF UMPIRE_FOUND ) blt_list_append( TO core_depends ELEMENTS RAJA IF RAJA_FOUND ) -blt_list_append( TO core_depends ELEMENTS nvToolsExt IF AXOM_ENABLE_CUDA ) +blt_list_append( TO core_depends ELEMENTS nvToolsExt IF AXOM_ENABLE_CUDA ) ## TODO: Remove blt_list_append( TO core_depends ELEMENTS mpi IF AXOM_ENABLE_MPI ) # HACK: RAJA's dependencies are not getting added to core due to a bug in diff --git a/src/axom/core/tests/CMakeLists.txt b/src/axom/core/tests/CMakeLists.txt index 8d6ffc0e7e..773f7a265c 100644 --- a/src/axom/core/tests/CMakeLists.txt +++ b/src/axom/core/tests/CMakeLists.txt @@ -39,6 +39,7 @@ set(core_serial_tests numerics_matvecops.hpp numerics_polynomial_solvers.hpp + utils_annotations.hpp utils_endianness.hpp utils_fileUtilities.hpp utils_locale.hpp diff --git a/src/axom/core/tests/core_serial_main.cpp b/src/axom/core/tests/core_serial_main.cpp index 68c93b6cfa..04271f0d6f 100644 --- a/src/axom/core/tests/core_serial_main.cpp +++ b/src/axom/core/tests/core_serial_main.cpp @@ -5,7 +5,7 @@ #include "gtest/gtest.h" -#include "axom/config.hpp" // for compile-time definitions +#include "axom/config.hpp" #include "core_about.hpp" #include "core_array.hpp" @@ -35,6 +35,7 @@ #include "numerics_matvecops.hpp" #include "numerics_polynomial_solvers.hpp" +#include "utils_annotations.hpp" #include "utils_endianness.hpp" #include "utils_fileUtilities.hpp" #include "utils_locale.hpp" diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp new file mode 100644 index 0000000000..6cc5952cb8 --- /dev/null +++ b/src/axom/core/tests/utils_annotations.hpp @@ -0,0 +1,142 @@ +// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +#include "gtest/gtest.h" + +#include "axom/config.hpp" +#include "axom/core/Macros.hpp" +#include "axom/core/utilities/Annotations.hpp" + +#include "axom/fmt.hpp" + +#ifdef AXOM_USE_ADIAK + #include +#endif + +namespace +{ +#ifdef AXOM_USE_ADIAK +static std::string adiak_value_as_string(adiak_value_t *val, adiak_datatype_t *t) +{ + // Implementation adapted from adiak user docs + + if(!t) + { + return "ERROR"; + } + + auto get_vals_array = [](adiak_datatype_t *t, adiak_value_t *val, int count) { + std::vector s; + for(int i = 0; i < count; i++) + { + adiak_value_t subval; + adiak_datatype_t *subtype; + adiak_get_subval(t, val, i, &subtype, &subval); + s.push_back(adiak_value_as_string(&subval, subtype)); + } + return s; + }; + + switch(t->dtype) + { + case adiak_type_unset: + return "UNSET"; + case adiak_long: + return axom::fmt::format("{}", val->v_long); + case adiak_ulong: + return axom::fmt::format("{}", static_cast(val->v_long)); + case adiak_longlong: + return axom::fmt::format("{}", val->v_longlong); + case adiak_ulonglong: + return axom::fmt::format("{}", + static_cast(val->v_longlong)); + case adiak_int: + return axom::fmt::format("{}", val->v_int); + case adiak_uint: + return axom::fmt::format("{}", static_cast(val->v_int)); + case adiak_double: + return axom::fmt::format("{}", val->v_double); + case adiak_date: + // holds time in seconds since epoch + return axom::fmt::format( + "{:%a %d %b %Y %T %z}", + std::chrono::system_clock::time_point {std::chrono::seconds {val->v_long}}); + case adiak_timeval: + { + const auto *tv = static_cast(val->v_ptr); + return axom::fmt::format("{:%S} seconds:timeval", + std::chrono::seconds {tv->tv_sec} + + std::chrono::microseconds {tv->tv_usec}); + } + case adiak_version: + return axom::fmt::format("{}:version", static_cast(val->v_ptr)); + case adiak_string: + return axom::fmt::format("{}", static_cast(val->v_ptr)); + case adiak_catstring: + return axom::fmt::format("{}:catstring", static_cast(val->v_ptr)); + case adiak_path: + return axom::fmt::format("{}:path", static_cast(val->v_ptr)); + case adiak_range: + return axom::fmt::format("{}", + axom::fmt::join(get_vals_array(t, val, 2), " - ")); + case adiak_set: + return axom::fmt::format( + "[{}]", + axom::fmt::join(get_vals_array(t, val, adiak_num_subvals(t)), ", ")); + case adiak_list: + return axom::fmt::format( + "{{{}}}", + axom::fmt::join(get_vals_array(t, val, adiak_num_subvals(t)), ", ")); + case adiak_tuple: + return axom::fmt::format( + "({})", + axom::fmt::join(get_vals_array(t, val, adiak_num_subvals(t)), ", ")); + } +} + +static void get_namevals_as_map(const char *name, + int AXOM_UNUSED_PARAM(category), + const char *AXOM_UNUSED_PARAM(subcategory), + adiak_value_t *value, + adiak_datatype_t *t, + void *opaque_value) +{ + // add name/value to adiak metadata map + using kv_map = std::map; + auto &metadata = *static_cast(opaque_value); + metadata[name] = adiak_value_as_string(value, t); +} + +#endif // AXOM_USE_ADIAK +} // namespace + +TEST(utils_annotations, initialize_finalize) +{ + axom::utilities::annotations::initialize(); + + axom::utilities::annotations::finalize(); + + SUCCEED(); +} + +TEST(utils_annotations, print_adiak_metadata) +{ + axom::utilities::annotations::initialize(); + +#ifdef AXOM_USE_ADIAK + std::map metadata; + adiak_list_namevals(1, adiak_category_all, get_namevals_as_map, &metadata); + + std::cout << "Adiak metadata: \n"; + for(const auto &kv : metadata) + { + std::cout << axom::fmt::format("- {}: {}\n", kv.first, kv.second); + } +#endif + + axom::utilities::annotations::finalize(); + + SUCCEED(); +} diff --git a/src/axom/core/utilities/Annotations.cpp b/src/axom/core/utilities/Annotations.cpp new file mode 100644 index 0000000000..aa1f70fe8e --- /dev/null +++ b/src/axom/core/utilities/Annotations.cpp @@ -0,0 +1,54 @@ +#include "Annotations.hpp" + +#ifdef AXOM_USE_MPI + #include +#endif + +namespace axom +{ +namespace utilities +{ +namespace annotations +{ +static bool adiak_initialized = false; + +void initialize() +{ +#ifdef AXOM_USE_ADIAK + if(adiak_initialized) + { + return; + } + + #ifdef AXOM_USE_MPI + MPI_Comm communicator = MPI_COMM_WORLD; + adiak::init((void*)&communicator); + #else + adiak::init(nullptr); + #endif + + adiak::launchdate(); + adiak::executable(); + adiak::cmdline(); + adiak::clustername(); + adiak::jobsize(); + adiak::walltime(); + adiak::cputime(); + adiak::systime(); + + adiak_initialized = true; +#endif +} + +void finalize() +{ + if(adiak_initialized) + { + adiak::fini(); + } + adiak_initialized = false; +} + +} // namespace annotations +} // namespace utilities +} // namespace axom \ No newline at end of file diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp new file mode 100644 index 0000000000..d520ca486f --- /dev/null +++ b/src/axom/core/utilities/Annotations.hpp @@ -0,0 +1,40 @@ +// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and +// other Axom Project Developers. See the top-level LICENSE file for details. +// +// SPDX-License-Identifier: (BSD-3-Clause) + +/*! + * \file Annotations.hpp + * + * \brief Defines functions to help with performance annotations + */ + +#ifndef AXOM_CORE_ANNOTATIONS_HPP_ +#define AXOM_CORE_ANNOTATIONS_HPP_ + +#include "axom/config.hpp" + +#ifdef AXOM_USE_ADIAK + #include "adiak.hpp" +#endif + +#ifdef AXOM_USE_CALIPER + #include "caliper/cali-manager.h" + #include "caliper/cali.h" +#endif + +namespace axom +{ +namespace utilities +{ +namespace annotations +{ +void initialize(); + +void finalize(); + +} // namespace annotations +} // namespace utilities +} // namespace axom + +#endif // AXOM_CORE_ANNOTATIONS_HPP_ From 7d0a79dfc969853ac574dbc946e741f7022596bf Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Mon, 1 Apr 2024 21:29:43 -0700 Subject: [PATCH 145/592] Initializes and finalizes caliper within axom::Annotation API --- src/axom/core/tests/utils_annotations.hpp | 41 ++++++- src/axom/core/utilities/Annotations.cpp | 138 +++++++++++++++++++++- src/axom/core/utilities/Annotations.hpp | 20 +++- 3 files changed, 194 insertions(+), 5 deletions(-) diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp index 6cc5952cb8..7fed7c985a 100644 --- a/src/axom/core/tests/utils_annotations.hpp +++ b/src/axom/core/tests/utils_annotations.hpp @@ -12,7 +12,11 @@ #include "axom/fmt.hpp" #ifdef AXOM_USE_ADIAK - #include + #include "adiak_tool.h" +#endif + +#ifdef AXOM_USE_CALIPER + #include "caliper/cali.h" #endif namespace @@ -114,7 +118,7 @@ static void get_namevals_as_map(const char *name, TEST(utils_annotations, initialize_finalize) { - axom::utilities::annotations::initialize(); + axom::utilities::annotations::initialize("none", 1); axom::utilities::annotations::finalize(); @@ -123,7 +127,7 @@ TEST(utils_annotations, initialize_finalize) TEST(utils_annotations, print_adiak_metadata) { - axom::utilities::annotations::initialize(); + axom::utilities::annotations::initialize("none", 1); #ifdef AXOM_USE_ADIAK std::map metadata; @@ -140,3 +144,34 @@ TEST(utils_annotations, print_adiak_metadata) SUCCEED(); } + +TEST(utils_annotations, modes) +{ + // TODO: Add tests for the following modes: "none", "report", "counts", "file", "trace" + // Must be done is separate runs since caliper does not cleanly tear down + + const std::string mode = "counts"; + std::cout << "Testing caliper service '" << mode << "'\n"; + + axom::utilities::annotations::initialize(mode, 1); + +#ifdef AXOM_USE_CALIPER + { + CALI_MARK_BEGIN("my region"); + for(int i = 0; i < 10; ++i) + { + CALI_CXX_MARK_SCOPE("inner1"); + } + + for(int i = 0; i < 100; ++i) + { + CALI_CXX_MARK_SCOPE("inner2"); + } + CALI_MARK_END("my region"); + } +#endif + + axom::utilities::annotations::finalize(); + + SUCCEED(); +} diff --git a/src/axom/core/utilities/Annotations.cpp b/src/axom/core/utilities/Annotations.cpp index aa1f70fe8e..35935f5e79 100644 --- a/src/axom/core/utilities/Annotations.cpp +++ b/src/axom/core/utilities/Annotations.cpp @@ -4,6 +4,15 @@ #include #endif +#ifdef AXOM_USE_CALIPER + #include + #include + #include + #ifdef AXOM_USE_MPI + #include + #endif +#endif + namespace axom { namespace utilities @@ -12,7 +21,13 @@ namespace annotations { static bool adiak_initialized = false; -void initialize() +#ifdef AXOM_USE_CALIPER +static cali::ConfigManager* cali_mgr {nullptr}; +#endif + +namespace detail +{ +void initialize_adiak() { #ifdef AXOM_USE_ADIAK if(adiak_initialized) @@ -40,13 +55,134 @@ void initialize() #endif } +void initialize_caliper(const std::string& mode, int num_ranks) +{ +#ifdef AXOM_USE_CALIPER + bool multiprocessing = (num_ranks > 1); + std::string configuration_service_list; + cali::ConfigManager::argmap_t app_args; + + #ifdef AXOM_USE_MPI + cali_mpi_init(); + #endif + + cali_mgr = new cali::ConfigManager(); + cali_mgr->add(mode.c_str(), app_args); + + for(const auto& kv : app_args) + { + const std::string& cali_mode = kv.first; + const std::string& value = kv.second; + + if(cali_mode == "none") + { + // intentionally empty + } + else if(cali_mode == "report") + { + //report is an alias for the runtime-report Caliper configuration + cali_mgr->add("runtime-report(output=stdout,calc.inclusive=true)"); + } + else if(cali_mode == "counts") + { + configuration_service_list = "event:aggregate:"; + configuration_service_list += multiprocessing ? "mpireport" : "report"; + + cali_config_preset("CALI_REPORT_CONFIG", + "SELECT count() " + "GROUP BY prop:nested " + "WHERE cali.event.end " + "FORMAT tree"); + + cali_config_preset("CALI_MPIREPORT_CONFIG", + "SELECT min(count) as \"Min count\", " + " max(count) as \"Max count\", " + " avg(count) as \"Avg count\", " + " sum(count) as \"Total count\" " + "GROUP BY prop:nested " + "WHERE cali.event.end " + "FORMAT tree"); + } + else if(cali_mode == "file") + { + configuration_service_list = "event:aggregate:timestamp:recorder"; + } + else if(cali_mode == "trace") + { + configuration_service_list = "event:trace:timestamp:recorder"; + } + else if(cali_mode == "gputx") + { + #if defined(AXOM_USE_CUDA) + configuration_service_list = "nvtx"; + #elif defined(AXOM_USE_HIP) + configuration_service_list = "roctx"; + #endif + } + else if(cali_mode == "nvtx" || cali_mode == "nvprof") + { + configuration_service_list = "nvtx"; + } + else if(cali_mode == "roctx") + { + configuration_service_list = "roctx"; + } + else if(!value.empty()) + { + declare_metadata(cali_mode, value); + } + } + + if(!configuration_service_list.empty()) + { + if(multiprocessing) + { + //This ensures mpi appears before any related service + configuration_service_list = "mpi:" + configuration_service_list; + } + cali_config_preset("CALI_TIMER_SNAPSHOT_DURATION", "true"); + cali_config_preset("CALI_TIMER_INCLUSIVE_DURATION", "false"); + cali_config_preset("CALI_SERVICES_ENABLE", + configuration_service_list.c_str()); + } + + for(auto& channel : cali_mgr->get_all_channels()) + { + channel->start(); + } + +#endif // AXOM_USE_CALIPER +} + +} // namespace detail + +void initialize(const std::string& mode, int num_ranks) +{ + detail::initialize_adiak(); + detail::initialize_caliper(mode, num_ranks); +} + void finalize() { +#ifdef AXOM_USE_ADIAK if(adiak_initialized) { adiak::fini(); } adiak_initialized = false; +#endif +#ifdef AXOM_USE_CALIPER + if(cali_mgr) + { + for(auto& channel : cali_mgr->get_all_channels()) + { + channel->flush(); + } + + delete cali_mgr; + cali_mgr = nullptr; + } +#endif } } // namespace annotations diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp index d520ca486f..93b1aa47a7 100644 --- a/src/axom/core/utilities/Annotations.hpp +++ b/src/axom/core/utilities/Annotations.hpp @@ -29,10 +29,28 @@ namespace utilities { namespace annotations { -void initialize(); +namespace detail +{ +void initialize_adiak(); +void initialize_caliper(const std::string& mode, int num_ranks); +} // namespace detail + +void initialize(const std::string& mode, int num_ranks); void finalize(); +/// Declares metadata for this run +template +void declare_metadata(const std::string& name, + const T& value, + std::string category = "") +{ +#ifdef AXOM_USE_ADIAK + detail::initialize_adiak(); + adiak::value(name, value, adiak_general, category); +#endif +} + } // namespace annotations } // namespace utilities } // namespace axom From 4ca70735dc51a6b2b07308e2f9a8689ca521bfc2 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Tue, 2 Apr 2024 17:44:40 -0700 Subject: [PATCH 146/592] Adds axom annotation macros * AXOM_ANNOTATE_BEGIN -- begins a scope * AXOM_ANNOTATE_END -- ends a scope * AXOM_ANNOTATE_SCOPE -- will end when enclosing scope does * AXOM_ANNOTATE_METADATA -- adds metadata to the run Also exercises these in unit tests. --- src/axom/core/tests/utils_annotations.hpp | 48 +++++++++++++++++++---- src/axom/core/utilities/Annotations.cpp | 38 ++++++++++++++++-- src/axom/core/utilities/Annotations.hpp | 37 +++++++++++++++++ 3 files changed, 112 insertions(+), 11 deletions(-) diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp index 7fed7c985a..9b1bbebfd7 100644 --- a/src/axom/core/tests/utils_annotations.hpp +++ b/src/axom/core/tests/utils_annotations.hpp @@ -127,14 +127,47 @@ TEST(utils_annotations, initialize_finalize) TEST(utils_annotations, print_adiak_metadata) { + using MetadataMap = std::map; + axom::utilities::annotations::initialize("none", 1); #ifdef AXOM_USE_ADIAK - std::map metadata; - adiak_list_namevals(1, adiak_category_all, get_namevals_as_map, &metadata); + { + MetadataMap default_metadata; + adiak_list_namevals(1, + adiak_category_all, + get_namevals_as_map, + &default_metadata); + + // some default metadata is present, e.g. jobsize + EXPECT_TRUE(default_metadata.find("user") != default_metadata.end()); + + // but other metadata is not present before we register it + EXPECT_TRUE(default_metadata.find("int_metadata") == default_metadata.end()); + EXPECT_TRUE(default_metadata.find("str_metadata") == default_metadata.end()); + } + + // register some metadata + AXOM_ANNOTATE_METADATA("str_metadata", "arbitrary string", ""); + AXOM_ANNOTATE_METADATA("int_metadata", 42, ""); + + // check that registered metadata is now present + MetadataMap updated_metadata; + adiak_list_namevals(1, adiak_category_all, get_namevals_as_map, &updated_metadata); + // some default metadata is present + EXPECT_TRUE(updated_metadata.find("user") != updated_metadata.end()); + + // but other metadata is not present before we register it + EXPECT_TRUE(updated_metadata.find("int_metadata") != updated_metadata.end()); + EXPECT_TRUE(updated_metadata.find("str_metadata") != updated_metadata.end()); + + EXPECT_EQ(std::to_string(42), updated_metadata["int_metadata"]); + EXPECT_EQ("arbitrary string", updated_metadata["str_metadata"]); + + // print the key-value pairs std::cout << "Adiak metadata: \n"; - for(const auto &kv : metadata) + for(const auto &kv : updated_metadata) { std::cout << axom::fmt::format("- {}: {}\n", kv.first, kv.second); } @@ -157,17 +190,18 @@ TEST(utils_annotations, modes) #ifdef AXOM_USE_CALIPER { - CALI_MARK_BEGIN("my region"); + AXOM_ANNOTATE_BEGIN("my region"); + for(int i = 0; i < 10; ++i) { - CALI_CXX_MARK_SCOPE("inner1"); + AXOM_ANNOTATE_SCOPE("inner1"); } for(int i = 0; i < 100; ++i) { - CALI_CXX_MARK_SCOPE("inner2"); + AXOM_ANNOTATE_SCOPE("inner2"); } - CALI_MARK_END("my region"); + AXOM_ANNOTATE_END("my region"); } #endif diff --git a/src/axom/core/utilities/Annotations.cpp b/src/axom/core/utilities/Annotations.cpp index 35935f5e79..f5dde1073d 100644 --- a/src/axom/core/utilities/Annotations.cpp +++ b/src/axom/core/utilities/Annotations.cpp @@ -1,18 +1,27 @@ #include "Annotations.hpp" +#include "axom/core/utilities/About.hpp" + #ifdef AXOM_USE_MPI #include #endif #ifdef AXOM_USE_CALIPER - #include - #include - #include + #include "caliper/Caliper.h" + #include "caliper/common/Attribute.h" + #include "caliper/cali-manager.h" #ifdef AXOM_USE_MPI - #include + #include "caliper/cali-mpi.h" #endif #endif +#ifdef AXOM_USE_CALIPER +namespace cali +{ +extern Attribute region_attr; +} +#endif + namespace axom { namespace utilities @@ -42,11 +51,14 @@ void initialize_adiak() adiak::init(nullptr); #endif + adiak::user(); adiak::launchdate(); adiak::executable(); adiak::cmdline(); adiak::clustername(); adiak::jobsize(); + adiak::workdir(); + adiak::walltime(); adiak::cputime(); adiak::systime(); @@ -160,6 +172,8 @@ void initialize(const std::string& mode, int num_ranks) { detail::initialize_adiak(); detail::initialize_caliper(mode, num_ranks); + + declare_metadata("axom_version", axom::getVersion()); } void finalize() @@ -185,6 +199,22 @@ void finalize() #endif } +void begin(const std::string& name) +{ +#ifdef AXOM_USE_CALIPER + cali::Caliper().begin( + cali::region_attr, + cali::Variant(CALI_TYPE_STRING, name.c_str(), name.length())); +#endif +} + +void end(const std::string& /*name*/) +{ +#ifdef AXOM_USE_CALIPER + cali::Caliper().end(cali::region_attr); +#endif +} + } // namespace annotations } // namespace utilities } // namespace axom \ No newline at end of file diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp index 93b1aa47a7..36650171ad 100644 --- a/src/axom/core/utilities/Annotations.hpp +++ b/src/axom/core/utilities/Annotations.hpp @@ -23,6 +23,35 @@ #include "caliper/cali.h" #endif +#ifdef AXOM_USE_CALIPER + #define AXOM_ANNOTATE_BEGIN(name) axom::utilities::annotations::begin(name) + #define AXOM_ANNOTATE_END(name) axom::utilities::annotations::end(name) + #define AXOM_ANNOTATE_SCOPE(name) \ + cali::Annotation::Guard cali_autogenerated_guard_name( \ + cali::Annotation("region").begin(std::string(name).c_str())) + + #define AXOM_ANNOTATE_METADATA(name, value, category) \ + axom::utilities::annotations::declare_metadata(name, value, category) + +#else + #define AXOM_ANNOTATE_BEGIN(name) \ + do \ + { \ + } while(false) + #define AXOM_ANNOTATE_END(name) \ + do \ + { \ + } while(false) + #define AXOM_ANNOTATE_SCOPE(name) \ + do \ + { \ + } while(false) + #define AXOM_ANNOTATE_METADATA(name, value, category) \ + do \ + { \ + } while(false) +#endif + namespace axom { namespace utilities @@ -35,10 +64,18 @@ void initialize_adiak(); void initialize_caliper(const std::string& mode, int num_ranks); } // namespace detail +/// Initializes the Annotation API void initialize(const std::string& mode, int num_ranks); +/// Finalizes and flushes the Annotation API void finalize(); +/// Begins an annotation within a region +void begin(const std::string& name); + +/// Ends an annotation within a region +void end(const std::string& name); + /// Declares metadata for this run template void declare_metadata(const std::string& name, From ef72d535997501e8e01dd5e0442e8f1e0ac980ec Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Tue, 2 Apr 2024 19:42:48 -0700 Subject: [PATCH 147/592] Adds helper function to check if annotation modes are valid ... and to print out the valid modes --- src/axom/core/tests/utils_annotations.hpp | 47 ++++++++++++--- src/axom/core/utilities/Annotations.cpp | 72 ++++++++++++++++++++++- src/axom/core/utilities/Annotations.hpp | 25 +++----- 3 files changed, 116 insertions(+), 28 deletions(-) diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp index 9b1bbebfd7..965d7d0024 100644 --- a/src/axom/core/tests/utils_annotations.hpp +++ b/src/axom/core/tests/utils_annotations.hpp @@ -143,13 +143,15 @@ TEST(utils_annotations, print_adiak_metadata) EXPECT_TRUE(default_metadata.find("user") != default_metadata.end()); // but other metadata is not present before we register it - EXPECT_TRUE(default_metadata.find("int_metadata") == default_metadata.end()); - EXPECT_TRUE(default_metadata.find("str_metadata") == default_metadata.end()); + EXPECT_TRUE(default_metadata.find("custom_int_metadata") == + default_metadata.end()); + EXPECT_TRUE(default_metadata.find("custom_str_metadata") == + default_metadata.end()); } // register some metadata - AXOM_ANNOTATE_METADATA("str_metadata", "arbitrary string", ""); - AXOM_ANNOTATE_METADATA("int_metadata", 42, ""); + AXOM_ANNOTATE_METADATA("custom_str_metadata", "arbitrary string", ""); + AXOM_ANNOTATE_METADATA("custom_int_metadata", 42, ""); // check that registered metadata is now present MetadataMap updated_metadata; @@ -159,11 +161,13 @@ TEST(utils_annotations, print_adiak_metadata) EXPECT_TRUE(updated_metadata.find("user") != updated_metadata.end()); // but other metadata is not present before we register it - EXPECT_TRUE(updated_metadata.find("int_metadata") != updated_metadata.end()); - EXPECT_TRUE(updated_metadata.find("str_metadata") != updated_metadata.end()); + EXPECT_TRUE(updated_metadata.find("custom_int_metadata") != + updated_metadata.end()); + EXPECT_TRUE(updated_metadata.find("custom_str_metadata") != + updated_metadata.end()); - EXPECT_EQ(std::to_string(42), updated_metadata["int_metadata"]); - EXPECT_EQ("arbitrary string", updated_metadata["str_metadata"]); + EXPECT_EQ(std::to_string(42), updated_metadata["custom_int_metadata"]); + EXPECT_EQ("arbitrary string", updated_metadata["custom_str_metadata"]); // print the key-value pairs std::cout << "Adiak metadata: \n"; @@ -174,8 +178,24 @@ TEST(utils_annotations, print_adiak_metadata) #endif axom::utilities::annotations::finalize(); +} - SUCCEED(); +TEST(utils_annotations, check_modes) +{ + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("none")); + + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("counts")); + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("file")); + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("trace")); + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("report")); + + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("gputx")); + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("nvprof")); + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("nvtx")); + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("roctx")); + + EXPECT_FALSE( + axom::utilities::annotations::detail::check_mode("_unregistered_")); } TEST(utils_annotations, modes) @@ -209,3 +229,12 @@ TEST(utils_annotations, modes) SUCCEED(); } + +TEST(utils_annotations, print_help) +{ + std::cout << "Caliper help string: \n" + << axom::utilities::annotations::detail::help_string() << std::endl; + + SUCCEED(); +} + diff --git a/src/axom/core/utilities/Annotations.cpp b/src/axom/core/utilities/Annotations.cpp index f5dde1073d..dbc6d70d73 100644 --- a/src/axom/core/utilities/Annotations.cpp +++ b/src/axom/core/utilities/Annotations.cpp @@ -1,6 +1,7 @@ #include "Annotations.hpp" #include "axom/core/utilities/About.hpp" +#include "axom/fmt.hpp" #ifdef AXOM_USE_MPI #include @@ -53,15 +54,18 @@ void initialize_adiak() adiak::user(); adiak::launchdate(); + adiak::launchday(); adiak::executable(); - adiak::cmdline(); adiak::clustername(); + adiak::cmdline(); adiak::jobsize(); + adiak::numhosts(); + adiak::hostlist(); adiak::workdir(); adiak::walltime(); - adiak::cputime(); adiak::systime(); + adiak::cputime(); adiak_initialized = true; #endif @@ -162,10 +166,72 @@ void initialize_caliper(const std::string& mode, int num_ranks) { channel->start(); } - #endif // AXOM_USE_CALIPER } +static const std::set axom_valid_caliper_args = {"counts", + "file", + "gputx", + "none", + "nvprof", + "nvtx", + "report", + "trace", + "roctx"}; + +bool check_mode(const std::string& mode) +{ +#ifdef AXOM_USE_CALIPER + cali::ConfigManager test_mgr; + cali::ConfigManager::argmap_t app_args; + + const bool result = test_mgr.add(mode.c_str(), app_args); + if(!result || test_mgr.error()) + { + std::cerr << axom::fmt::format( + "Bad caliper configuration for mode '{}' -> {}\n", + mode, + test_mgr.error_msg()); + return false; + } + + for(const auto& kv : app_args) + { + const std::string& name = kv.first; + const std::string& val = kv.second; + + if(!name.empty() && !val.empty()) + { + continue; //adiak-style NAME=VAL + } + if(axom_valid_caliper_args.find(name) != axom_valid_caliper_args.end()) + { + continue; //Application argument + } + + return false; + } + return true; +#else + return false; +#endif +} + +std::string help_string() +{ +#ifdef AXOM_USE_CALIPER + const auto built_in = + axom::fmt::format("Built-in configurations: {}", + axom::fmt::join(axom_valid_caliper_args, ",")); + const auto cali_configs = axom::fmt::format( + "Caliper configurations:\n{}", + axom::fmt::join(cali::ConfigManager::get_config_docstrings(), "\n")); + return built_in + "\n" + cali_configs; +#else + return ""; +#endif +} + } // namespace detail void initialize(const std::string& mode, int num_ranks) diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp index 36650171ad..afc705d4ae 100644 --- a/src/axom/core/utilities/Annotations.hpp +++ b/src/axom/core/utilities/Annotations.hpp @@ -34,22 +34,12 @@ axom::utilities::annotations::declare_metadata(name, value, category) #else - #define AXOM_ANNOTATE_BEGIN(name) \ - do \ - { \ - } while(false) - #define AXOM_ANNOTATE_END(name) \ - do \ - { \ - } while(false) - #define AXOM_ANNOTATE_SCOPE(name) \ - do \ - { \ - } while(false) - #define AXOM_ANNOTATE_METADATA(name, value, category) \ - do \ - { \ - } while(false) + // clang-format off + #define AXOM_ANNOTATE_BEGIN(name) do{} while(false) + #define AXOM_ANNOTATE_END(name) do{} while(false) + #define AXOM_ANNOTATE_SCOPE(name) do{} while(false) + #define AXOM_ANNOTATE_METADATA(name, value, category) do{} while(false) + // clang-format on #endif namespace axom @@ -62,6 +52,9 @@ namespace detail { void initialize_adiak(); void initialize_caliper(const std::string& mode, int num_ranks); + +bool check_mode(const std::string& mode); +std::string help_string(); } // namespace detail /// Initializes the Annotation API From d150757fe555d0a824e38b1a7cde02167f18edb2 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Tue, 2 Apr 2024 19:43:42 -0700 Subject: [PATCH 148/592] Incorporates annotation macros into quest containment query example --- src/axom/quest/InOutOctree.hpp | 399 ++++++++++-------- .../quest/examples/containment_driver.cpp | 56 ++- 2 files changed, 263 insertions(+), 192 deletions(-) diff --git a/src/axom/quest/InOutOctree.hpp b/src/axom/quest/InOutOctree.hpp index 4f52f1c9d2..6323678833 100644 --- a/src/axom/quest/InOutOctree.hpp +++ b/src/axom/quest/InOutOctree.hpp @@ -436,14 +436,14 @@ namespace inline std::ostream& operator<<(std::ostream& os, const InOutOctree<3>::CellVertIndices& tvInd) { - os << fmt::format("[{}]", fmt::join(tvInd, ",")); + os << axom::fmt::format("[{}]", fmt::join(tvInd, ",")); return os; } inline std::ostream& operator<<(std::ostream& os, const InOutOctree<3>::CellIndexSet& tSet) { - os << fmt::format("[{}]", fmt::join(tSet, ",")); + os << axom::fmt::format("[{}]", fmt::join(tSet, ",")); return os; } @@ -456,78 +456,115 @@ void InOutOctree::generateIndex() using Timer = axom::utilities::Timer; // Loop through mesh vertices - SLIC_INFO( - fmt::format(" Generating InOutOctree over surface mesh with {} vertices " - "and {} elements.", - m_meshWrapper.numMeshVertices(), - m_meshWrapper.numMeshCells())); + SLIC_INFO(axom::fmt::format( + axom::utilities::locale(), + " Generating InOutOctree over surface mesh with {:L} vertices and {:L} elements.", + m_meshWrapper.numMeshVertices(), + m_meshWrapper.numMeshCells())); Timer timer; + AXOM_ANNOTATE_SCOPE("InOutOctree::generateIndex"); // STEP 1 -- Add mesh vertices to octree - timer.start(); - int numMeshVerts = m_meshWrapper.numMeshVertices(); - for(int idx = 0; idx < numMeshVerts; ++idx) { - insertVertex(idx); + AXOM_ANNOTATE_SCOPE("insert vertices"); + timer.start(); + int numMeshVerts = m_meshWrapper.numMeshVertices(); + for(int idx = 0; idx < numMeshVerts; ++idx) + { + insertVertex(idx); + } + timer.stop(); + m_generationState = INOUTOCTREE_VERTICES_INSERTED; } - timer.stop(); - m_generationState = INOUTOCTREE_VERTICES_INSERTED; - SLIC_INFO( - fmt::format("\t--Inserting vertices took {} seconds.", timer.elapsed())); + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "\t--Inserting vertices took {:.3Lf} seconds.", + timer.elapsed())); // STEP 1(b) -- Update the mesh vertices and cells with after vertex welding from octree - timer.start(); - updateSurfaceMeshVertices(); - timer.stop(); - m_generationState = INOUTOCTREE_MESH_REORDERED; - - SLIC_INFO("\t--Updating mesh took " << timer.elapsed() << " seconds."); + { + AXOM_ANNOTATE_SCOPE("update surface mesh vertices"); + timer.start(); + updateSurfaceMeshVertices(); + timer.stop(); + m_generationState = INOUTOCTREE_MESH_REORDERED; + } + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "\t--Updating mesh took {:.3Lf} seconds.", + timer.elapsed())); SLIC_INFO( - fmt::format(" After inserting vertices, reindexed mesh has {} vertices " - "and {} cells.", - m_meshWrapper.numMeshVertices(), - m_meshWrapper.numMeshCells())); + axom::fmt::format(axom::utilities::locale(), + " After inserting vertices, reindexed mesh has {:L} " + "vertices and {:L} cells.", + m_meshWrapper.numMeshVertices(), + m_meshWrapper.numMeshCells())); #ifdef DUMP_OCTREE_INFO // -- Print some stats about the octree SLIC_INFO("** Octree stats after inserting vertices"); - dumpSurfaceMeshVTK("surfaceMesh"); - dumpOctreeMeshVTK("prOctree"); - printOctreeStats(); + { + AXOM_ANNOTATE_SCOPE("dump stats after inserting vertices"); + dumpSurfaceMeshVTK("surfaceMesh"); + dumpOctreeMeshVTK("prOctree"); + printOctreeStats(); + } #endif - checkValid(); + { + AXOM_ANNOTATE_SCOPE("validate after inserting vertices"); + checkValid(); + } // STEP 2 -- Add mesh cells (segments in 2D; triangles in 3D) to octree - timer.start(); - insertMeshCells(); - timer.stop(); - m_generationState = INOUTOCTREE_ELEMENTS_INSERTED; - SLIC_INFO("\t--Inserting cells took " << timer.elapsed() << " seconds."); + { + AXOM_ANNOTATE_SCOPE("insert mesh cells"); + timer.start(); + insertMeshCells(); + timer.stop(); + m_generationState = INOUTOCTREE_ELEMENTS_INSERTED; + } + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "\t--Inserting cells took {:.3Lf} seconds.", + timer.elapsed())); // STEP 3 -- Color the blocks of the octree // -- Black (in), White(out), Gray(Intersects surface) - timer.start(); - colorOctreeLeaves(); + { + AXOM_ANNOTATE_SCOPE("color octree leaves"); + timer.start(); + colorOctreeLeaves(); - timer.stop(); - m_generationState = INOUTOCTREE_LEAVES_COLORED; - SLIC_INFO("\t--Coloring octree leaves took " << timer.elapsed() << " seconds."); + timer.stop(); + m_generationState = INOUTOCTREE_LEAVES_COLORED; + } + SLIC_INFO( + axom::fmt::format(axom::utilities::locale(), + "\t--Coloring octree leaves took {:.3Lf} seconds.", + timer.elapsed())); // -- Print some stats about the octree #ifdef DUMP_OCTREE_INFO SLIC_INFO("** Octree stats after inserting cells"); - dumpOctreeMeshVTK("pmOctree"); - dumpDifferentColoredNeighborsMeshVTK("differentNeighbors"); - printOctreeStats(); + { + AXOM_ANNOTATE_SCOPE("dump stats after inserting cells"); + dumpOctreeMeshVTK("pmOctree"); + dumpDifferentColoredNeighborsMeshVTK("differentNeighbors"); + printOctreeStats(); + } #endif - checkValid(); - + { + AXOM_ANNOTATE_SCOPE("validate after inserting cells"); + checkValid(); + } // CLEANUP -- Finally, fix up the surface mesh after octree operations - timer.start(); - m_meshWrapper.regenerateSurfaceMesh(); - timer.stop(); - SLIC_INFO("\t--Regenerating the mesh took " << timer.elapsed() << " seconds."); + { + AXOM_ANNOTATE_SCOPE("regenerate surface mesh"); + timer.start(); + m_meshWrapper.regenerateSurfaceMesh(); + timer.stop(); + } + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "\t--Regenerating the mesh took {:.3Lf} seconds.", + timer.elapsed())); SLIC_INFO(" Finished generating the InOutOctree."); } @@ -542,13 +579,14 @@ void InOutOctree::insertVertex(VertexIndex idx, int startingLevel) QUEST_OCTREE_DEBUG_LOG_IF( idx == DEBUG_VERT_IDX, - fmt::format("\t -- inserting pt {} with index {}. " - "Looking at block {} w/ blockBB {} indexing leaf vertex {}", - pt, - idx, - axom::fmt::streamed(block), - this->blockBoundingBox(block), - blkData.dataIndex())); + axom::fmt::format( + "\t -- inserting pt {} with index {}. " + "Looking at block {} w/ blockBB {} indexing leaf vertex {}", + pt, + idx, + axom::fmt::streamed(block), + this->blockBoundingBox(block), + blkData.dataIndex())); if(!blkData.hasData()) { @@ -577,10 +615,10 @@ void InOutOctree::insertVertex(VertexIndex idx, int startingLevel) QUEST_OCTREE_DEBUG_LOG_IF( blkData.dataIndex() == DEBUG_VERT_IDX, - fmt::format("-- vertex {} is indexed in block {}. Leaf vertex is {}", - idx, - axom::fmt::streamed(block), - blkData.dataIndex())); + axom::fmt::format("-- vertex {} is indexed in block {}. Leaf vertex is {}", + idx, + axom::fmt::streamed(block), + blkData.dataIndex())); } template @@ -656,14 +694,14 @@ void InOutOctree::insertMeshCells() QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == blk || DEBUG_BLOCK_2 == blk, - fmt::format("Attempting to insert cells from block {}." - "\n\tDynamic data: {}" - "\n\tBlock data: {}" - "\n\tAbout to finalize? {}", - axom::fmt::streamed(blk), - dynamicLeafData, - blkData, - (!isInternal && !isLeafThatMustRefine ? " yes" : "no"))); + axom::fmt::format("Attempting to insert cells from block {}." + "\n\tDynamic data: {}" + "\n\tBlock data: {}" + "\n\tAbout to finalize? {}", + axom::fmt::streamed(blk), + dynamicLeafData, + blkData, + (!isInternal && !isLeafThatMustRefine ? " yes" : "no"))); // Leaf blocks that don't refine are 'finalized' // -- add them to the current level's relations @@ -685,12 +723,12 @@ void InOutOctree::insertMeshCells() QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == blk || DEBUG_BLOCK_2 == blk, - fmt::format("[Added block {} into tree as a gray leaf]." - "\n\tDynamic data: {}" - "\n\tBlock data: {}", - axom::fmt::streamed(blk), - dynamicLeafData, - blkData)); + axom::fmt::format("[Added block {} into tree as a gray leaf]." + "\n\tDynamic data: {}" + "\n\tBlock data: {}", + axom::fmt::streamed(blk), + dynamicLeafData, + blkData)); } } else @@ -720,7 +758,7 @@ void InOutOctree::insertMeshCells() SLIC_ASSERT_MSG( this->isInternal(blk), - fmt::format( + axom::fmt::format( "Block {} was refined, so it should be marked as internal.", fmt::streamed(blk))); @@ -782,16 +820,16 @@ void InOutOctree::insertMeshCells() QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == childBlk[j] || DEBUG_BLOCK_2 == childBlk[j], //&& tIdx == DEBUG_TRI_IDX - fmt::format("Attempting to insert cell {} @ {} w/ BB {}" - "\n\t into block {} w/ BB {} and data {} " - "\n\tShould add? {}", - tIdx, - spaceTri, - tBB, - axom::fmt::streamed(childBlk[j]), - childBB[j], - *childDataPtr[j], - (shouldAddCell ? " yes" : "no"))); + axom::fmt::format("Attempting to insert cell {} @ {} w/ BB {}" + "\n\t into block {} w/ BB {} and data {} " + "\n\tShould add? {}", + tIdx, + spaceTri, + tBB, + axom::fmt::streamed(childBlk[j]), + childBB[j], + *childDataPtr[j], + (shouldAddCell ? " yes" : "no"))); if(shouldAddCell) { @@ -813,7 +851,7 @@ void InOutOctree::insertMeshCells() QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == childBlk[j] || DEBUG_BLOCK_2 == childBlk[j], //&& tIdx == DEBUG_TRI_IDX - fmt::format( + axom::fmt::format( "Added cell {} @ {} with verts [{}]" "\n\tinto block {} with data {}.", tIdx, @@ -917,20 +955,21 @@ void InOutOctree::colorOctreeLeaves() SLIC_ASSERT_MSG( static_cast(uncoloredBlocks.size()) < prevCount, - fmt::format("Problem coloring leaf blocks at level {}. " - "There are {} blocks that are still not colored. " - "First problem block is: {}", - lev, - uncoloredBlocks.size(), - fmt::streamed(BlockIndex(uncoloredBlocks[0], lev)))); + axom::fmt::format("Problem coloring leaf blocks at level {}. " + "There are {} blocks that are still not colored. " + "First problem block is: {}", + lev, + uncoloredBlocks.size(), + fmt::streamed(BlockIndex(uncoloredBlocks[0], lev)))); } if(!levelLeafMap.empty()) { checkAllLeavesColoredAtLevel(lev); - SLIC_DEBUG(fmt::format("\tColoring level {} took {} seconds.", - lev, - levelTimer.elapsed())); + SLIC_DEBUG(axom::fmt::format(axom::utilities::locale(), + "\tColoring level {} took {:.3Lf} seconds.", + lev, + levelTimer.elapsed())); } } } @@ -941,10 +980,11 @@ bool InOutOctree::colorLeafAndNeighbors(const BlockIndex& leafBlk, { bool isColored = leafData.isColored(); - QUEST_OCTREE_DEBUG_LOG_IF(leafBlk == DEBUG_BLOCK_1 || leafBlk == DEBUG_BLOCK_2, - fmt::format("Trying to color {} with data: {}", - axom::fmt::streamed(leafBlk), - leafData)); + QUEST_OCTREE_DEBUG_LOG_IF( + leafBlk == DEBUG_BLOCK_1 || leafBlk == DEBUG_BLOCK_2, + axom::fmt::format("Trying to color {} with data: {}", + axom::fmt::streamed(leafBlk), + leafData)); if(!isColored) { @@ -959,18 +999,18 @@ bool InOutOctree::colorLeafAndNeighbors(const BlockIndex& leafBlk, QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == neighborBlk || DEBUG_BLOCK_2 == neighborBlk || DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("Spreading color to block {} with data {}, " - "bounding box {} w/ midpoint {}" - "\n\t\t from block {} with data {}, " - "bounding box {} w/ midpoint {}.", - axom::fmt::streamed(leafBlk), - leafData, - this->blockBoundingBox(leafBlk), - this->blockBoundingBox(leafBlk).getCentroid(), - axom::fmt::streamed(neighborBlk), - neighborData, - this->blockBoundingBox(neighborBlk), - this->blockBoundingBox(neighborBlk).getCentroid())); + axom::fmt::format("Spreading color to block {} with data {}, " + "bounding box {} w/ midpoint {}" + "\n\t\t from block {} with data {}, " + "bounding box {} w/ midpoint {}.", + axom::fmt::streamed(leafBlk), + leafData, + this->blockBoundingBox(leafBlk), + this->blockBoundingBox(leafBlk).getCentroid(), + axom::fmt::streamed(neighborBlk), + neighborData, + this->blockBoundingBox(neighborBlk), + this->blockBoundingBox(neighborBlk).getCentroid())); switch(neighborData.color()) { @@ -1004,9 +1044,9 @@ bool InOutOctree::colorLeafAndNeighbors(const BlockIndex& leafBlk, QUEST_OCTREE_DEBUG_LOG_IF( isColored && (DEBUG_BLOCK_1 == neighborBlk || DEBUG_BLOCK_2 == neighborBlk), - fmt::format("Leaf block was colored -- {} now has data {}", - axom::fmt::streamed(leafBlk), - leafData)); + axom::fmt::format("Leaf block was colored -- {} now has data {}", + axom::fmt::streamed(leafBlk), + leafData)); } } } @@ -1025,18 +1065,18 @@ bool InOutOctree::colorLeafAndNeighbors(const BlockIndex& leafBlk, QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == neighborBlk || DEBUG_BLOCK_2 == neighborBlk || DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("Spreading color from block {} with data {}, " - "bounding box {} w/ midpoint {}" - "\n\t\t to block {} with data {}, " - "bounding box {} w/ midpoint {}.", - axom::fmt::streamed(leafBlk), - leafData, - this->blockBoundingBox(leafBlk), - this->blockBoundingBox(leafBlk).getCentroid(), - axom::fmt::streamed(neighborBlk), - neighborData, - this->blockBoundingBox(neighborBlk), - this->blockBoundingBox(neighborBlk).getCentroid())); + axom::fmt::format("Spreading color from block {} with data {}, " + "bounding box {} w/ midpoint {}" + "\n\t\t to block {} with data {}, " + "bounding box {} w/ midpoint {}.", + axom::fmt::streamed(leafBlk), + leafData, + this->blockBoundingBox(leafBlk), + this->blockBoundingBox(leafBlk).getCentroid(), + axom::fmt::streamed(neighborBlk), + neighborData, + this->blockBoundingBox(neighborBlk), + this->blockBoundingBox(neighborBlk).getCentroid())); switch(leafData.color()) { @@ -1070,9 +1110,10 @@ bool InOutOctree::colorLeafAndNeighbors(const BlockIndex& leafBlk, QUEST_OCTREE_DEBUG_LOG_IF( neighborData.isColored() && (DEBUG_BLOCK_1 == neighborBlk || DEBUG_BLOCK_2 == neighborBlk), - fmt::format("Neighbor block was colored -- {} now has data {}", - axom::fmt::streamed(neighborBlk), - neighborData)); + axom::fmt::format( + "Neighbor block was colored -- {} now has data {}", + axom::fmt::streamed(neighborBlk), + neighborData)); } } } @@ -1167,14 +1208,15 @@ typename std::enable_if::type InOutOctree::withinGrayBlock QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("Checking if pt {} is within block {} with data {}, " - "ray is {}, triangle point is {} on triangle with index {}.", - queryPt, - axom::fmt::streamed(leafBlk), - leafData, - ray, - triPt, - idx)); + axom::fmt::format( + "Checking if pt {} is within block {} with data {}, " + "ray is {}, triangle point is {} on triangle with index {}.", + queryPt, + axom::fmt::streamed(leafBlk), + leafData, + ray, + triPt, + idx)); double rayParam = 0; if(primal::intersect(tri, ray, rayParam)) @@ -1184,11 +1226,11 @@ typename std::enable_if::type InOutOctree::withinGrayBlock QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("... intersection for triangle w/ index {} at ray " - "parameter {} at point {}", - tIdx, - minRayParam, - ray.at(minRayParam))); + axom::fmt::format("... intersection for triangle w/ index {} at ray " + "parameter {} at point {}", + tIdx, + minRayParam, + ray.at(minRayParam))); } for(int j = 0; j < numTris; ++j) @@ -1208,11 +1250,12 @@ typename std::enable_if::type InOutOctree::withinGrayBlock QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("... intersection for triangle w/ index {} at ray " - "parameter {} at point {}", - tIdx, - minRayParam, - ray.at(minRayParam))); + axom::fmt::format( + "... intersection for triangle w/ index {} at ray " + "parameter {} at point {}", + tIdx, + minRayParam, + ray.at(minRayParam))); } } } @@ -1283,14 +1326,15 @@ typename std::enable_if::type InOutOctree::withinGrayBlock QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("Checking if pt {} is within block {} with data {}, " - "ray is {}, segment point is {} on segment with index {}.", - queryPt, - axom::fmt::streamed(leafBlk), - leafData, - ray, - segmentPt, - idx)); + axom::fmt::format( + "Checking if pt {} is within block {} with data {}, " + "ray is {}, segment point is {} on segment with index {}.", + queryPt, + axom::fmt::streamed(leafBlk), + leafData, + ray, + segmentPt, + idx)); double rayParam = 0; double segParam = 0; @@ -1302,13 +1346,13 @@ typename std::enable_if::type InOutOctree::withinGrayBlock QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("... intersection for segment w/ index {} " - "at ray parameter {} and segment parameter {} " - "is at point {}", - tIdx, - minRayParam, - minSegParam, - ray.at(minRayParam))); + axom::fmt::format("... intersection for segment w/ index {} " + "at ray parameter {} and segment parameter {} " + "is at point {}", + tIdx, + minRayParam, + minSegParam, + ray.at(minRayParam))); } for(int j = 0; j < numSegments; ++j) @@ -1332,13 +1376,13 @@ typename std::enable_if::type InOutOctree::withinGrayBlock QUEST_OCTREE_DEBUG_LOG_IF( DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("... intersection for segment w/ index {} " - "at ray parameter {} and segment parameter {} " - "is at point {}", - tIdx, - minRayParam, - minSegParam, - ray.at(minRayParam))); + axom::fmt::format("... intersection for segment w/ index {} " + "at ray parameter {} and segment parameter {} " + "is at point {}", + tIdx, + minRayParam, + minSegParam, + ray.at(minRayParam))); } } } @@ -1353,10 +1397,10 @@ typename std::enable_if::type InOutOctree::withinGrayBlock m_meshWrapper.surfaceNormal(tIdx, minSegParam, segmentSet); QUEST_OCTREE_DEBUG_LOG_IF(DEBUG_BLOCK_1 == leafBlk || DEBUG_BLOCK_2 == leafBlk, - fmt::format("... normal {}, ray {}, dot {}", - normal, - ray, - normal.dot(ray.direction()))); + axom::fmt::format("... normal {}, ray {}, dot {}", + normal, + ray, + normal.dot(ray.direction()))); // Query point is inside when the dot product of the normal with ray is positive return normal.dot(ray.direction()) > 0.; @@ -1506,10 +1550,11 @@ bool InOutOctree::within(const SpacePt& pt) const case InOutBlockData::Undetermined: SLIC_ASSERT_MSG( false, - fmt::format("Error -- All leaf blocks must have a color. The color of " - "leafBlock {} was 'Undetermined' when querying point {}", - fmt::streamed(block), - pt)); + axom::fmt::format( + "Error -- All leaf blocks must have a color. The color of " + "leafBlock {} was 'Undetermined' when querying point {}", + fmt::streamed(block), + pt)); break; } } @@ -1567,7 +1612,7 @@ template void InOutOctree::checkValid() const { #ifdef AXOM_DEBUG - SLIC_DEBUG(fmt::format( + SLIC_DEBUG(axom::fmt::format( "Inside InOutOctree::checkValid() to verify state of {} octree", (m_generationState >= INOUTOCTREE_ELEMENTS_INSERTED ? "PM" : "PR"))); diff --git a/src/axom/quest/examples/containment_driver.cpp b/src/axom/quest/examples/containment_driver.cpp index a53dac5657..7da76fd90f 100644 --- a/src/axom/quest/examples/containment_driver.cpp +++ b/src/axom/quest/examples/containment_driver.cpp @@ -72,6 +72,7 @@ class ContainmentDriver #ifdef AXOM_USE_C2C void loadContourMesh(const std::string& inputFile, int segmentsPerKnotSpan) { + AXOM_ANNOTATE_SCOPE("load c2c"); quest::C2CReader reader; reader.setFileName(inputFile); reader.read(); @@ -94,6 +95,7 @@ class ContainmentDriver void loadSTLMesh(const std::string& inputFile) { + AXOM_ANNOTATE_SCOPE("load stl"); quest::STLReader reader; reader.setFileName(inputFile); reader.read(); @@ -110,6 +112,7 @@ class ContainmentDriver /// Computes the bounding box of the surface mesh void computeBounds() { + AXOM_ANNOTATE_SCOPE("compute bounds"); SLIC_ASSERT(m_surfaceMesh != nullptr); GeometricBoundingBox meshBB; @@ -147,6 +150,7 @@ class ContainmentDriver void initializeInOutOctree() { + AXOM_ANNOTATE_SCOPE("generate octree"); m_octree = new InOutOctreeType(m_meshBB, m_surfaceMesh); m_octree->generateIndex(); } @@ -159,6 +163,9 @@ class ContainmentDriver bool isBatched, bool shouldOutputMeshes) { + AXOM_ANNOTATE_SCOPE( + axom::fmt::format("test containment regular grid resolution {}", gridRes)); + const double* low = m_queryBB.getMin().data(); const double* high = m_queryBB.getMax().data(); mint::UniformMesh* umesh = (this->dimension() == 2) @@ -189,16 +196,18 @@ class ContainmentDriver : batchedPointContainment3D(umesh, timer); } - SLIC_INFO(axom::fmt::format( - "\tQuerying {}^{} containment field took {} seconds (@ {} " - "queries per second)", - gridRes, - DIM, - timer.elapsed(), - nnodes / timer.elapsed())); + SLIC_INFO( + axom::fmt::format(axom::utilities::locale(), + "\tQuerying {}^{} containment field took {:.3Lf} " + "seconds (@ {:.0Lf} queries per second)", + gridRes, + DIM, + timer.elapsed(), + nnodes / timer.elapsed())); if(shouldOutputMeshes) { + AXOM_ANNOTATE_SCOPE("write vtk"); std::string fname = axom::fmt::format("gridContainment_{}.vtk", gridRes); mint::write_vtk(umesh, fname); } @@ -333,8 +342,10 @@ class ContainmentDriver { SLIC_ASSERT(m_surfaceMesh != nullptr); - SLIC_INFO("Mesh has " << m_surfaceMesh->getNumberOfNodes() << " nodes and " - << m_surfaceMesh->getNumberOfCells() << " cells."); + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "Mesh has {:L} nodes and {:L} cells.", + m_surfaceMesh->getNumberOfNodes(), + m_surfaceMesh->getNumberOfCells())); SLIC_INFO("Mesh bounding box: " << m_meshBB); SpacePt pt; @@ -405,8 +416,10 @@ class ContainmentDriver // Log the results const int nVerts = m_surfaceMesh->getNumberOfNodes(); - SLIC_INFO( - axom::fmt::format("Mesh has {} vertices and {} cells.", nVerts, nCells)); + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "Mesh has {:L} vertices and {:L} cells.", + nVerts, + nCells)); if(dimension() == 3) { @@ -595,14 +608,19 @@ int main(int argc, char** argv) return app.exit(e); } + axom::utilities::annotations::initialize("report", 1); + const bool is2D = params.isInput2D(); ContainmentDriver<2> driver2D; ContainmentDriver<3> driver3D; /// Load mesh file - SLIC_INFO(axom::fmt::format("{:*^80}", " Loading the mesh ")); - SLIC_INFO("Reading file: " << params.inputFile << "..."); + SLIC_INFO(axom::fmt::format("{:-^80}", " Loading the mesh ")); + SLIC_INFO(axom::fmt::format("Reading file: '{}'...", params.inputFile)); + + AXOM_ANNOTATE_METADATA("dimension", is2D ? 2 : 3, ""); + AXOM_ANNOTATE_BEGIN("init"); if(is2D) { @@ -626,7 +644,7 @@ int main(int argc, char** argv) } /// Create octree over mesh's bounding box - SLIC_INFO(axom::fmt::format("{:*^80}", " Generating the octree ")); + SLIC_INFO(axom::fmt::format("{:-^80}", " Generating the octree ")); if(is2D) { driver2D.initializeInOutOctree(); @@ -642,8 +660,11 @@ int main(int argc, char** argv) mint::write_vtk(driver3D.getSurfaceMesh(), "meldedTriMesh.vtk"); } + AXOM_ANNOTATE_END("init"); + AXOM_ANNOTATE_BEGIN("query"); + /// Query the octree over mesh's bounding box - SLIC_INFO(axom::fmt::format("{:*^80}", " Querying the octree ")); + SLIC_INFO(axom::fmt::format("{:-^80}", " Querying the octree ")); if(is2D) { driver2D.initializeQueryBox(params.queryBoxMins, params.queryBoxMaxs); @@ -671,5 +692,10 @@ int main(int argc, char** argv) } } + AXOM_ANNOTATE_END("query"); + SLIC_INFO(axom::fmt::format("{:-^80}", "")); + + axom::utilities::annotations::finalize(); + return 0; } From 1fc18719bd1ded3f80212266f3516bd18857861b Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Tue, 2 Apr 2024 20:14:12 -0700 Subject: [PATCH 149/592] Utilize user-supplied caliper mode in quest containment example --- src/axom/core/tests/utils_annotations.hpp | 1 - src/axom/quest/InOutOctree.hpp | 10 ++++---- .../quest/examples/containment_driver.cpp | 24 +++++++++++++++++-- 3 files changed, 27 insertions(+), 8 deletions(-) diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp index 965d7d0024..384e09e783 100644 --- a/src/axom/core/tests/utils_annotations.hpp +++ b/src/axom/core/tests/utils_annotations.hpp @@ -237,4 +237,3 @@ TEST(utils_annotations, print_help) SUCCEED(); } - diff --git a/src/axom/quest/InOutOctree.hpp b/src/axom/quest/InOutOctree.hpp index 6323678833..93a8862de9 100644 --- a/src/axom/quest/InOutOctree.hpp +++ b/src/axom/quest/InOutOctree.hpp @@ -456,11 +456,11 @@ void InOutOctree::generateIndex() using Timer = axom::utilities::Timer; // Loop through mesh vertices - SLIC_INFO(axom::fmt::format( - axom::utilities::locale(), - " Generating InOutOctree over surface mesh with {:L} vertices and {:L} elements.", - m_meshWrapper.numMeshVertices(), - m_meshWrapper.numMeshCells())); + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + " Generating InOutOctree over surface mesh with " + "{:L} vertices and {:L} elements.", + m_meshWrapper.numMeshVertices(), + m_meshWrapper.numMeshCells())); Timer timer; AXOM_ANNOTATE_SCOPE("InOutOctree::generateIndex"); diff --git a/src/axom/quest/examples/containment_driver.cpp b/src/axom/quest/examples/containment_driver.cpp index 7da76fd90f..af1d052a1f 100644 --- a/src/axom/quest/examples/containment_driver.cpp +++ b/src/axom/quest/examples/containment_driver.cpp @@ -27,7 +27,6 @@ #include #include #include -#include // for setprecision() namespace mint = axom::mint; namespace primal = axom::primal; @@ -498,6 +497,7 @@ struct Input int samplesPerKnotSpan {25}; std::vector queryBoxMins; std::vector queryBoxMaxs; + std::string annotationMode {"none"}; private: bool m_verboseOutput {false}; @@ -579,6 +579,26 @@ struct Input ->capture_default_str() ->check(axom::CLI::PositiveNumber); + app.add_option("--caliper", annotationMode) + ->description( + "caliper annotation mode. Valid options include 'none' and 'report'. " + "Use 'help' to see full list.") + ->capture_default_str() + ->check([](const std::string& mode) -> std::string { + if(mode == "help") + { + std::cerr << "Valid caliper modes are:\n" + << axom::utilities::annotations::detail::help_string() + << std::endl; + } + return axom::utilities::annotations::detail::check_mode(mode) + ? "" + : fmt::format( + "'{}' invalid caliper mode. " + "Run with '--caliper help' to see all valid options", + mode); + }); + app.get_formatter()->column_width(45); // could throw an exception @@ -608,7 +628,7 @@ int main(int argc, char** argv) return app.exit(e); } - axom::utilities::annotations::initialize("report", 1); + axom::utilities::annotations::initialize(params.annotationMode, 1); const bool is2D = params.isInput2D(); From ad2c450a9bc827df8b48e861c61daa6a2af7dd2c Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Wed, 3 Apr 2024 15:49:58 -0700 Subject: [PATCH 150/592] Only add `--caliper` option to quest containment example when caliper is available --- src/axom/core/utilities/Annotations.hpp | 3 +++ src/axom/quest/examples/containment_driver.cpp | 2 ++ 2 files changed, 5 insertions(+) diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp index afc705d4ae..68f088ac77 100644 --- a/src/axom/core/utilities/Annotations.hpp +++ b/src/axom/core/utilities/Annotations.hpp @@ -7,6 +7,9 @@ * \file Annotations.hpp * * \brief Defines functions to help with performance annotations + * + * The annotations API and macros are always available but they are effectively no-ops + * unless axom is built with caliper and adiak support */ #ifndef AXOM_CORE_ANNOTATIONS_HPP_ diff --git a/src/axom/quest/examples/containment_driver.cpp b/src/axom/quest/examples/containment_driver.cpp index af1d052a1f..84c975f4e6 100644 --- a/src/axom/quest/examples/containment_driver.cpp +++ b/src/axom/quest/examples/containment_driver.cpp @@ -579,6 +579,7 @@ struct Input ->capture_default_str() ->check(axom::CLI::PositiveNumber); +#ifdef AXOM_USE_CALIPER app.add_option("--caliper", annotationMode) ->description( "caliper annotation mode. Valid options include 'none' and 'report'. " @@ -598,6 +599,7 @@ struct Input "Run with '--caliper help' to see all valid options", mode); }); +#endif app.get_formatter()->column_width(45); From bca0281866c2aaaeb8d5f1166e1d7532976ccbae Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Wed, 3 Apr 2024 18:52:59 -0700 Subject: [PATCH 151/592] Adds annotations to quest shaping and example driver Also adjusts regular expressions in shaping tests to allow for locale commas. --- src/axom/quest/IntersectionShaper.hpp | 10 +++- src/axom/quest/SamplingShaper.hpp | 14 ++++- src/axom/quest/Shaper.cpp | 4 ++ src/axom/quest/examples/CMakeLists.txt | 6 +- .../quest/examples/containment_driver.cpp | 2 + src/axom/quest/examples/shaping_driver.cpp | 59 +++++++++++++++++-- 6 files changed, 82 insertions(+), 13 deletions(-) diff --git a/src/axom/quest/IntersectionShaper.hpp b/src/axom/quest/IntersectionShaper.hpp index c12802b5ec..464b0d39e2 100644 --- a/src/axom/quest/IntersectionShaper.hpp +++ b/src/axom/quest/IntersectionShaper.hpp @@ -1358,6 +1358,8 @@ class IntersectionShaper : public Shaper */ void applyReplacementRules(const klee::Shape& shape) override { + AXOM_ANNOTATE_SCOPE("applyReplacementRules"); + switch(m_execPolicy) { #if defined(AXOM_USE_RAJA) && defined(AXOM_USE_UMPIRE) @@ -1386,6 +1388,8 @@ class IntersectionShaper : public Shaper void finalizeShapeQuery() override { + AXOM_ANNOTATE_SCOPE("finalizeShapeQuery"); + // Implementation here -- destroy BVH tree and other shape-based data structures delete m_surfaceMesh; @@ -1400,7 +1404,8 @@ class IntersectionShaper : public Shaper void prepareShapeQuery(klee::Dimensions shapeDimension, const klee::Shape& shape) override { - std::string shapeFormat = shape.getGeometry().getFormat(); + AXOM_ANNOTATE_SCOPE("prepareShapeQuery"); + const std::string shapeFormat = shape.getGeometry().getFormat(); // Save m_percentError and m_level in case refineShape needs to change them // to meet the overall desired error tolerance for the volume. @@ -1448,7 +1453,8 @@ class IntersectionShaper : public Shaper // (default is sequential) void runShapeQuery(const klee::Shape& shape) override { - std::string shapeFormat = shape.getGeometry().getFormat(); + AXOM_ANNOTATE_SCOPE("runShapeQuery"); + const std::string shapeFormat = shape.getGeometry().getFormat(); // Testing separate workflow for Pro/E if(shapeFormat == "proe") diff --git a/src/axom/quest/SamplingShaper.hpp b/src/axom/quest/SamplingShaper.hpp index 215c05ad7c..bcc7aae9a4 100644 --- a/src/axom/quest/SamplingShaper.hpp +++ b/src/axom/quest/SamplingShaper.hpp @@ -203,8 +203,8 @@ class InOutSampler SLIC_INFO( axom::fmt::format(axom::utilities::locale(), - "\t Sampling inout field '{}' took {} seconds (@ " - "{:L} queries per second)", + "\t Sampling inout field '{}' took {:.3Lf} seconds " + "(@ {:L} queries per second)", inoutName, timer.elapsed(), static_cast((NE * nq) / timer.elapsed()))); @@ -395,6 +395,8 @@ class SamplingShaper : public Shaper void prepareShapeQuery(klee::Dimensions shapeDimension, const klee::Shape& shape) override { + AXOM_ANNOTATE_SCOPE("prepareShapeQuery"); + internal::ScopedLogLevelChanger logLevelChanger( this->isVerbose() ? slic::message::Debug : slic::message::Warning); @@ -451,6 +453,8 @@ class SamplingShaper : public Shaper void runShapeQuery(const klee::Shape& shape) override { + AXOM_ANNOTATE_SCOPE("runShapeQuery"); + internal::ScopedLogLevelChanger logLevelChanger( this->isVerbose() ? slic::message::Debug : slic::message::Warning); @@ -476,6 +480,8 @@ class SamplingShaper : public Shaper void applyReplacementRules(const klee::Shape& shape) override { + AXOM_ANNOTATE_SCOPE("applyReplacementRules"); + internal::ScopedLogLevelChanger logLevelChanger( this->isVerbose() ? slic::message::Debug : slic::message::Warning); @@ -570,6 +576,8 @@ class SamplingShaper : public Shaper void finalizeShapeQuery() override { + AXOM_ANNOTATE_SCOPE("finalizeShapeQuery"); + delete m_inoutSampler2D; m_inoutSampler2D = nullptr; @@ -639,6 +647,8 @@ class SamplingShaper : public Shaper void adjustVolumeFractions() override { + AXOM_ANNOTATE_SCOPE("adjustVolumeFractions"); + internal::ScopedLogLevelChanger logLevelChanger( this->isVerbose() ? slic::message::Debug : slic::message::Warning); diff --git a/src/axom/quest/Shaper.cpp b/src/axom/quest/Shaper.cpp index 6c732aac70..e406eac4a7 100644 --- a/src/axom/quest/Shaper.cpp +++ b/src/axom/quest/Shaper.cpp @@ -149,6 +149,8 @@ bool Shaper::isValidFormat(const std::string& format) const void Shaper::loadShape(const klee::Shape& shape) { + AXOM_ANNOTATE_SCOPE("loadShape"); + // Do not save the revolved volume in the default shaper. double revolved = 0.; loadShapeInternal(shape, m_percentError, revolved); @@ -292,6 +294,8 @@ void Shaper::applyTransforms(const klee::Shape& shape) void Shaper::applyTransforms(const numerics::Matrix& transformation) { + AXOM_ANNOTATE_SCOPE("applyTransforms"); + // Apply transformation to coordinates of each vertex in mesh if(!transformation.isIdentity()) { diff --git a/src/axom/quest/examples/CMakeLists.txt b/src/axom/quest/examples/CMakeLists.txt index 550f8d5cc1..1b282049ff 100644 --- a/src/axom/quest/examples/CMakeLists.txt +++ b/src/axom/quest/examples/CMakeLists.txt @@ -143,7 +143,7 @@ if(AXOM_ENABLE_MPI AND MFEM_FOUND AND MFEM_USE_MPI NUM_MPI_TASKS ${_nranks}) # background: 3500; balls: ~373; jacks: ~230; air ~2897 set_tests_properties(${_testname} PROPERTIES - PASS_REGULAR_EXPRESSION "Volume of material 'air' is 2895.") + PASS_REGULAR_EXPRESSION "Volume of material 'air' is 2,?895.") set(_testname quest_shaping_driver_ex_sampling_ball_impact) axom_add_test( @@ -200,7 +200,7 @@ if(AXOM_ENABLE_MPI AND MFEM_FOUND AND MFEM_USE_MPI # bbox volume: 12^3 = 1728; sphere(r=5): ~523.6; sphere(r=2): 33.5 # expected analytic volume when fully resolved: ~1237.9 set_tests_properties(${_testname} PROPERTIES - PASS_REGULAR_EXPRESSION "Volume of material 'void' is 1239.") + PASS_REGULAR_EXPRESSION "Volume of material 'void' is 1,?239.") set(_testname quest_shaping_driver_ex_sampling_plane) axom_add_test( @@ -215,7 +215,7 @@ if(AXOM_ENABLE_MPI AND MFEM_FOUND AND MFEM_USE_MPI # expected volume when fully resolved: 182,209,421.5 # actual value is accurate to about 1% at coarse resolution set_tests_properties(${_testname} PROPERTIES - PASS_REGULAR_EXPRESSION "Volume of material 'air' is 182227963") + PASS_REGULAR_EXPRESSION "Volume of material 'air' is 182,?227,?963") endif() endif() diff --git a/src/axom/quest/examples/containment_driver.cpp b/src/axom/quest/examples/containment_driver.cpp index 84c975f4e6..a80e8769a9 100644 --- a/src/axom/quest/examples/containment_driver.cpp +++ b/src/axom/quest/examples/containment_driver.cpp @@ -631,6 +631,7 @@ int main(int argc, char** argv) } axom::utilities::annotations::initialize(params.annotationMode, 1); + AXOM_ANNOTATE_BEGIN("quest containment example"); const bool is2D = params.isInput2D(); @@ -717,6 +718,7 @@ int main(int argc, char** argv) AXOM_ANNOTATE_END("query"); SLIC_INFO(axom::fmt::format("{:-^80}", "")); + AXOM_ANNOTATE_END("quest containment example"); axom::utilities::annotations::finalize(); return 0; diff --git a/src/axom/quest/examples/shaping_driver.cpp b/src/axom/quest/examples/shaping_driver.cpp index 396dcecaaa..c057b48ff3 100644 --- a/src/axom/quest/examples/shaping_driver.cpp +++ b/src/axom/quest/examples/shaping_driver.cpp @@ -84,6 +84,7 @@ struct Input int refinementLevel {7}; double weldThresh {1e-9}; double percentError {-1.}; + std::string annotationMode {"none"}; std::string backgroundMaterial; @@ -223,6 +224,28 @@ struct Input ->transform( axom::CLI::CheckedTransformer(methodMap, axom::CLI::ignore_case)); +#ifdef AXOM_USE_CALIPER + app.add_option("--caliper", annotationMode) + ->description( + "caliper annotation mode. Valid options include 'none' and 'report'. " + "Use 'help' to see full list.") + ->capture_default_str() + ->check([](const std::string& mode) -> std::string { + if(mode == "help") + { + std::cerr << "Valid caliper modes are:\n" + << axom::utilities::annotations::detail::help_string() + << std::endl; + } + return axom::utilities::annotations::detail::check_mode(mode) + ? "" + : fmt::format( + "'{}' invalid caliper mode. " + "Run with '--caliper help' to see all valid options", + mode); + }); +#endif + // use either an input mesh file or a simple inline Cartesian mesh { auto* mesh_file = @@ -478,11 +501,16 @@ int main(int argc, char** argv) exit(retval); } + axom::utilities::annotations::initialize(params.annotationMode, 1); + AXOM_ANNOTATE_BEGIN("quest shaping example"); + AXOM_ANNOTATE_BEGIN("init"); + //--------------------------------------------------------------------------- // Load the klee shape file and extract some information //--------------------------------------------------------------------------- try { + AXOM_ANNOTATE_SCOPE("read Klee shape set"); params.shapeSet = klee::readShapeSet(params.shapeFile); } catch(klee::KleeError& error) @@ -517,6 +545,7 @@ int main(int argc, char** argv) "the C2C library"); #endif + AXOM_ANNOTATE_BEGIN("load mesh"); //--------------------------------------------------------------------------- // Load the computational mesh //--------------------------------------------------------------------------- @@ -537,11 +566,13 @@ int main(int argc, char** argv) : new mfem::Mesh(*originalMeshDC->GetMesh()); shapingDC.SetMesh(shapingMesh); } + AXOM_ANNOTATE_END("load mesh"); printMeshInfo(shapingDC.GetMesh(), "After loading"); //--------------------------------------------------------------------------- // Initialize the shaping query object //--------------------------------------------------------------------------- + AXOM_ANNOTATE_BEGIN("setup shaping problem"); quest::Shaper* shaper = nullptr; switch(params.shapingMethod) { @@ -604,6 +635,7 @@ int main(int argc, char** argv) //--------------------------------------------------------------------------- if(auto* samplingShaper = dynamic_cast(shaper)) { + AXOM_ANNOTATE_SCOPE("import initial volume fractions"); std::map initial_grid_functions; // Generate a background material (w/ volume fractions set to 1) if user provided a name @@ -634,17 +666,23 @@ int main(int argc, char** argv) // Project provided volume fraction grid functions as quadrature point data samplingShaper->importInitialVolumeFractions(initial_grid_functions); } + AXOM_ANNOTATE_END("setup shaping problem"); + AXOM_ANNOTATE_END("init"); //--------------------------------------------------------------------------- // Process each of the shapes //--------------------------------------------------------------------------- SLIC_INFO(axom::fmt::format("{:=^80}", "Sampling InOut fields for shapes")); + AXOM_ANNOTATE_BEGIN("shaping"); for(const auto& shape : params.shapeSet.getShapes()) { - std::string shapeFormat = shape.getGeometry().getFormat(); - SLIC_INFO( - axom::fmt::format("{:-^80}", - axom::fmt::format("Shape format is {}", shapeFormat))); + const std::string shapeFormat = shape.getGeometry().getFormat(); + SLIC_INFO(axom::fmt::format( + "{:-^80}", + axom::fmt::format("Processing shape '{}' of material '{}' (format '{}')", + shape.getName(), + shape.getMaterial(), + shapeFormat))); // Load the shape from file. This also applies any transformations. shaper->loadShape(shape); @@ -666,10 +704,12 @@ int main(int argc, char** argv) shaper->finalizeShapeQuery(); slic::flushStreams(); } + AXOM_ANNOTATE_END("shaping"); //--------------------------------------------------------------------------- // After shaping in all shapes, generate/adjust the material volume fractions //--------------------------------------------------------------------------- + AXOM_ANNOTATE_BEGIN("adjust"); SLIC_INFO( axom::fmt::format("{:=^80}", "Generating volume fraction fields for materials")); @@ -694,10 +734,13 @@ int main(int argc, char** argv) const double volume = shaper->allReduceSum(*gf * vol_form); - SLIC_INFO( - axom::fmt::format("Volume of material '{}' is {}", mat_name, volume)); + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "Volume of material '{}' is {:.3Lf}", + mat_name, + volume)); } } + AXOM_ANNOTATE_END("adjust"); //--------------------------------------------------------------------------- // Save meshes and fields @@ -711,6 +754,10 @@ int main(int argc, char** argv) //--------------------------------------------------------------------------- // Cleanup and exit //--------------------------------------------------------------------------- + SLIC_INFO(axom::fmt::format("{:-^80}", "")); + AXOM_ANNOTATE_END("quest shaping example"); + axom::utilities::annotations::finalize(); + finalizeLogger(); #ifdef AXOM_USE_MPI MPI_Finalize(); From ed985dea448ab5e8ea239a2c1c7f9f6d3adbe8f3 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Wed, 3 Apr 2024 21:01:17 -0700 Subject: [PATCH 152/592] Fixes for configurations without caliper and/or adiak --- src/axom/core/tests/utils_annotations.hpp | 26 +++++++++++------------ src/axom/core/utilities/Annotations.cpp | 9 +++++++- src/axom/core/utilities/Annotations.hpp | 7 ++++++ 3 files changed, 27 insertions(+), 15 deletions(-) diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp index 384e09e783..9c6bef4cd0 100644 --- a/src/axom/core/tests/utils_annotations.hpp +++ b/src/axom/core/tests/utils_annotations.hpp @@ -127,11 +127,10 @@ TEST(utils_annotations, initialize_finalize) TEST(utils_annotations, print_adiak_metadata) { - using MetadataMap = std::map; - axom::utilities::annotations::initialize("none", 1); #ifdef AXOM_USE_ADIAK + using MetadataMap = std::map; { MetadataMap default_metadata; adiak_list_namevals(1, @@ -175,7 +174,7 @@ TEST(utils_annotations, print_adiak_metadata) { std::cout << axom::fmt::format("- {}: {}\n", kv.first, kv.second); } -#endif +#endif // AXOM_USE_ADIAK axom::utilities::annotations::finalize(); } @@ -184,18 +183,17 @@ TEST(utils_annotations, check_modes) { EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("none")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("counts")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("file")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("trace")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("report")); - - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("gputx")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("nvprof")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("nvtx")); - EXPECT_TRUE(axom::utilities::annotations::detail::check_mode("roctx")); + for(const auto &m : + {"counts", "file", "trace", "report", "gputx", "nvprof", "nvtx", "roctx"}) + { +#ifdef AXOM_USE_CALIPER + EXPECT_TRUE(axom::utilities::annotations::detail::check_mode(m)); +#else + EXPECT_FALSE(axom::utilities::annotations::detail::check_mode(m)); +#endif + } - EXPECT_FALSE( - axom::utilities::annotations::detail::check_mode("_unregistered_")); + EXPECT_FALSE(axom::utilities::annotations::detail::check_mode("_other_")); } TEST(utils_annotations, modes) diff --git a/src/axom/core/utilities/Annotations.cpp b/src/axom/core/utilities/Annotations.cpp index dbc6d70d73..1835b3e233 100644 --- a/src/axom/core/utilities/Annotations.cpp +++ b/src/axom/core/utilities/Annotations.cpp @@ -16,6 +16,8 @@ #endif #endif +#include + #ifdef AXOM_USE_CALIPER namespace cali { @@ -166,6 +168,9 @@ void initialize_caliper(const std::string& mode, int num_ranks) { channel->start(); } +#else + AXOM_UNUSED_VAR(mode); + AXOM_UNUSED_VAR(num_ranks); #endif // AXOM_USE_CALIPER } @@ -213,7 +218,7 @@ bool check_mode(const std::string& mode) } return true; #else - return false; + return (mode == "none") ? true : false; #endif } @@ -271,6 +276,8 @@ void begin(const std::string& name) cali::Caliper().begin( cali::region_attr, cali::Variant(CALI_TYPE_STRING, name.c_str(), name.length())); +#else + AXOM_UNUSED_VAR(name); #endif } diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp index 68f088ac77..6d895a454a 100644 --- a/src/axom/core/utilities/Annotations.hpp +++ b/src/axom/core/utilities/Annotations.hpp @@ -16,6 +16,7 @@ #define AXOM_CORE_ANNOTATIONS_HPP_ #include "axom/config.hpp" +#include "axom/core/Macros.hpp" #ifdef AXOM_USE_ADIAK #include "adiak.hpp" @@ -26,6 +27,8 @@ #include "caliper/cali.h" #endif +#include + #ifdef AXOM_USE_CALIPER #define AXOM_ANNOTATE_BEGIN(name) axom::utilities::annotations::begin(name) #define AXOM_ANNOTATE_END(name) axom::utilities::annotations::end(name) @@ -81,6 +84,10 @@ void declare_metadata(const std::string& name, #ifdef AXOM_USE_ADIAK detail::initialize_adiak(); adiak::value(name, value, adiak_general, category); +#else + AXOM_UNUSED_VAR(name); + AXOM_UNUSED_VAR(value); + AXOM_UNUSED_VAR(category); #endif } From baaae5d0f6eb6bf55823ab82b20ad6ff9875f885 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Thu, 4 Apr 2024 16:15:17 -0700 Subject: [PATCH 153/592] Moves new annotation macros to core's `AnnotationMacros.hpp` file --- src/axom/core/tests/utils_annotations.hpp | 1 + src/axom/core/utilities/AnnotationMacros.hpp | 48 ++++++++++++++++++++ src/axom/core/utilities/Annotations.hpp | 19 -------- 3 files changed, 49 insertions(+), 19 deletions(-) diff --git a/src/axom/core/tests/utils_annotations.hpp b/src/axom/core/tests/utils_annotations.hpp index 9c6bef4cd0..4bc9b58a84 100644 --- a/src/axom/core/tests/utils_annotations.hpp +++ b/src/axom/core/tests/utils_annotations.hpp @@ -8,6 +8,7 @@ #include "axom/config.hpp" #include "axom/core/Macros.hpp" #include "axom/core/utilities/Annotations.hpp" +#include "axom/core/utilities/AnnotationMacros.hpp" #include "axom/fmt.hpp" diff --git a/src/axom/core/utilities/AnnotationMacros.hpp b/src/axom/core/utilities/AnnotationMacros.hpp index 7ddbe53bda..0b49a45080 100644 --- a/src/axom/core/utilities/AnnotationMacros.hpp +++ b/src/axom/core/utilities/AnnotationMacros.hpp @@ -7,6 +7,7 @@ #define AXOM_ANNOTATION_MACROS_HPP_ #include "axom/config.hpp" +#include "axom/core/utilities/Annotations.hpp" // Note: Caliper integration into Axom is underway. // Axom's annotations will soon rely on caliper. @@ -95,4 +96,51 @@ } while(false) #endif +#ifdef AXOM_USE_CALIPER + + /*! + * \def AXOM_ANNOTATE_BEGIN( name ) + * + * \brief This macro is used to mark the beginning of an annotated region + * \note \a AXOM_ANNOTATE_BEGIN must be closed with a matching \a AXOM_ANNOTATE_END + */ + #define AXOM_ANNOTATE_BEGIN(name) axom::utilities::annotations::begin(name) + + /*! + * \def AXOM_ANNOTATE_END( name ) + * + * \brief This macro is used to mark the end of an annotated region + * \note \a AXOM_ANNOTATE_END must close a matching \a AXOM_ANNOTATE_BEGIN + */ + #define AXOM_ANNOTATE_END(name) axom::utilities::annotations::end(name) + + /*! + * \def AXOM_ANNOTATE_SCOPE( name ) + * \brief This macro is used to annotate a region within an enclosing scope + * and is automatically closed when its enclosing scope ends + * + * \warning The \a AXOM_ANNOTATE_SCOPE can only be called once within a given scope. + */ + #define AXOM_ANNOTATE_SCOPE(name) \ + cali::Annotation::Guard cali_autogenerated_guard_name( \ + cali::Annotation("region").begin(std::string(name).c_str())) + + /*! + * \def AXOM_ANNOTATE_METADATA( name, value, category ) + * \brief This macro is used to add metadata to the run and is added to caliper output + * in modes that generate an output file. + * \see axom::utilities::annotations::declare_metadata + */ + #define AXOM_ANNOTATE_METADATA(name, value, category) \ + axom::utilities::annotations::declare_metadata(name, value, category) + +#else + // clang-format off + #define AXOM_ANNOTATE_BEGIN(name) do{} while(false) + #define AXOM_ANNOTATE_END(name) do{} while(false) + #define AXOM_ANNOTATE_SCOPE(name) do{} while(false) + #define AXOM_ANNOTATE_METADATA(name, value, category) do{} while(false) + // clang-format on +#endif + #endif diff --git a/src/axom/core/utilities/Annotations.hpp b/src/axom/core/utilities/Annotations.hpp index 6d895a454a..f1d3245e6f 100644 --- a/src/axom/core/utilities/Annotations.hpp +++ b/src/axom/core/utilities/Annotations.hpp @@ -29,25 +29,6 @@ #include -#ifdef AXOM_USE_CALIPER - #define AXOM_ANNOTATE_BEGIN(name) axom::utilities::annotations::begin(name) - #define AXOM_ANNOTATE_END(name) axom::utilities::annotations::end(name) - #define AXOM_ANNOTATE_SCOPE(name) \ - cali::Annotation::Guard cali_autogenerated_guard_name( \ - cali::Annotation("region").begin(std::string(name).c_str())) - - #define AXOM_ANNOTATE_METADATA(name, value, category) \ - axom::utilities::annotations::declare_metadata(name, value, category) - -#else - // clang-format off - #define AXOM_ANNOTATE_BEGIN(name) do{} while(false) - #define AXOM_ANNOTATE_END(name) do{} while(false) - #define AXOM_ANNOTATE_SCOPE(name) do{} while(false) - #define AXOM_ANNOTATE_METADATA(name, value, category) do{} while(false) - // clang-format on -#endif - namespace axom { namespace utilities From 6d7322284abe36f215a78c62bd5eee7887fbbec6 Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Thu, 4 Apr 2024 18:25:12 -0700 Subject: [PATCH 154/592] Removes old annotation macros `AXOM_PERF_MARK_FUNCTION` and `AXOM_PERF_MARK_SECTION` Use `AXOM_ANNOTATION_{BEGIN,END,SCOPE}` instead. --- src/axom/core/utilities/AnnotationMacros.hpp | 95 +------ src/axom/quest/IntersectionShaper.hpp | 204 ++++++++------- src/axom/quest/MarchingCubes.cpp | 6 +- src/axom/quest/MeshTester.hpp | 6 +- src/axom/quest/SignedDistance.hpp | 94 ++++--- .../detail/DistributedClosestPointImpl.hpp | 7 +- src/axom/quest/detail/MarchingCubesImpl.hpp | 95 +++---- .../quest/examples/containment_driver.cpp | 1 + .../examples/quest_marching_cubes_example.cpp | 2 +- src/axom/quest/examples/shaping_driver.cpp | 12 +- src/axom/spin/BVH.hpp | 8 +- .../spin/internal/linear_bvh/RadixTree.hpp | 2 +- .../internal/linear_bvh/build_radix_tree.hpp | 42 +-- src/axom/spin/policy/LinearBVH.hpp | 240 +++++++++--------- 14 files changed, 376 insertions(+), 438 deletions(-) diff --git a/src/axom/core/utilities/AnnotationMacros.hpp b/src/axom/core/utilities/AnnotationMacros.hpp index 0b49a45080..a4099a0e3b 100644 --- a/src/axom/core/utilities/AnnotationMacros.hpp +++ b/src/axom/core/utilities/AnnotationMacros.hpp @@ -9,93 +9,6 @@ #include "axom/config.hpp" #include "axom/core/utilities/Annotations.hpp" -// Note: Caliper integration into Axom is underway. -// Axom's annotations will soon rely on caliper. - -#include "axom/core/utilities/nvtx/interface.hpp" - -/*! - * \def AXOM_PERF_MARK_FUNCTION( name ) - * - * \brief The AXOM_PERF_MARK_FUNCTION is used to annotate a function. - * - * \param [in] name a user-supplied name to annotate the function. - * - * \note Typically, the AXOM_PERF_MARK_FUNCTION is placed in the beginning of - * the function to annotate. - * - * - * \warning The AXOM_PERF_MARK_FUNCTION can only be called once within a given - * (function) scope. - * - * - * Usage Example: - * \code - * void foo( ) - * { - * AXOM_PERF_MARK_FUNCTION( "foo" ); - * ... - * } - * \endcode - */ -#if defined(AXOM_USE_ANNOTATIONS) - #define AXOM_PERF_MARK_FUNCTION(__func_name__) \ - AXOM_NVTX_FUNCTION(__func_name__) -#else - #define AXOM_PERF_MARK_FUNCTION(__func_name__) -#endif - -/*! - * \def AXOM_PERF_MARK_SECTION( name ) - * - * \brief The AXOM_PERF_MARK_SECTION macro is used to annotate sections of code. - * - * \note In contrast to the AXOM_PERF_MARK_FUNCTION, the AXOM_PERF_MARK_SECTION - * macro is used to annotate sections of code at a much finer granularity - * within a given function and it may be use in conjunction with the - * AXOM_PERF_MARK_FUNCTION macro. - * - * \warning Variables declared within an AXOM_PERF_MARK_SECTION are only defined - * within the scope of the annotated section. - * - * \warning The AXOM_PERF_MARK_SECTION macro may not be called in a nested - * fashion, i.e., within another AXOM_PERF_MARK_SECTION - * - * Usage Example: - * \code - * void foo( ) - * { - * AXOM_PERF_MARK_FUNCTION( "foo" ); - * - * AXOM_PERF_MARK_SECTION( "kernel_A", - * axom::for_all( 0, N, AXOM_LAMBDA(axom::IndexType idx) - * { - * ... - * } ); - * ); - * - * AXOM_PERF_MARK_SECTION( "kernel_B", - * axom::for_all( 0, N, AXOM_LAMBDA(axom::IndexType idx) - * { - * ... - * } ); - * ); - * - * } - * \endcode - * - */ -#if defined(AXOM_USE_ANNOTATIONS) - #define AXOM_PERF_MARK_SECTION(__name__, ...) \ - AXOM_NVTX_SECTION(__name__, __VA_ARGS__) -#else - #define AXOM_PERF_MARK_SECTION(__name__, ...) \ - do \ - { \ - __VA_ARGS__ \ - } while(false) -#endif - #ifdef AXOM_USE_CALIPER /*! @@ -134,13 +47,15 @@ #define AXOM_ANNOTATE_METADATA(name, value, category) \ axom::utilities::annotations::declare_metadata(name, value, category) -#else +#else // AXOM_USE_CALIPER + // clang-format off #define AXOM_ANNOTATE_BEGIN(name) do{} while(false) #define AXOM_ANNOTATE_END(name) do{} while(false) #define AXOM_ANNOTATE_SCOPE(name) do{} while(false) #define AXOM_ANNOTATE_METADATA(name, value, category) do{} while(false) // clang-format on -#endif -#endif +#endif // AXOM_USE_CALIPER + +#endif // AXOM_ANNOTATION_MACROS_HPP_ diff --git a/src/axom/quest/IntersectionShaper.hpp b/src/axom/quest/IntersectionShaper.hpp index 464b0d39e2..1828318c2c 100644 --- a/src/axom/quest/IntersectionShaper.hpp +++ b/src/axom/quest/IntersectionShaper.hpp @@ -461,7 +461,8 @@ class IntersectionShaper : public Shaper SLIC_INFO(axom::fmt::format( "{:-^80}", axom::fmt::format( - " Checking contour with {} points for degenerate segments ", + axom::utilities::locale(), + " Checking contour with {:L} points for degenerate segments", pointcount))); // The mesh points are filtered like we want. We need only copy @@ -487,7 +488,8 @@ class IntersectionShaper : public Shaper "Discretization of contour has failed. Check that contour is valid"); SLIC_INFO( - axom::fmt::format("Contour has been discretized into {} octahedra ", + axom::fmt::format(axom::utilities::locale(), + "Contour has been discretized into {:L} octahedra ", m_octcount)); if(this->isVerbose()) @@ -833,19 +835,20 @@ class IntersectionShaper : public Shaper using TetHexArray = axom::StackArray; - AXOM_PERF_MARK_SECTION("init_tets", - axom::for_all( - NE, - AXOM_LAMBDA(axom::IndexType i) { - TetHexArray cur_tets; - hexes_view[i].triangulate(cur_tets); + { + AXOM_ANNOTATE_SCOPE("init_tets"); + axom::for_all( + NE, + AXOM_LAMBDA(axom::IndexType i) { + TetHexArray cur_tets; + hexes_view[i].triangulate(cur_tets); - for(int j = 0; j < NUM_TETS_PER_HEX; j++) - { - tets_from_hexes_view[i * NUM_TETS_PER_HEX + j] = - cur_tets[j]; - } - });); + for(int j = 0; j < NUM_TETS_PER_HEX; j++) + { + tets_from_hexes_view[i * NUM_TETS_PER_HEX + j] = cur_tets[j]; + } + }); + } SLIC_INFO( axom::fmt::format("{:-^80}", @@ -853,25 +856,27 @@ class IntersectionShaper : public Shaper const auto offsets_v = offsets.view(); const auto candidates_v = candidates.view(); - AXOM_PERF_MARK_SECTION("init_candidates", - axom::for_all( - NE, - AXOM_LAMBDA(axom::IndexType i) { - for(int j = 0; j < counts_v[i]; j++) - { - int shapeIdx = candidates_v[offsets_v[i] + j]; - - for(int k = 0; k < NUM_TETS_PER_HEX; k++) - { - IndexType idx = RAJA::atomicAdd( - &newTotalCandidates_view[0], - IndexType {1}); - hex_indices[idx] = i; - shape_candidates[idx] = shapeIdx; - tet_indices[idx] = i * NUM_TETS_PER_HEX + k; - } - } - });); + { + AXOM_ANNOTATE_SCOPE("init_candidates"); + axom::for_all( + NE, + AXOM_LAMBDA(axom::IndexType i) { + for(int j = 0; j < counts_v[i]; j++) + { + int shapeIdx = candidates_v[offsets_v[i] + j]; + + for(int k = 0; k < NUM_TETS_PER_HEX; k++) + { + IndexType idx = + RAJA::atomicAdd(&newTotalCandidates_view[0], + IndexType {1}); + hex_indices[idx] = i; + shape_candidates[idx] = shapeIdx; + tet_indices[idx] = i * NUM_TETS_PER_HEX + k; + } + } + }); + } // Overlap volume is the volume of clip(oct,tet) m_overlap_volumes = axom::Array(NE, NE); @@ -893,13 +898,14 @@ class IntersectionShaper : public Shaper SLIC_INFO( axom::fmt::format("{:-^80}", " Calculating hexahedron element volume ")); - AXOM_PERF_MARK_SECTION("hex_volume", - axom::for_all( - NE, - AXOM_LAMBDA(axom::IndexType i) { - hex_volumes_view[i] = hexes_view[i].volume(); - });); - + { + AXOM_ANNOTATE_SCOPE("hex_volume"); + axom::for_all( + NE, + AXOM_LAMBDA(axom::IndexType i) { + hex_volumes_view[i] = hexes_view[i].volume(); + }); + } SLIC_INFO(axom::fmt::format( "{:-^80}", " Calculating element overlap volume from each tet-shape pair ")); @@ -907,8 +913,8 @@ class IntersectionShaper : public Shaper constexpr double EPS = 1e-10; constexpr bool tryFixOrientation = true; - AXOM_PERF_MARK_SECTION( - "tet_shape_volume", + { + AXOM_ANNOTATE_SCOPE("tet_shape_volume"); axom::for_all( newTotalCandidates_view[0], AXOM_LAMBDA(axom::IndexType i) { @@ -927,7 +933,8 @@ class IntersectionShaper : public Shaper RAJA::atomicAdd(overlap_volumes_view.data() + index, poly.volume()); } - });); + }); + } RAJA::ReduceSum totalOverlap(0); RAJA::ReduceSum totalHex(0); @@ -939,9 +946,11 @@ class IntersectionShaper : public Shaper totalHex += hex_volumes_view[i]; }); - SLIC_INFO(axom::fmt::format("Total overlap volume with shape is {}", + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "Total overlap volume with shape is {:.3Lf}", this->allReduceSum(totalOverlap))); - SLIC_INFO(axom::fmt::format("Total mesh volume is {}", + SLIC_INFO(axom::fmt::format(axom::utilities::locale(), + "Total mesh volume is {:.3Lf}", this->allReduceSum(totalHex))); // Deallocate no longer needed variables @@ -1089,25 +1098,25 @@ class IntersectionShaper : public Shaper cfgf = newVolFracGridFunction(); this->getDC()->RegisterField(fieldName, cfgf); - AXOM_PERF_MARK_SECTION("compute_free", { - int dataSize = cfgf->Size(); - GridFunctionView cfView(cfgf); + AXOM_ANNOTATE_SCOPE("compute_free"); + + int dataSize = cfgf->Size(); + GridFunctionView cfView(cfgf); + axom::for_all( + dataSize, + AXOM_LAMBDA(axom::IndexType i) { cfView[i] = 1.; }); + + // Iterate over all materials and subtract off their VFs from cfgf. + for(auto& gf : m_vf_grid_functions) + { + GridFunctionView matVFView(gf, false); axom::for_all( dataSize, - AXOM_LAMBDA(axom::IndexType i) { cfView[i] = 1.; }); - - // Iterate over all materials and subtract off their VFs from cfgf. - for(auto& gf : m_vf_grid_functions) - { - GridFunctionView matVFView(gf, false); - axom::for_all( - dataSize, - AXOM_LAMBDA(axom::IndexType i) { - cfView[i] -= matVFView[i]; - cfView[i] = (cfView[i] < 0.) ? 0. : cfView[i]; - }); - } - }); + AXOM_LAMBDA(axom::IndexType i) { + cfView[i] -= matVFView[i]; + cfView[i] = (cfView[i] < 0.) ? 0. : cfView[i]; + }); + } } return cfgf; } @@ -1264,45 +1273,46 @@ class IntersectionShaper : public Shaper if(!shape.getMaterialsReplaced().empty()) { // Replaces - We'll sum up the VFs that we can replace in a zone. - AXOM_PERF_MARK_SECTION("compute_vf_writable", { + AXOM_ANNOTATE_SCOPE("compute_vf_writable"); + axom::for_all( + dataSize, + AXOM_LAMBDA(axom::IndexType i) { vf_writable[i] = 0.; }); + for(const auto& name : shape.getMaterialsReplaced()) + { + auto mat = getMaterial(name); + GridFunctionView matVFView(mat.first, false); axom::for_all( dataSize, - AXOM_LAMBDA(axom::IndexType i) { vf_writable[i] = 0.; }); - for(const auto& name : shape.getMaterialsReplaced()) - { - auto mat = getMaterial(name); - GridFunctionView matVFView(mat.first, false); - axom::for_all( - dataSize, - AXOM_LAMBDA(axom::IndexType i) { - vf_writable[i] += matVFView[i]; - vf_writable[i] = (vf_writable[i] > 1.) ? 1. : vf_writable[i]; - }); - } - }); + AXOM_LAMBDA(axom::IndexType i) { + vf_writable[i] += matVFView[i]; + vf_writable[i] = (vf_writable[i] > 1.) ? 1. : vf_writable[i]; + }); + } } else { // Does not replace. We can replace all except for listed mats. - AXOM_PERF_MARK_SECTION("compute_vf_writable", { + AXOM_ANNOTATE_SCOPE("compute_vf_writable"); + axom::for_all( + dataSize, + AXOM_LAMBDA(axom::IndexType i) { vf_writable[i] = 1.; }); + + for(auto& gf : excludeVFs) + { + GridFunctionView matVFView(gf, false); axom::for_all( dataSize, - AXOM_LAMBDA(axom::IndexType i) { vf_writable[i] = 1.; }); - for(auto& gf : excludeVFs) - { - GridFunctionView matVFView(gf, false); - axom::for_all( - dataSize, - AXOM_LAMBDA(axom::IndexType i) { - vf_writable[i] -= matVFView[i]; - vf_writable[i] = (vf_writable[i] < 0.) ? 0. : vf_writable[i]; - }); - } - }); + AXOM_LAMBDA(axom::IndexType i) { + vf_writable[i] -= matVFView[i]; + vf_writable[i] = (vf_writable[i] < 0.) ? 0. : vf_writable[i]; + }); + } } // Compute the volume fractions for the current shape's material. - AXOM_PERF_MARK_SECTION("compute_vf", { + { + AXOM_ANNOTATE_SCOPE("compute_vf"); + GridFunctionView matVFView(matVF.first); GridFunctionView shapeVFView(shapeVolFrac); @@ -1327,11 +1337,11 @@ class IntersectionShaper : public Shaper // Store the max shape VF. shapeVFView[i] = vf; }); - }); + } - // Iterate over updateVFs to subtract off VFs we allocated to the - // current shape's material. - AXOM_PERF_MARK_SECTION("update_vf", { + // Iterate over updateVFs to subtract off VFs we allocated to the current shape's material. + { + AXOM_ANNOTATE_SCOPE("update_vf"); for(auto& gf : updateVFs) { GridFunctionView matVFView(gf); @@ -1348,7 +1358,7 @@ class IntersectionShaper : public Shaper vf_subtract[i] -= s; }); } - }); + } } #endif @@ -1610,7 +1620,9 @@ class IntersectionShaper : public Shaper SLIC_INFO(axom::fmt::format( "{:-^80}", - axom::fmt::format(" Discretizing contour with {} points ", polyline_size))); + axom::fmt::format(axom::utilities::locale(), + " Discretizing contour with {:L} points ", + polyline_size))); // Flip point order if(flip) diff --git a/src/axom/quest/MarchingCubes.cpp b/src/axom/quest/MarchingCubes.cpp index bb03795d02..c11ee0fdb6 100644 --- a/src/axom/quest/MarchingCubes.cpp +++ b/src/axom/quest/MarchingCubes.cpp @@ -102,7 +102,7 @@ void MarchingCubes::setFunctionField(const std::string& fcnField) void MarchingCubes::computeIsocontour(double contourVal) { - AXOM_PERF_MARK_FUNCTION("MarchingCubes::computeIsoContour"); + AXOM_ANNOTATE_SCOPE("MarchingCubes::computeIsoContour"); // Mark and scan domains while adding up their // facet counts to get the total facet counts. @@ -179,7 +179,7 @@ void MarchingCubes::populateContourMesh( const std::string& cellIdField, const std::string& domainIdField) const { - AXOM_PERF_MARK_FUNCTION("MarchingCubes::populateContourMesh"); + AXOM_ANNOTATE_SCOPE("MarchingCubes::populateContourMesh"); if(!cellIdField.empty() && !mesh.hasField(cellIdField, axom::mint::CELL_CENTERED)) { @@ -259,7 +259,7 @@ void MarchingCubes::populateContourMesh( void MarchingCubes::allocateOutputBuffers() { - AXOM_PERF_MARK_FUNCTION("MarchingCubes::allocateOutputBuffers"); + AXOM_ANNOTATE_SCOPE("MarchingCubes::allocateOutputBuffers"); if(!m_singles.empty()) { int ndim = m_singles[0]->spatialDimension(); diff --git a/src/axom/quest/MeshTester.hpp b/src/axom/quest/MeshTester.hpp index c9c1f71e4d..cb133e4e94 100644 --- a/src/axom/quest/MeshTester.hpp +++ b/src/axom/quest/MeshTester.hpp @@ -70,7 +70,7 @@ void findTriMeshIntersectionsBVH( std::vector& degenerateIndices, double intersectionThreshold = 1E-8) { - AXOM_PERF_MARK_FUNCTION("findTriMeshIntersectionsBVH"); + AXOM_ANNOTATE_SCOPE("findTriMeshIntersectionsBVH"); SLIC_INFO("Running BVH intersection algorithm " << " in execution Space: " @@ -122,7 +122,7 @@ void findTriMeshIntersectionsImplicitGrid( int spatialIndexResolution = 0, double intersectionThreshold = 1E-8) { - AXOM_PERF_MARK_FUNCTION("findTriMeshIntersectionsImplicitGrid"); + AXOM_ANNOTATE_SCOPE("findTriMeshIntersectionsImplicitGrid"); SLIC_INFO("Running ImplicitGrid intersection algorithm " << " in execution Space: " @@ -175,7 +175,7 @@ void findTriMeshIntersectionsUniformGrid( int spatialIndexResolution = 0, double intersectionThreshold = 1E-8) { - AXOM_PERF_MARK_FUNCTION("findTriMeshIntersectionsUniformGrid"); + AXOM_ANNOTATE_SCOPE("findTriMeshIntersectionsUniformGrid"); SLIC_INFO("Running UniformGrid intersection algorithm " << " in execution Space: " diff --git a/src/axom/quest/SignedDistance.hpp b/src/axom/quest/SignedDistance.hpp index d6a5756837..b8851a85c9 100644 --- a/src/axom/quest/SignedDistance.hpp +++ b/src/axom/quest/SignedDistance.hpp @@ -430,7 +430,7 @@ template bool SignedDistance::setMesh(const mint::Mesh* surfaceMesh, int allocatorID) { - AXOM_PERF_MARK_FUNCTION("SignedDistance::setMesh"); + AXOM_ANNOTATE_SCOPE("SignedDistance::setMesh"); SLIC_ASSERT(surfaceMesh != nullptr); m_surfaceMesh = surfaceMesh; @@ -567,57 +567,55 @@ inline void SignedDistance::computeDistances( AXOM_UNUSED_VAR(result); SLIC_CHECK_MSG(result, "Input mesh is not an unstructured surface mesh"); - AXOM_PERF_MARK_SECTION( - "ComputeDistances", - for_all( - npts, - AXOM_LAMBDA(std::int32_t idx) { - PointType qpt = queryPts[idx]; - - MinCandidate curr_min {}; - - auto searchMinDist = [&](std::int32_t current_node, - const std::int32_t* leaf_nodes) { - int candidate_idx = leaf_nodes[current_node]; - - checkCandidate(qpt, - curr_min, - candidate_idx, - surfaceData, - surf_pts, - computeSigns); - }; - - auto traversePredicate = [&](const PointType& p, - const BoxType& bb) -> bool { - return axom::primal::squared_distance(p, bb) <= curr_min.minSqDist; - }; - - // Traverse the tree, searching for the point with minimum distance. - it.traverse_tree(qpt, searchMinDist, traversePredicate); - - double sgn = 1.0; - if(computeSigns) - { - // STEP 0: if point is outside the bounding box of the surface mesh, then - // it is outside, just return 1.0 - if(!(watertightInput && !boxDomain.contains(curr_min.minPt))) - { - sgn = computeSign(qpt, curr_min); - } - } + AXOM_ANNOTATE_SCOPE("ComputeDistances"); + for_all( + npts, + AXOM_LAMBDA(std::int32_t idx) { + PointType qpt = queryPts[idx]; - outSgnDist[idx] = sqrt(curr_min.minSqDist) * sgn; - if(outClosestPts) - { - outClosestPts[idx] = curr_min.minPt; - } + MinCandidate curr_min {}; + + auto searchMinDist = [&](std::int32_t current_node, + const std::int32_t* leaf_nodes) { + int candidate_idx = leaf_nodes[current_node]; + + checkCandidate(qpt, + curr_min, + candidate_idx, + surfaceData, + surf_pts, + computeSigns); + }; + + auto traversePredicate = [&](const PointType& p, const BoxType& bb) -> bool { + return axom::primal::squared_distance(p, bb) <= curr_min.minSqDist; + }; + + // Traverse the tree, searching for the point with minimum distance. + it.traverse_tree(qpt, searchMinDist, traversePredicate); - if(outNormals) + double sgn = 1.0; + if(computeSigns) + { + // STEP 0: if point is outside the bounding box of the surface mesh, then + // it is outside, just return 1.0 + if(!(watertightInput && !boxDomain.contains(curr_min.minPt))) { - outNormals[idx] = getSurfaceNormal(curr_min).unitVector(); + sgn = computeSign(qpt, curr_min); } - });); + } + + outSgnDist[idx] = sqrt(curr_min.minSqDist) * sgn; + if(outClosestPts) + { + outClosestPts[idx] = curr_min.minPt; + } + + if(outNormals) + { + outNormals[idx] = getSurfaceNormal(curr_min).unitVector(); + } + }); } //------------------------------------------------------------------------------ diff --git a/src/axom/quest/detail/DistributedClosestPointImpl.hpp b/src/axom/quest/detail/DistributedClosestPointImpl.hpp index 0875eb889a..74cf2a3e6a 100644 --- a/src/axom/quest/detail/DistributedClosestPointImpl.hpp +++ b/src/axom/quest/detail/DistributedClosestPointImpl.hpp @@ -1207,8 +1207,8 @@ class DistributedClosestPointImpl auto ptCoordsView = m_objectPtCoords.view(); auto ptDomainIdsView = m_objectPtDomainIds.view(); - AXOM_PERF_MARK_SECTION( - "ComputeClosestPoints", + { + AXOM_ANNOTATE_SCOPE("ComputeClosestPoints"); axom::for_all( qPtCount, AXOM_LAMBDA(std::int32_t idx) mutable { @@ -1264,7 +1264,8 @@ class DistributedClosestPointImpl query_min_dist[idx] = sqrt(curr_min.sqDist); } } - });); + }); + } axom::deallocate(sqDistThresh); } diff --git a/src/axom/quest/detail/MarchingCubesImpl.hpp b/src/axom/quest/detail/MarchingCubesImpl.hpp index 82ca58fa0d..6e365594b8 100644 --- a/src/axom/quest/detail/MarchingCubesImpl.hpp +++ b/src/axom/quest/detail/MarchingCubesImpl.hpp @@ -101,7 +101,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase const std::string& maskFieldName) override { // Time this due to potentially slow memory allocation - AXOM_PERF_MARK_FUNCTION("MarchingCubesImpl::initialize"); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::initialize"); clearDomain(); SLIC_ASSERT(conduit::blueprint::mesh::topology::dims(dom.fetch_existing( @@ -158,7 +158,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase */ void markCrossings() override { - AXOM_PERF_MARK_FUNCTION("MarchingCubesImpl::markCrossings"); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::markCrossings"); m_caseIdsFlat.resize(m_mvu.getCellCount(), 0); m_caseIdsFlat.fill(0); @@ -369,24 +369,24 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase void scanCrossings() override { - AXOM_PERF_MARK_FUNCTION("MarchingCubesImpl::scanCrossings"); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings"); if(m_dataParallelism == axom::quest::MarchingCubesDataParallelism::hybridParallel) { - AXOM_PERF_MARK_SECTION("MarchingCubesImpl::scanCrossings:hybridParallel", - scanCrossings_hybridParallel();); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings:hybridParallel"); + scanCrossings_hybridParallel(); } else if(m_dataParallelism == axom::quest::MarchingCubesDataParallelism::fullParallel) { - AXOM_PERF_MARK_SECTION("MarchingCubesImpl::scanCrossings:fullParallel", - scanCrossings_fullParallel();); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings:fullParallel"); + scanCrossings_fullParallel(); } } void allocateIndexLists() { - AXOM_PERF_MARK_FUNCTION("MarchingCubesImpl::allocateIndexLists"); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::allocateIndexLists"); m_crossingParentIds.resize(m_crossingCount, 0); m_crossingCases.resize(m_crossingCount, 0); m_facetIncrs.resize(m_crossingCount, 0); @@ -407,8 +407,8 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase m_scannedFlags.resize(1 + m_mvu.getCellCount(), 0); auto crossingFlagsView = m_crossingFlags.view(); - AXOM_PERF_MARK_SECTION( - "MarchingCubesImpl::scanCrossings:set_flags", + { + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings:set_flags"); axom::for_all( 0, parentCellCount, @@ -416,23 +416,26 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase auto numContourCells = num_contour_cells(caseIdsView.flatIndex(parentCellId)); crossingFlagsView[parentCellId] = bool(numContourCells); - });); + }); + } m_scannedFlags.fill(0, 1, 0); + + { + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings:scan_flags"); #if defined(AXOM_USE_RAJA) - AXOM_PERF_MARK_SECTION( - "MarchingCubesImpl::scanCrossings:scan_flags", RAJA::inclusive_scan( RAJA::make_span(m_crossingFlags.data(), parentCellCount), RAJA::make_span(m_scannedFlags.data() + 1, parentCellCount), - RAJA::operators::plus {});); + RAJA::operators::plus {}); + #else - AXOM_PERF_MARK_SECTION( - "MarchingCubesImpl::scanCrossings:scan_flags", - for(axom::IndexType n = 0; n < parentCellCount; ++n) { + for(axom::IndexType n = 0; n < parentCellCount; ++n) + { m_scannedFlags[n + 1] = m_scannedFlags[n] + m_crossingFlags[n]; - }); + } #endif + } axom::copy(&m_crossingCount, m_scannedFlags.data() + m_scannedFlags.size() - 1, @@ -447,21 +450,22 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase auto crossingCasesView = m_crossingCases.view(); auto facetIncrsView = m_facetIncrs.view(); - AXOM_PERF_MARK_SECTION( - "MarchingCubesImpl::scanCrossings:set_incrs", - auto loopBody = - AXOM_LAMBDA(axom::IndexType parentCellId) { - if(scannedFlagsView[parentCellId] != scannedFlagsView[1 + parentCellId]) - { - auto crossingId = scannedFlagsView[parentCellId]; - auto caseId = caseIdsView.flatIndex(parentCellId); - auto facetIncr = num_contour_cells(caseId); - crossingParentIdsView[crossingId] = parentCellId; - crossingCasesView[crossingId] = caseId; - facetIncrsView[crossingId] = facetIncr; - } - }; - axom::for_all(0, parentCellCount, loopBody);); + { + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings:set_incrs"); + auto loopBody = AXOM_LAMBDA(axom::IndexType parentCellId) + { + if(scannedFlagsView[parentCellId] != scannedFlagsView[1 + parentCellId]) + { + auto crossingId = scannedFlagsView[parentCellId]; + auto caseId = caseIdsView.flatIndex(parentCellId); + auto facetIncr = num_contour_cells(caseId); + crossingParentIdsView[crossingId] = parentCellId; + crossingCasesView[crossingId] = caseId; + facetIncrsView[crossingId] = facetIncr; + } + }; + axom::for_all(0, parentCellCount, loopBody); + } // // Prefix-sum the facets counts to get first facet id for each crossing @@ -469,20 +473,21 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase // m_firstFacetIds.fill(0, 1, 0); + + { + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::scanCrossings:scan_incrs"); #if defined(AXOM_USE_RAJA) - AXOM_PERF_MARK_SECTION( - "MarchingCubesImpl::scanCrossings:scan_incrs", RAJA::inclusive_scan( RAJA::make_span(m_facetIncrs.data(), m_crossingCount), RAJA::make_span(m_firstFacetIds.data() + 1, m_crossingCount), - RAJA::operators::plus {});); + RAJA::operators::plus {}); #else - AXOM_PERF_MARK_SECTION( - "MarchingCubesImpl::scanCrossings:scan_incrs", - for(axom::IndexType n = 0; n < parentCellCount; ++n) { + for(axom::IndexType n = 0; n < parentCellCount; ++n) + { m_firstFacetIds[n + 1] = m_firstFacetIds[n] + m_facetIncrs[n]; - }); + } #endif + } axom::copy(&m_facetCount, m_firstFacetIds.data() + m_firstFacetIds.size() - 1, @@ -586,7 +591,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase void computeFacets() override { - AXOM_PERF_MARK_FUNCTION("MarchingCubesImpl::computeFacets"); + AXOM_ANNOTATE_SCOPE("MarchingCubesImpl::computeFacets"); const auto firstFacetIdsView = m_firstFacetIds.view(); const auto crossingParentIdsView = m_crossingParentIds.view(); const auto crossingCasesView = m_crossingCases.view(); @@ -990,7 +995,7 @@ class MarchingCubesImpl : public MarchingCubesSingleDomain::ImplBase } }; -} // end namespace marching_cubes -} // end namespace detail -} // end namespace quest -} // end namespace axom +} // namespace marching_cubes +} // namespace detail +} // namespace quest +} // namespace axom diff --git a/src/axom/quest/examples/containment_driver.cpp b/src/axom/quest/examples/containment_driver.cpp index a80e8769a9..49efec2d9a 100644 --- a/src/axom/quest/examples/containment_driver.cpp +++ b/src/axom/quest/examples/containment_driver.cpp @@ -717,6 +717,7 @@ int main(int argc, char** argv) AXOM_ANNOTATE_END("query"); SLIC_INFO(axom::fmt::format("{:-^80}", "")); + axom::slic::flushStreams(); AXOM_ANNOTATE_END("quest containment example"); axom::utilities::annotations::finalize(); diff --git a/src/axom/quest/examples/quest_marching_cubes_example.cpp b/src/axom/quest/examples/quest_marching_cubes_example.cpp index fb847068c9..938b02c1c5 100644 --- a/src/axom/quest/examples/quest_marching_cubes_example.cpp +++ b/src/axom/quest/examples/quest_marching_cubes_example.cpp @@ -547,7 +547,7 @@ struct BlueprintStructuredMesh template void moveMeshDataToNewMemorySpace(const std::string& path, int allocId) { - AXOM_PERF_MARK_FUNCTION("moveMeshDataToNewMemorySpace"); // For reference + AXOM_ANNOTATE_SCOPE("moveMeshDataToNewMemorySpace"); for(auto& dom : _mdMesh.children()) { moveConduitDataToNewMemorySpace(dom, path, allocId); diff --git a/src/axom/quest/examples/shaping_driver.cpp b/src/axom/quest/examples/shaping_driver.cpp index c057b48ff3..57f68703af 100644 --- a/src/axom/quest/examples/shaping_driver.cpp +++ b/src/axom/quest/examples/shaping_driver.cpp @@ -397,7 +397,8 @@ void printMeshInfo(mfem::Mesh* mesh, const std::string& prefixMessage = "") { case 2: SLIC_INFO(axom::fmt::format( - "{} mesh has {} elements and (approximate) bounding box {}", + axom::utilities::locale(), + "{} mesh has {:L} elements and (approximate) bounding box {}", prefixMessage, numElements, primal::BoundingBox(primal::Point(mins.GetData()), @@ -405,7 +406,8 @@ void printMeshInfo(mfem::Mesh* mesh, const std::string& prefixMessage = "") break; case 3: SLIC_INFO(axom::fmt::format( - "{} mesh has {} elements and (approximate) bounding box {}", + axom::utilities::locale(), + "{} mesh has {:L} elements and (approximate) bounding box {}", prefixMessage, numElements, primal::BoundingBox(primal::Point(mins.GetData()), @@ -512,6 +514,8 @@ int main(int argc, char** argv) { AXOM_ANNOTATE_SCOPE("read Klee shape set"); params.shapeSet = klee::readShapeSet(params.shapeFile); + + slic::flushStreams(); } catch(klee::KleeError& error) { @@ -735,7 +739,7 @@ int main(int argc, char** argv) const double volume = shaper->allReduceSum(*gf * vol_form); SLIC_INFO(axom::fmt::format(axom::utilities::locale(), - "Volume of material '{}' is {:.3Lf}", + "Volume of material '{}' is {:.6Lf}", mat_name, volume)); } @@ -755,6 +759,8 @@ int main(int argc, char** argv) // Cleanup and exit //--------------------------------------------------------------------------- SLIC_INFO(axom::fmt::format("{:-^80}", "")); + slic::flushStreams(); + AXOM_ANNOTATE_END("quest shaping example"); axom::utilities::annotations::finalize(); diff --git a/src/axom/spin/BVH.hpp b/src/axom/spin/BVH.hpp index d5eec63ae7..473029f6be 100644 --- a/src/axom/spin/BVH.hpp +++ b/src/axom/spin/BVH.hpp @@ -400,7 +400,7 @@ template int BVH::initialize(const BoxIndexable boxes, IndexType numBoxes) { - AXOM_PERF_MARK_FUNCTION("BVH::initialize"); + AXOM_ANNOTATE_SCOPE("BVH::initialize"); using IterBase = typename IteratorTraits::BaseType; @@ -464,7 +464,7 @@ void BVH::findPoints( IndexType numPts, PointIndexable pts) const { - AXOM_PERF_MARK_FUNCTION("BVH::findPoints"); + AXOM_ANNOTATE_SCOPE("BVH::findPoints"); using IterBase = typename IteratorTraits::BaseType; @@ -498,7 +498,7 @@ void BVH::findRays( IndexType numRays, RayIndexable rays) const { - AXOM_PERF_MARK_FUNCTION("BVH::findRays"); + AXOM_ANNOTATE_SCOPE("BVH::findRays"); using IterBase = typename IteratorTraits::BaseType; @@ -535,7 +535,7 @@ void BVH::findBoundingBoxes( IndexType numBoxes, BoxIndexable boxes) const { - AXOM_PERF_MARK_FUNCTION("BVH::findBoundingBoxes"); + AXOM_ANNOTATE_SCOPE("BVH::findBoundingBoxes"); using IterBase = typename IteratorTraits::BaseType; diff --git a/src/axom/spin/internal/linear_bvh/RadixTree.hpp b/src/axom/spin/internal/linear_bvh/RadixTree.hpp index ac5e7b4613..e1aa0a456d 100644 --- a/src/axom/spin/internal/linear_bvh/RadixTree.hpp +++ b/src/axom/spin/internal/linear_bvh/RadixTree.hpp @@ -46,7 +46,7 @@ struct RadixTree void allocate(std::int32_t size, int allocID) { - AXOM_PERF_MARK_FUNCTION("RadixTree::allocate"); + AXOM_ANNOTATE_SCOPE("RadixTree::allocate"); m_size = size; m_inner_size = m_size - 1; diff --git a/src/axom/spin/internal/linear_bvh/build_radix_tree.hpp b/src/axom/spin/internal/linear_bvh/build_radix_tree.hpp index 14c1c4e093..c19ae0a419 100644 --- a/src/axom/spin/internal/linear_bvh/build_radix_tree.hpp +++ b/src/axom/spin/internal/linear_bvh/build_radix_tree.hpp @@ -94,7 +94,7 @@ void transform_boxes(const BoxIndexable boxes, std::int32_t size, FloatType scale_factor) { - AXOM_PERF_MARK_FUNCTION("transform_boxes"); + AXOM_ANNOTATE_SCOPE("transform_boxes"); for_all( size, @@ -113,7 +113,7 @@ primal::BoundingBox reduce( ArrayView> aabbs, std::int32_t size) { - AXOM_PERF_MARK_FUNCTION("reduce_abbs"); + AXOM_ANNOTATE_SCOPE("reduce_abbs"); #ifdef AXOM_USE_RAJA using reduce_policy = typename axom::execution_space::reduce_policy; @@ -161,7 +161,7 @@ void get_mcodes(ArrayView> aabbs, const primal::BoundingBox& bounds, const ArrayView mcodes) { - AXOM_PERF_MARK_FUNCTION("get_mcodes"); + AXOM_ANNOTATE_SCOPE("get_mcodes"); primal::Vector extent, inv_extent, min_coord; @@ -196,7 +196,7 @@ void array_counting(ArrayView iterator, const IntType& start, const IntType& step) { - AXOM_PERF_MARK_FUNCTION("array_counting"); + AXOM_ANNOTATE_SCOPE("array_counting"); for_all( size, @@ -216,7 +216,7 @@ void reorder(const ArrayView indices, std::int32_t size, int allocatorID) { - AXOM_PERF_MARK_FUNCTION("reorder"); + AXOM_ANNOTATE_SCOPE("reorder"); Array temp = Array(ArrayOptions::Uninitialized {}, size, size, allocatorID); @@ -243,15 +243,16 @@ void sort_mcodes(ArrayView mcodes, std::int32_t size, ArrayView iter) { - AXOM_PERF_MARK_FUNCTION("sort_mcodes"); + AXOM_ANNOTATE_SCOPE("sort_mcodes"); array_counting(iter, size, 0, 1); - AXOM_PERF_MARK_SECTION( - "raja_stable_sort", + { + AXOM_ANNOTATE_SCOPE("raja_stable_sort"); using EXEC_POL = typename axom::execution_space::loop_policy; RAJA::stable_sort_pairs(RAJA::make_span(mcodes.data(), size), - RAJA::make_span(iter.data(), size));); + RAJA::make_span(iter.data(), size)); + } } #else @@ -262,19 +263,18 @@ void sort_mcodes(Array& mcodes, std::int32_t size, const ArrayView iter) { - AXOM_PERF_MARK_FUNCTION("sort_mcodes"); + AXOM_ANNOTATE_SCOPE("sort_mcodes"); array_counting(iter, size, 0, 1); - AXOM_PERF_MARK_SECTION("cpu_sort", - - std::stable_sort(iter.begin(), - iter.begin() + size, - [&](std::int32_t i1, std::int32_t i2) { - return mcodes[i1] < mcodes[i2]; - }); + { + AXOM_ANNOTATE_SCOPE("cpu_sort"); - ); + std::stable_sort( + iter.begin(), + iter.begin() + size, + [&](std::int32_t i1, std::int32_t i2) { return mcodes[i1] < mcodes[i2]; }); + } const int allocID = axom::execution_space::allocatorID(); reorder(iter, mcodes, size, allocID); @@ -313,7 +313,7 @@ AXOM_HOST_DEVICE IntType delta(const IntType& a, template void build_tree(RadixTree& data) { - AXOM_PERF_MARK_FUNCTION("build_tree"); + AXOM_ANNOTATE_SCOPE("build_tree"); // http://research.nvidia.com/sites/default/files/publications/karras2012hpg_paper.pdf @@ -531,7 +531,7 @@ AXOM_HOST_DEVICE static inline int atomic_increment(int* addr) template void propagate_aabbs(RadixTree& data, int allocatorID) { - AXOM_PERF_MARK_FUNCTION("propagate_abbs"); + AXOM_ANNOTATE_SCOPE("propagate_abbs"); using BoxType = primal::BoundingBox; @@ -611,7 +611,7 @@ void build_radix_tree(const BoxIndexable boxes, FloatType scale_factor, int allocatorID) { - AXOM_PERF_MARK_FUNCTION("build_radix_tree"); + AXOM_ANNOTATE_SCOPE("build_radix_tree"); // sanity checks SLIC_ASSERT(size > 0); diff --git a/src/axom/spin/policy/LinearBVH.hpp b/src/axom/spin/policy/LinearBVH.hpp index 62a51f2656..f244fb7d7a 100644 --- a/src/axom/spin/policy/LinearBVH.hpp +++ b/src/axom/spin/policy/LinearBVH.hpp @@ -192,7 +192,7 @@ class LinearBVH private: void allocate(std::int32_t size, int allocID) { - AXOM_PERF_MARK_FUNCTION("LinearBVH::allocate"); + AXOM_ANNOTATE_SCOPE("LinearBVH::allocate"); IndexType numInnerNodes = (size - 1) * 2; // Need to allocate this uninitialized, since primal::BoundingBox is // considered non-trivially-copyable on GCC 4.9.3 @@ -220,7 +220,7 @@ void LinearBVH::buildImpl(const BoxIndexable boxes, FloatType scaleFactor, int allocatorID) { - AXOM_PERF_MARK_FUNCTION("LinearBVH::buildImpl"); + AXOM_ANNOTATE_SCOPE("LinearBVH::buildImpl"); // STEP 1: Build a RadixTree consisting of the bounding boxes, sorted // by their corresponding morton code. @@ -252,45 +252,46 @@ void LinearBVH::buildImpl(const BoxIndexable boxes, const auto bvh_inner_nodes = m_inner_nodes.view(); const auto bvh_inner_node_children = m_inner_node_children.view(); - AXOM_PERF_MARK_SECTION("emit_bvh_parents", - for_all( - inner_size, - AXOM_LAMBDA(std::int32_t node) { - BoundingBoxType l_aabb, r_aabb; - - std::int32_t lchild = lchildren_ptr[node]; - if(lchild >= inner_size) - { - l_aabb = leaf_aabb_ptr[lchild - inner_size]; - lchild = -(lchild - inner_size + 1); - } - else - { - l_aabb = inner_aabb_ptr[lchild]; - // do the offset now - lchild *= 2; - } - - std::int32_t rchild = rchildren_ptr[node]; - if(rchild >= inner_size) - { - r_aabb = leaf_aabb_ptr[rchild - inner_size]; - rchild = -(rchild - inner_size + 1); - } - else - { - r_aabb = inner_aabb_ptr[rchild]; - // do the offset now - rchild *= 2; - } - - const std::int32_t out_offset = node * 2; - bvh_inner_nodes[out_offset + 0] = l_aabb; - bvh_inner_nodes[out_offset + 1] = r_aabb; - - bvh_inner_node_children[out_offset + 0] = lchild; - bvh_inner_node_children[out_offset + 1] = rchild; - });); + AXOM_ANNOTATE_BEGIN("emit_bvh_parents"); + for_all( + inner_size, + AXOM_LAMBDA(std::int32_t node) { + BoundingBoxType l_aabb, r_aabb; + + std::int32_t lchild = lchildren_ptr[node]; + if(lchild >= inner_size) + { + l_aabb = leaf_aabb_ptr[lchild - inner_size]; + lchild = -(lchild - inner_size + 1); + } + else + { + l_aabb = inner_aabb_ptr[lchild]; + // do the offset now + lchild *= 2; + } + + std::int32_t rchild = rchildren_ptr[node]; + if(rchild >= inner_size) + { + r_aabb = leaf_aabb_ptr[rchild - inner_size]; + rchild = -(rchild - inner_size + 1); + } + else + { + r_aabb = inner_aabb_ptr[rchild]; + // do the offset now + rchild *= 2; + } + + const std::int32_t out_offset = node * 2; + bvh_inner_nodes[out_offset + 0] = l_aabb; + bvh_inner_nodes[out_offset + 1] = r_aabb; + + bvh_inner_node_children[out_offset + 0] = lchild; + bvh_inner_node_children[out_offset + 1] = rchild; + }); + AXOM_ANNOTATE_END("emit_bvh_parents"); m_leaf_nodes = std::move(radix_tree.m_leafs); @@ -308,7 +309,7 @@ axom::Array LinearBVH::findCandidatesImp int allocatorID) const { - AXOM_PERF_MARK_FUNCTION("LinearBVH::findCandidatesImpl"); + AXOM_ANNOTATE_SCOPE("LinearBVH::findCandidatesImpl"); SLIC_ERROR_IF(offsets.size() != numObjs, "offsets length not equal to numObjs"); @@ -330,95 +331,63 @@ axom::Array LinearBVH::findCandidatesImp using reduce_pol = typename axom::execution_space::reduce_policy; RAJA::ReduceSum total_count_reduce(0); - AXOM_PERF_MARK_SECTION( - "PASS[1]:count_traversal", - for_all( - numObjs, - AXOM_LAMBDA(IndexType i) { - std::int32_t count = 0; - PrimitiveType primitive {objs[i]}; - - auto leafAction = [&count](std::int32_t AXOM_UNUSED_PARAM(current_node), - const std::int32_t* AXOM_UNUSED_PARAM( - leaf_nodes)) { count++; }; - - lbvh::bvh_traverse(inner_nodes, - inner_node_children, - leaf_nodes, - primitive, - predicate, - leafAction, - noTraversePref); - - counts[i] = count; - total_count_reduce += count; - });); - - // STEP 2: exclusive scan to get offsets in candidate array for each query + AXOM_ANNOTATE_BEGIN("PASS[1]:count_traversal"); + for_all( + numObjs, + AXOM_LAMBDA(IndexType i) { + std::int32_t count = 0; + PrimitiveType primitive {objs[i]}; + + auto leafAction = + [&count](std::int32_t AXOM_UNUSED_PARAM(current_node), + const std::int32_t* AXOM_UNUSED_PARAM(leaf_nodes)) { count++; }; + + lbvh::bvh_traverse(inner_nodes, + inner_node_children, + leaf_nodes, + primitive, + predicate, + leafAction, + noTraversePref); + + counts[i] = count; + total_count_reduce += count; + }); + AXOM_ANNOTATE_END("PASS[1]:count_traversal"); + + // STEP 2: exclusive scan to get offsets in candidate array for each query + AXOM_ANNOTATE_BEGIN("exclusive_scan"); // Intel oneAPI compiler segfaults with OpenMP RAJA scan #ifdef __INTEL_LLVM_COMPILER using exec_policy = typename axom::execution_space::loop_policy; #else using exec_policy = typename axom::execution_space::loop_policy; #endif - AXOM_PERF_MARK_SECTION( - "exclusive_scan", - RAJA::exclusive_scan(RAJA::make_span(counts.data(), numObjs), - RAJA::make_span(offsets.data(), numObjs), - RAJA::operators::plus {});); - + RAJA::exclusive_scan(RAJA::make_span(counts.data(), numObjs), + RAJA::make_span(offsets.data(), numObjs), + RAJA::operators::plus {}); + AXOM_ANNOTATE_END("exclusive_scan"); IndexType total_candidates = total_count_reduce.get(); // STEP 3: allocate memory for all candidates - axom::Array candidates; - { - AXOM_PERF_MARK_FUNCTION("allocate_candidates"); - candidates = - axom::Array(total_candidates, total_candidates, allocatorID); - } + AXOM_ANNOTATE_BEGIN("allocate_candidates"); + auto candidates = + axom::Array(total_candidates, total_candidates, allocatorID); + AXOM_ANNOTATE_END("allocate_candidates"); const auto candidates_v = candidates.view(); // STEP 4: fill in candidates for each point - AXOM_PERF_MARK_SECTION("PASS[2]:fill_traversal", - for_all( - numObjs, - AXOM_LAMBDA(IndexType i) { - std::int32_t offset = offsets[i]; - - PrimitiveType obj {objs[i]}; - auto leafAction = [&offset, candidates_v]( - std::int32_t current_node, - const std::int32_t* leafs) { - candidates_v[offset] = leafs[current_node]; - offset++; - }; - - lbvh::bvh_traverse(inner_nodes, - inner_node_children, - leaf_nodes, - obj, - predicate, - leafAction, - noTraversePref); - });); - return candidates; -#else // CPU-only and no RAJA: do single traversal - AXOM_UNUSED_VAR(allocatorID); - - axom::Array search_candidates; - int current_offset = 0; + AXOM_ANNOTATE_BEGIN("PASS[2]:fill_traversal"); + for_all( + numObjs, + AXOM_LAMBDA(IndexType i) { + std::int32_t offset = offsets[i]; - // STEP 1: do single-pass traversal with std::vector for candidates - AXOM_PERF_MARK_SECTION( - "PASS[1]:fill_traversal", for_all(numObjs, [&](IndexType i) { - int matching_leaves = 0; PrimitiveType obj {objs[i]}; - offsets[i] = current_offset; - - auto leafAction = [&](std::int32_t current_node, const std::int32_t* leafs) { - search_candidates.emplace_back(leafs[current_node]); - matching_leaves++; - current_offset++; + auto leafAction = [&offset, candidates_v](std::int32_t current_node, + const std::int32_t* leafs) { + candidates_v[offset] = leafs[current_node]; + offset++; }; lbvh::bvh_traverse(inner_nodes, @@ -428,8 +397,39 @@ axom::Array LinearBVH::findCandidatesImp predicate, leafAction, noTraversePref); - counts[i] = matching_leaves; - });); + }); + AXOM_ANNOTATE_END("PASS[2]:fill_traversal"); + + return candidates; +#else // CPU-only and no RAJA: do single traversal + AXOM_UNUSED_VAR(allocatorID); + + axom::Array search_candidates; + int current_offset = 0; + + // STEP 1: do single-pass traversal with std::vector for candidates + AXOM_ANNOTATE_BEGIN("PASS[1]:fill_traversal"); + for_all(numObjs, [&](IndexType i) { + int matching_leaves = 0; + PrimitiveType obj {objs[i]}; + offsets[i] = current_offset; + + auto leafAction = [&](std::int32_t current_node, const std::int32_t* leafs) { + search_candidates.emplace_back(leafs[current_node]); + matching_leaves++; + current_offset++; + }; + + lbvh::bvh_traverse(inner_nodes, + inner_node_children, + leaf_nodes, + obj, + predicate, + leafAction, + noTraversePref); + counts[i] = matching_leaves; + }); + AXOM_ANNOTATE_END("PASS[1]:fill_traversal"); SLIC_ASSERT(current_offset == static_cast(search_candidates.size())); @@ -501,4 +501,4 @@ void LinearBVH::writeVtkFileImpl( } // namespace policy } // namespace spin } // namespace axom -#endif /* AXOM_SPIN_POLICY_LINEARBVH_HPP_ */ +#endif // AXOM_SPIN_POLICY_LINEARBVH_HPP_ From 366668513cbbdabc089e47f6c9f00e39ae376f0b Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Thu, 4 Apr 2024 18:46:14 -0700 Subject: [PATCH 155/592] Removes old nvtx annotations implementation in favor of caliper-based one --- src/axom/core/CMakeLists.txt | 7 -- src/axom/core/tests/CMakeLists.txt | 1 - src/axom/core/tests/core_serial_main.cpp | 1 - src/axom/core/tests/utils_nvtx_settings.hpp | 72 ------------ src/axom/core/utilities/nvtx/Macros.hpp | 118 -------------------- src/axom/core/utilities/nvtx/Range.cpp | 70 ------------ src/axom/core/utilities/nvtx/Range.hpp | 95 ---------------- src/axom/core/utilities/nvtx/interface.cpp | 51 --------- src/axom/core/utilities/nvtx/interface.hpp | 107 ------------------ 9 files changed, 522 deletions(-) delete mode 100644 src/axom/core/tests/utils_nvtx_settings.hpp delete mode 100644 src/axom/core/utilities/nvtx/Macros.hpp delete mode 100644 src/axom/core/utilities/nvtx/Range.cpp delete mode 100644 src/axom/core/utilities/nvtx/Range.hpp delete mode 100644 src/axom/core/utilities/nvtx/interface.cpp delete mode 100644 src/axom/core/utilities/nvtx/interface.hpp diff --git a/src/axom/core/CMakeLists.txt b/src/axom/core/CMakeLists.txt index c694c50361..47553fe34d 100644 --- a/src/axom/core/CMakeLists.txt +++ b/src/axom/core/CMakeLists.txt @@ -31,10 +31,6 @@ set(core_headers utilities/Utilities.hpp utilities/About.hpp - utilities/nvtx/interface.hpp - utilities/nvtx/Macros.hpp - utilities/nvtx/Range.hpp - ## numerics numerics/internal/matrix_norms.hpp @@ -88,9 +84,6 @@ set(core_sources utilities/Utilities.cpp ${PROJECT_BINARY_DIR}/axom/core/utilities/About.cpp - utilities/nvtx/interface.cpp - utilities/nvtx/Range.cpp - numerics/polynomial_solvers.cpp Path.cpp diff --git a/src/axom/core/tests/CMakeLists.txt b/src/axom/core/tests/CMakeLists.txt index 773f7a265c..8538d8bc51 100644 --- a/src/axom/core/tests/CMakeLists.txt +++ b/src/axom/core/tests/CMakeLists.txt @@ -43,7 +43,6 @@ set(core_serial_tests utils_endianness.hpp utils_fileUtilities.hpp utils_locale.hpp - utils_nvtx_settings.hpp utils_stringUtilities.hpp utils_system.hpp utils_Timer.hpp diff --git a/src/axom/core/tests/core_serial_main.cpp b/src/axom/core/tests/core_serial_main.cpp index 04271f0d6f..21a6bf7e91 100644 --- a/src/axom/core/tests/core_serial_main.cpp +++ b/src/axom/core/tests/core_serial_main.cpp @@ -39,7 +39,6 @@ #include "utils_endianness.hpp" #include "utils_fileUtilities.hpp" #include "utils_locale.hpp" -#include "utils_nvtx_settings.hpp" #include "utils_stringUtilities.hpp" #include "utils_system.hpp" #include "utils_Timer.hpp" diff --git a/src/axom/core/tests/utils_nvtx_settings.hpp b/src/axom/core/tests/utils_nvtx_settings.hpp deleted file mode 100644 index 59a2d85408..0000000000 --- a/src/axom/core/tests/utils_nvtx_settings.hpp +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and -// other Axom Project Developers. See the top-level LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) - -#include "axom/core/utilities/nvtx/interface.hpp" - -#include "gtest/gtest.h" - -//------------------------------------------------------------------------------ -// HELPER METHODS -//------------------------------------------------------------------------------ -namespace -{ -//------------------------------------------------------------------------------ -void check_defaults() -{ - EXPECT_EQ(axom::nvtx::DEFAULT_COLOR, axom::nvtx::get_color()); - EXPECT_EQ(axom::nvtx::DEFAULT_CATEGORY, axom::nvtx::get_category()); -} - -//------------------------------------------------------------------------------ -void check_set_color(axom::nvtx::Color newColor) -{ - axom::nvtx::set_color(newColor); - EXPECT_EQ(newColor, axom::nvtx::get_color()); -} - -//------------------------------------------------------------------------------ -void check_set_category(uint32_t newCategory) -{ - axom::nvtx::set_category(newCategory); - EXPECT_EQ(newCategory, axom::nvtx::get_category()); -} - -} /* end anonymous namespace */ - -//------------------------------------------------------------------------------ -// UNIT TESTS -//------------------------------------------------------------------------------ -TEST(utils_nvtx_settings, default_settings) { check_defaults(); } - -//------------------------------------------------------------------------------ -TEST(utils_nvtx_settings, set_color) -{ - check_set_color(axom::nvtx::Color::BLACK); - check_set_color(axom::nvtx::Color::BLUE); - check_set_color(axom::nvtx::Color::YELLOW); -} - -//------------------------------------------------------------------------------ -TEST(utils_nvtx_settings, set_category) -{ - constexpr uint32_t MAX_CATEGORY = 42; - for(uint32_t icategory = 1; icategory < MAX_CATEGORY; ++icategory) - { - check_set_category(icategory); - } -} - -//------------------------------------------------------------------------------ -TEST(utils_nvtx_settings, set_and_reset) -{ - check_set_color(axom::nvtx::Color::BLUE); - - constexpr uint32_t MY_CATEGORY = 42; - check_set_category(MY_CATEGORY); - - axom::nvtx::reset(); - - check_defaults(); -} diff --git a/src/axom/core/utilities/nvtx/Macros.hpp b/src/axom/core/utilities/nvtx/Macros.hpp deleted file mode 100644 index 11eb77ad13..0000000000 --- a/src/axom/core/utilities/nvtx/Macros.hpp +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and -// other Axom Project Developers. See the top-level LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) - -#ifndef AXOM_NVTX_MACROS_HPP_ -#define AXOM_NVTX_MACROS_HPP_ - -#include "axom/core/utilities/nvtx/Range.hpp" - -/*! - * \file - * - * \brief Defines NVTX Macros that can be used to annotate functions and - * sections of the code. These macros use the NVIDIA Tools Extension library - * to provide additional information to NVIDIA performance tools, e.g., - * nvprof, nvvp, Nsight, thereby, facilitate developers in performance - * evaluation. - * - */ - -/// \name AXOM NVTX Macros -///@{ - -/*! - * \def AXOM_NVTX_SECTION - * - * \brief The AXOM_NVTX_SECTION macro is used to annotate sections of code - * - * \note In contrast to the AXOM_NVTX_FUNCTION macro, the AXOM_NVTX_SECTION - * macro is used to annotate sections of code, at a much finer granularity, - * within a given function. - * - * \warning Variables declared within a given AXOM_NVTX_SECTION are only defined - * within the scope of the AXOM_NVTX_SECTION. - * - * \warning An AXOM_NVTX_SECTION cannot be called in a nested fashion, i.e., - * within another AXOM_NVTX_SECTION - * - * \note You may have multiple AXOM_NVTX_SECTION defined within a function and - * this macro can be used in conjunction with the AXOM_NVTX_FUNCTION macro. - * - * \Usage Example: - * \code - * - * void foo( ) - * { - * AXOM_NVTX_FUNCTION( "foo"" ); - * - * // STEP 0: Run kernel A - * AXOM_NVTX_SECTION( "kernelA", - * - * axom::for_all( 0, N, AXOM_LAMBDA(axom::IndexType i) - * { - * .. - * } ); - * - * ); // END NVTX SECTION for kernel A - * - * // STEP 1: Run kernel B - * AXOM_NVTX_SECTION( "kernelB", - * - * axom::for_all( 0, N, AXOM_LAMBDA(axom::IndexType i) - * { - * ... - * } ); - * - * ); // END NVTX SECTION for kernel B - * - * } - * \endcode - * - */ -#if defined(AXOM_USE_ANNOTATIONS) && defined(AXOM_USE_CUDA) - #define AXOM_NVTX_SECTION(__name__, ...) \ - do \ - { \ - axom::nvtx::Range r(__name__); \ - __VA_ARGS__ \ - } while(false) -#else - #define AXOM_NVTX_SECTION(__name__, ...) \ - do \ - { \ - __VA_ARGS__ \ - } while(false) -#endif - -/*! - * \def AXOM_NVTX_FUNCTION( name ) - * - * \brief The AXOM_NVTX_FUNCTION macro is used to annotate a function. - * \param [in] name a user-supplied name that will be given to the range. - * - * \note Typically, the AXOM_NVTX_FUNCTION macro is placed in the beginning of - * the function to annotate. - * - * \warning The AXOM_NVTX_FUNCTION can be called once within a (function) scope. - * - * Usage Example: - * \code - * void foo( ) - * { - * AXOM_NVTX_FUNCTION( "foo" ); - * ... - * } - * \endcode - * - */ -#if defined(AXOM_USE_ANNOTATIONS) && defined(AXOM_USE_CUDA) - #define AXOM_NVTX_FUNCTION(__name__) axom::nvtx::Range __func_range(__name__) -#else - #define AXOM_NVTX_FUNCTION(__name__) -#endif - -///@} - -#endif /* AXOM_NVTX_MACROS_HPP_ */ diff --git a/src/axom/core/utilities/nvtx/Range.cpp b/src/axom/core/utilities/nvtx/Range.cpp deleted file mode 100644 index fd7c382da8..0000000000 --- a/src/axom/core/utilities/nvtx/Range.cpp +++ /dev/null @@ -1,70 +0,0 @@ -// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and -// other Axom Project Developers. See the top-level LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) - -#include "axom/core/utilities/nvtx/Range.hpp" - -#include "axom/config.hpp" // for axom compile-time definitions -#include "axom/core/utilities/nvtx/interface.hpp" - -// C/C++ includes -#include - -// CUDA NVTX includes -#ifdef AXOM_USE_CUDA - #include - #include - #include -#endif - -namespace axom -{ -namespace nvtx -{ -Range::Range(const std::string& name) : m_name(name), m_active(false) -{ - assert(!m_name.empty()); - start(); - assert(m_active); -} - -//------------------------------------------------------------------------------ -Range::~Range() { stop(); } - -//------------------------------------------------------------------------------ -void Range::start() -{ - assert(!m_active); - -#ifdef AXOM_USE_CUDA - nvtxEventAttributes_t eventAttrib = {0}; - eventAttrib.version = NVTX_VERSION; - eventAttrib.size = NVTX_EVENT_ATTRIB_STRUCT_SIZE; - eventAttrib.category = nvtx::get_category(); - eventAttrib.colorType = NVTX_COLOR_ARGB; - eventAttrib.color = static_cast(nvtx::get_color()); - eventAttrib.messageType = NVTX_MESSAGE_TYPE_ASCII; - eventAttrib.message.ascii = m_name.c_str(); - - nvtxRangePushEx(&eventAttrib); -#endif - - m_active = true; -} - -//------------------------------------------------------------------------------ -void Range::stop() -{ - if(m_active) - { -#ifdef AXOM_USE_CUDA - nvtxRangePop(); -#endif - m_active = false; - } -} - -} /* namespace nvtx */ - -} /* namespace axom */ diff --git a/src/axom/core/utilities/nvtx/Range.hpp b/src/axom/core/utilities/nvtx/Range.hpp deleted file mode 100644 index 7a67a7bd4c..0000000000 --- a/src/axom/core/utilities/nvtx/Range.hpp +++ /dev/null @@ -1,95 +0,0 @@ -// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and -// other Axom Project Developers. See the top-level LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) - -#ifndef AXOM_NVTXRANGE_HPP_ -#define AXOM_NVTXRANGE_HPP_ - -#include "axom/core/Macros.hpp" // for axom macros - -// C/C++ includes -#include // for std::string - -namespace axom -{ -namespace nvtx -{ -/*! - * \class Range - * - * \brief Range is a simple utility class to annotate code. - * - * The NVTXRange class is a simple utility class that can be used in - * conjunction with the NVIDIA Tools Extension library to allow developers - * to easily mark and annotate code in order to provide additional information - * to NVIDIA performance tools, such as, nvprof, nvvp and Nsight. - * - * \see https://docs.nvidia.com/cuda/profiler-users-guide/index.html#nvtx - * - * \note NVTXRange uses the RAII idiom, consequently the range is started - * when the NVTXRange object is instantiated and stopped when the object - * goes out of scope. - * - * \remark Thanks to Jason Burmark (burmark1@llnl.gov) for his original - * implementation that inspired the implementation of this class. - * - * Usage Example: - * \code - * - * // use scope to auto-start and stop a range - * { // begin scope resolution - * axom::NVTXRage range ("foo" ); - * foo(); - * } // end scope resoltuion - * - * \endcode - * - */ -class Range -{ -public: - /*! - * \brief Default constructor. Disabled. - */ - Range() = delete; - - /*! - * \brief Creates an NVTXRage instance with the given name. - * - * \param [in] name the name to associate with the range - * - * \pre name.empty() == false - */ - Range(const std::string& name); - - /*! - * \brief Destructor. - */ - ~Range(); - -private: - /*! - * \brief Starts an NVTX range. - * \note Called by the constructor. - */ - void start(); - - /*! - * \brief Stops the NVTX range. - * \note Called by the destructor. - */ - void stop(); - - std::string m_name; - bool m_active; - - DISABLE_COPY_AND_ASSIGNMENT(Range); - DISABLE_MOVE_AND_ASSIGNMENT(Range); -}; - -} /* namespace nvtx */ - -} /* namespace axom */ - -#endif /* AXOM_NVTXRANGE_HPP_ */ diff --git a/src/axom/core/utilities/nvtx/interface.cpp b/src/axom/core/utilities/nvtx/interface.cpp deleted file mode 100644 index f409c9673c..0000000000 --- a/src/axom/core/utilities/nvtx/interface.cpp +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and -// other Axom Project Developers. See the top-level LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) - -#include "axom/core/utilities/nvtx/interface.hpp" - -namespace axom -{ -namespace nvtx -{ -/*! - * \brief Internal data-structure to hold the NVTX settings. - */ -static struct settings_t -{ - uint32_t color; /*!< the associated color with an NVTX Range */ - uint32_t category; /*!< the associated category with an NVTX Range */ - - settings_t() - : color(static_cast(DEFAULT_COLOR)) - , category(DEFAULT_CATEGORY) - { } - -} Settings; - -//------------------------------------------------------------------------------ -// NVTX interface implementation -//------------------------------------------------------------------------------ - -void set_color(Color c) { Settings.color = static_cast(c); } - -//------------------------------------------------------------------------------ -Color get_color() { return static_cast(Settings.color); } - -//------------------------------------------------------------------------------ -void set_category(uint32_t category) { Settings.category = category; } - -//------------------------------------------------------------------------------ -uint32_t get_category() { return Settings.category; } - -//------------------------------------------------------------------------------ -void reset() -{ - set_color(DEFAULT_COLOR); - set_category(DEFAULT_CATEGORY); -} - -} /* namespace nvtx */ - -} /* namespace axom */ diff --git a/src/axom/core/utilities/nvtx/interface.hpp b/src/axom/core/utilities/nvtx/interface.hpp deleted file mode 100644 index ecec933106..0000000000 --- a/src/axom/core/utilities/nvtx/interface.hpp +++ /dev/null @@ -1,107 +0,0 @@ -// Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC and -// other Axom Project Developers. See the top-level LICENSE file for details. -// -// SPDX-License-Identifier: (BSD-3-Clause) - -#ifndef AXOM_NVTX_INTERFACE_HPP_ -#define AXOM_NVTX_INTERFACE_HPP_ - -#include "axom/core/utilities/nvtx/Macros.hpp" -#include // For uint32_t - -namespace axom -{ -namespace nvtx -{ -/// \brief Predefined set of NVTX colors to use with NVTXRange -enum class Color : std::uint32_t -{ - BLACK = 0x00000000, - GREEN = 0x0000FF00, - LIME = 0x00BFFF00, - RED = 0x00FF0000, - BLUE = 0x000000FF, - YELLOW = 0x00FFFF00, - CYAN = 0x0000FFFF, - MAGENTA = 0x00FF00FF, - WHITE = 0x00FFFFFF, - ORANGE = 0x00FFA500, - PINK = 0x00FF69B4 -}; - -/// \name Glocal Definitions -/// @{ - -/*! - * \brief Wildcard used for category - */ -constexpr uint32_t ANY_CATEGORY = 0; - -/// @} - -/// \name Default Settings -/// @{ - -/*! - * \brief Default NVTX color to use. Set to GREEN. - */ -constexpr Color DEFAULT_COLOR = Color::GREEN; - -/*! - * \brief Default NVTX category to use. Set to ANY. - */ -constexpr uint32_t DEFAULT_CATEGORY = ANY_CATEGORY; - -/// @} - -/// \name NVTX API Functions -/// @{ - -/*! - * \brief Sets the color to use with NVTX. - * \param [in] c the color to use. - * - * \note If not set, axom::nvtx::DEFAULT_COLOR is used. - * - * \post axom::nvtx::get_color() == c - */ -void set_color(Color c); - -/*! - * \brief Returns the color use by NVTX - * \return Color the color used by NVTX - * \see nvtx::Color - */ -Color get_color(); - -/*! - * \brief Set the category to use with NVTX. - * \param [in] category the user-prescribed number for the category to use. - * - * \note If note set, axom::nvtx::DEFAULT_CATEGORY is used. - * - * \post axom::nvtx::get_category() == category - */ -void set_category(uint32_t category); - -/*! - * \brief Get the category used with NVTX. - * \return category the category used with NVTX. - */ -uint32_t get_category(); - -/*! - * \brief Resets the NVTX setting to the defaults. - * - * \post axom::nvtx::get_category() == axom::nvtx::DEFAULT_CATEGORY - * \post axom::nvtx::get_color() == axom::nvtx::DEFAULT_COLOR - */ -void reset(); - -/// @} - -} /* namespace nvtx */ - -} /* namespace axom */ - -#endif /* AXOM_NVTX_INTERFACE_HPP_ */ From bcb702e4f87f755f735dd7388779230542ae958a Mon Sep 17 00:00:00 2001 From: Kenneth Weiss Date: Fri, 5 Apr 2024 11:48:47 -0700 Subject: [PATCH 156/592] Removes `AXOM_ENABLE_ANNOTATIONS` CMake option and `AXOM_USE_ANNOTATIONS` compiler define We now guard `caliper` usage w/ `AXOM_USE_CALIPER` and `adiak` usage with `AXOM_USE_ADIAK`. --- ...ssen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake | 2 -- .../lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake | 2 -- .../lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake | 2 -- ...nsel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake | 2 -- ...rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake | 2 -- ...rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake | 2 -- scripts/spack/packages/axom/package.py | 2 -- src/axom/config.hpp.in | 5 ----- src/cmake/AxomConfig.cmake | 8 +++----- src/cmake/AxomOptions.cmake | 1 - src/docs/sphinx/quickstart_guide/config_build.rst | 9 +++++---- 11 files changed, 8 insertions(+), 29 deletions(-) diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake index d808b96b3d..53a362a98b 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake @@ -87,8 +87,6 @@ set(ENABLE_CUDA ON CACHE BOOL "") set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "") -set(AXOM_ENABLE_ANNOTATIONS ON CACHE BOOL "") - set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "") set(CMAKE_CUDA_FLAGS "-restrict --expt-extended-lambda " CACHE STRING "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake index 8903414200..0df772f8f9 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake @@ -79,8 +79,6 @@ set(ENABLE_CUDA ON CACHE BOOL "") set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "") -set(AXOM_ENABLE_ANNOTATIONS ON CACHE BOOL "") - set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "") set(CMAKE_CUDA_FLAGS "-restrict --expt-extended-lambda " CACHE STRING "") diff --git a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake index e161d860f5..f779ef21f3 100644 --- a/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake +++ b/host-configs/lassen-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake @@ -85,8 +85,6 @@ set(ENABLE_CUDA ON CACHE BOOL "") set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "") -set(AXOM_ENABLE_ANNOTATIONS ON CACHE BOOL "") - set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "") set(CMAKE_CUDA_FLAGS "-restrict --expt-extended-lambda -Xcompiler=--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 " CACHE STRING "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake index e78f2ca719..edfe16b990 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-clang@10.0.1.2_cuda.cmake @@ -87,8 +87,6 @@ set(ENABLE_CUDA ON CACHE BOOL "") set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "") -set(AXOM_ENABLE_ANNOTATIONS ON CACHE BOOL "") - set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "") set(CMAKE_CUDA_FLAGS "-restrict --expt-extended-lambda " CACHE STRING "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake index 620f21c2d5..136177a939 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-gcc@8.3.1.2_cuda.cmake @@ -79,8 +79,6 @@ set(ENABLE_CUDA ON CACHE BOOL "") set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "") -set(AXOM_ENABLE_ANNOTATIONS ON CACHE BOOL "") - set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "") set(CMAKE_CUDA_FLAGS "-restrict --expt-extended-lambda " CACHE STRING "") diff --git a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake index 0e073da7cd..a679aca4bb 100644 --- a/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake +++ b/host-configs/rzansel-blueos_3_ppc64le_ib_p9-xl@16.1.1.2_cuda.cmake @@ -85,8 +85,6 @@ set(ENABLE_CUDA ON CACHE BOOL "") set(CMAKE_CUDA_SEPARABLE_COMPILATION ON CACHE BOOL "") -set(AXOM_ENABLE_ANNOTATIONS ON CACHE BOOL "") - set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "") set(CMAKE_CUDA_FLAGS "-restrict --expt-extended-lambda -Xcompiler=--gcc-toolchain=/usr/tce/packages/gcc/gcc-8.3.1 " CACHE STRING "") diff --git a/scripts/spack/packages/axom/package.py b/scripts/spack/packages/axom/package.py index 9db1511ea6..c50f073a79 100644 --- a/scripts/spack/packages/axom/package.py +++ b/scripts/spack/packages/axom/package.py @@ -290,8 +290,6 @@ def initconfig_hardware_entries(self): entries.append(cmake_cache_option("ENABLE_CUDA", True)) entries.append(cmake_cache_option("CMAKE_CUDA_SEPARABLE_COMPILATION", True)) - entries.append(cmake_cache_option("AXOM_ENABLE_ANNOTATIONS", True)) - # CUDA_FLAGS cudaflags = "-restrict --expt-extended-lambda " diff --git a/src/axom/config.hpp.in b/src/axom/config.hpp.in index 5a0dd7f8b3..59050667e1 100644 --- a/src/axom/config.hpp.in +++ b/src/axom/config.hpp.in @@ -34,11 +34,6 @@ #define AXOM_BIN_DIR "@AXOM_BIN_DIR@" #cmakedefine AXOM_DATA_DIR "@AXOM_DATA_DIR@" -/* - * Indicates whether Axom is compiled with Annotations that can facilitate - * evaluation of performance with various performance tools. - */ -#cmakedefine AXOM_USE_ANNOTATIONS /* * Platform specific definitions diff --git a/src/cmake/AxomConfig.cmake b/src/cmake/AxomConfig.cmake index 015906d691..bcab515442 100644 --- a/src/cmake/AxomConfig.cmake +++ b/src/cmake/AxomConfig.cmake @@ -35,11 +35,9 @@ foreach(comp ${AXOM_COMPONENTS_ENABLED}) endforeach() ## Add compile-time options to the config file -## Check for options of the form AXOM_ENABLE_