Skip to content

Commit

Permalink
Merge pull request #302 from LLNL/feature/ASPHv2
Browse files Browse the repository at this point in the history
New ASPH H update algorithm
  • Loading branch information
jmikeowen authored Oct 22, 2024
2 parents 5dd6f94 + 9aa1a58 commit 6210f6d
Show file tree
Hide file tree
Showing 331 changed files with 12,282 additions and 10,342 deletions.
8 changes: 0 additions & 8 deletions .gitlab/os.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,6 @@
UPSTREAM_DIR: /usr/WS2/sduser/Spheral/spack_upstream/0.22
DISPLAY: ':0.0'

.on_toss_3_x86:
variables:
ARCH: 'toss_3_x86_64_ib'
GCC_VERSION: '8.3.1'
CLANG_VERSION: '9.0.0'
SPHERAL_BUILDS_DIR: /p/lustre1/sphapp/spheral-ci-builds
extends: [.sys_config]

.on_toss_4_x86:
variables:
ARCH: 'toss_4_x86_64_ib'
Expand Down
4 changes: 2 additions & 2 deletions .gitlab/specs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
.gcc_mvapich2_cxxonly:
variables:
SPEC: 'gcc@$GCC_VERSION^mvapich2'
EXTRA_CMAKE_ARGS: '-DENABLE_CXXONLY=On'
EXTRA_CMAKE_ARGS: '-DENABLE_CXXONLY=On -DENABLE_WARNINGS_AS_ERRORS=On'

.gcc_mvapich2:
variables:
Expand All @@ -24,11 +24,11 @@
.gcc_spectrum:
variables:
SPEC: 'gcc@$GCC_VERSION^spectrum-mpi'
EXTRA_CMAKE_ARGS: '-DENABLE_DEV_BUILD=On'

.clang_mvapich2:
variables:
SPEC: 'clang@$CLANG_VERSION^mvapich2'
EXTRA_CMAKE_ARGS: '-DENABLE_WARNINGS_AS_ERRORS=On -DENABLE_DEV_BUILD=On'

.cuda_11_gcc_~mpi:
variables:
Expand Down
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
# sudo env DOCKERBUILDKIT=1 docker build . --target spheral-build-env-local --tag spheral-build-env (--progress=plain)
# Optional Arguments:
# --progress=plain : Prints plain output to terminal instead of windowed version.
# --build-args SPEC=... : Specify optional build argument to override. Defualt = gcc
# --build-args SPEC=... : Specify optional build argument to override. Default = gcc
# e.g. --build-args SPEC=clang

# To build and run a spheral test:
Expand Down
16 changes: 16 additions & 0 deletions RELEASE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,16 @@ Notable changes include:
* Caliper updated v2.11.
* Adiak added as TPL.
* Created singleton wrapper for cali::ConfigManger and python wrapped Caliper timer and Adiak routines.
* New ASPH idealH algorithm implemented, which is much more robust and accurate as H elongations become extreme.
* New experimental hourglass control algorithm implemented, along with some basic tests/demonstrations.
* H update algorithms converted to their own independent physics packages, no longer part of the various hydro packages.
* Physics interface updated slightly:
* Physics::postStateUpdate now returns a bool indicating if boundary conditions should be enforced again.
* Physics packages can now have Physics sub-packages, which can be run before or after the main package. The SpheralController
now checks for these packages and adds them to the physics package list as needed.
* Physics packages can indicate if they require Voronoi cell information be available. If so, a new package which computes and
updates the Voronoi information is automatically added to the package list by the SpheralController (similar to how the
Reproducing Kernel corrections are handled).
* Build changes / improvements:
* Distributed source directory must always be built now.
Expand All @@ -28,10 +38,16 @@ Notable changes include:
* The SVPH package is now optional (SPHERAL\_ENABLE\_SVPH).
* Cleaner Spheral Spack package.
* ENABLE\_DEV\_BUILD can now export targets properly.
* Added a GCC flag to prevent building variable tracking symbols when building PYB11 modules. This is unnecessary, and
on some platforms trying to build such symbols is very expensive and in some cases fails.
* Bug Fixes / improvements:
* Wrappers for MPI calls are simplified and improved.
* Time step estimate due to velocity divergence in RZ space has been fixed.
* Fixed tolerances for ANEOS equation of state temperature lookup
* Clang C++ warnings have eliminated, so the Clang CI tests have been updated to treat warnings as errors.
* Fix for installing libraries when building individual package WITH ENABLE_DEV_BUILD=On.
* Bugfix for RZ solid CRKSPH with compatible energy.
Version v2024.06.1 -- Release date 2024-07-09
==============================================
Expand Down
24 changes: 21 additions & 3 deletions cmake/Compilers.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ option(ENABLE_MISSING_INCLUDE_DIR_WARNINGS "show unused parameter warnings" ON)
set(CXX_WARNING_FLAGS "")
if (ENABLE_WARNINGS)
if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
list(APPEND CXX_WARNING_FLAGS -Wno-unused-command-line-argument -Wno-c++17-extensions)
list(APPEND CXX_WARNING_FLAGS -fdiagnostics-show-option -Wno-unused-command-line-argument -Wno-c++17-extensions)
endif()
else()
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -w")
Expand Down Expand Up @@ -59,7 +59,6 @@ message("-- using warning flags ${CXX_WARNING_FLAGS}")
set(CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS} -Wno-missing-include-dirs")
message("-- Fortran flags: ${CMAKE_Fortran_FLAGS}")


#-------------------------------------------------------------------------------
# PYB11 Target Flags
#-------------------------------------------------------------------------------
Expand All @@ -75,7 +74,8 @@ if ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang")
-Wno-delete-abstract-non-virtual-dtor)
elseif ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")
list(APPEND SPHERAL_PYB11_TARGET_FLAGS
-Wno-pedantic)
-Wno-pedantic
-fno-var-tracking-assignments)
endif()

#-------------------------------------------------------------------------------
Expand All @@ -85,3 +85,21 @@ if(${CMAKE_CXX_COMPILER_ID} STREQUAL "Intel")
set(CMAKE_CXX_FLAGS -wd11074,11076,654)
set(SPHERAL_PYB11_TARGET_FLAGS )
endif()

#-------------------------------------------------------------------------------
# BlueOS specific flags
#-------------------------------------------------------------------------------
if (DEFINED ENV{SYS_TYPE})
if ("$ENV{SYS_TYPE}" STREQUAL "blueos_3_ppc64le_ib_p9")
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
set(CXX_BLUEOS_FLAGS "-Os") # Needed to prevent relocation overflow errors during link
add_compile_options("$<$<COMPILE_LANGUAGE:CXX>:${CXX_BLUEOS_FLAGS}>")
message("-- Adding ${CXX_BLUEOS_FLAGS} to C++ compile flags")
endif()
endif()
endif()
#set(CXX_STRIP_FLAGS "-fdata-sections;-ffunction-sections")
#set(CXX_LINK_STRIP_FLAGS "-Wl,--gc-sections")
#set(CXX_LINK_STRIP_FLAGS "-Wl,-z combreloc")
#add_link_options("${CXX_LINK_STRIP_FLAGS}")

6 changes: 0 additions & 6 deletions scripts/devtools/spec-list.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,12 +6,6 @@
"[email protected]"
]
,
"toss_3_x86_64_ib": [
"[email protected]",
"[email protected]~mpi",
"[email protected]"
]
,
"blueos_3_ppc64le_ib_p9": [
"[email protected]",
"[email protected]+cuda~mpi cuda_arch=70",
Expand Down
5 changes: 2 additions & 3 deletions scripts/spack/configs/blueos_3_ppc64le_ib/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,6 @@ packages:
- 11.1.0
- 11.0.2
- 10.1.243
- 10.1.168
buildable: false
externals:
- spec: [email protected]~allow-unsupported-compilers
Expand All @@ -46,8 +45,6 @@ packages:
prefix: /usr/tce/packages/cuda/cuda-11.0.2
- spec: [email protected]~allow-unsupported-compilers
prefix: /usr/tce/packages/cuda/cuda-10.1.243
- spec: [email protected]+allow-unsupported-compilers
prefix: /usr/tce/packages/cuda/cuda-10.1.168

spectrum-mpi:
externals:
Expand All @@ -59,6 +56,8 @@ packages:
prefix: /usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-8.3.1
- spec: [email protected]%[email protected]
prefix: /usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-4.9.3
- spec: [email protected]%[email protected]
prefix: /usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-gcc-10.2.1
- spec: [email protected]%[email protected]
prefix: /usr/tce/packages/spectrum-mpi/spectrum-mpi-rolling-release-clang-9.0.0
- spec: [email protected]%[email protected]
Expand Down
56 changes: 0 additions & 56 deletions scripts/spack/configs/toss_3_x86_64_ib/compilers.yaml

This file was deleted.

154 changes: 0 additions & 154 deletions scripts/spack/configs/toss_3_x86_64_ib/packages.yaml

This file was deleted.

2 changes: 1 addition & 1 deletion src/Boundary/ConstantBoundary.cc
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ restoreState(const FileIO& file, const string& pathName) {
vector<std::string> keys;
file.read(keys, pathName + "/keys");
mBufferedValues.clear();
for (const auto key: keys) {
for (const auto& key: keys) {
std::string val;
file.read(val, pathName + "/BufferedValues/" + key);
mBufferedValues[key] = vector<char>(val.begin(), val.end());
Expand Down
Loading

0 comments on commit 6210f6d

Please sign in to comment.