Skip to content

Commit

Permalink
Merge pull request #1296 from LLNL/v0.9.0-rc
Browse files Browse the repository at this point in the history
v0.9.0 release candidate
  • Loading branch information
white238 authored Mar 20, 2024
2 parents 0da8a5b + 1dda8f1 commit 5f53159
Show file tree
Hide file tree
Showing 1,078 changed files with 26,484 additions and 12,891 deletions.
4 changes: 3 additions & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2017-2023, 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)
Expand Down Expand Up @@ -36,6 +36,7 @@ stages:
- ${ALLOC_COMMAND} ${ASSIGN_ID} python3 scripts/llnl_scripts/build_src.py -v --host-config ${HOST_CONFIG} --extra-cmake-options '-DENABLE_DOCS=OFF ${EXTRA_CMAKE_OPTIONS}' --build-type ${BUILD_TYPE:-Debug} ${EXTRA_OPTIONS}
- echo -e "\e[0Ksection_end:$(date +%s):src_build_and_test\r\e[0K"
artifacts:
expire_in: 2 weeks
paths:
- _axom_build_and_test_*/output.log*.txt
- _axom_build_and_test_*/build-*/output.log*.txt
Expand All @@ -48,6 +49,7 @@ stages:
- ${ALLOC_COMMAND} python3 scripts/llnl_scripts/build_tpls.py -v --spec="${SPEC} ${EXTRA_SPEC}" --directory=${FULL_BUILD_ROOT}
- echo -e "\e[0Ksection_end:$(date +%s):full_build_and_test\r\e[0K"
artifacts:
expire_in: 2 weeks
paths:
- ${FULL_BUILD_ROOT}/${SYS_TYPE}/*/_axom_build_and_test_*/output.log*.txt
- ${FULL_BUILD_ROOT}/${SYS_TYPE}/*/_axom_build_and_test_*/build-*/output.log*.txt
Expand Down
7 changes: 3 additions & 4 deletions .gitlab/build_lassen.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
# Copyright (c) 2017-2023, 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)

####
# This is the share configuration of jobs for lassen
.on_lassen:
variables:
tags:
- shell
- lassen
Expand All @@ -23,14 +22,14 @@
.src_build_on_lassen:
stage: build
variables:
ALLOC_COMMAND: "lalloc 1 -W 25 -q pdebug -alloc_flags atsdisable"
ALLOC_COMMAND: "lalloc 1 -W 25 -q pci -alloc_flags atsdisable"
extends: [.src_build_script, .on_lassen, .src_workflow]
needs: []

.full_build_on_lassen:
stage: build
variables:
ALLOC_COMMAND: "lalloc 1 -W 45 -q pdebug -alloc_flags atsdisable"
ALLOC_COMMAND: "lalloc 1 -W 45 -q pci -alloc_flags atsdisable"
extends: [.full_build_script, .on_lassen, .full_workflow]
needs: []

Expand Down
12 changes: 3 additions & 9 deletions .gitlab/build_quartz.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2017-2023, 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)
Expand All @@ -10,7 +10,7 @@
- shell
- quartz
rules:
- if: '$CI_COMMIT_BRANCH =~ /_qnone/ || $ON_RUBY == "OFF"' #run except if ...
- if: '$CI_COMMIT_BRANCH =~ /_qnone/ || $ON_QUARTZ == "OFF"' #run except if ...
when: never
- if: '$CI_JOB_NAME =~ /quartz_release/'
when: always
Expand All @@ -26,9 +26,7 @@ quartz_allocate:
extends: [.on_quartz, .src_workflow]
stage: allocate
script:
# Use when ellastic ci is on quartz or we go back to ruby
#- salloc --reservation=ci --qos=ci_ruby -N 1 -c 36 -t 60 --no-shell --job-name=${PROJECT_ALLOC_NAME}
- salloc -N 1 -c 36 -t 60 -p pdebug --no-shell --job-name=${PROJECT_ALLOC_NAME}
- salloc -N 1 -c 36 -t 60 --res=ci --no-shell --job-name=${PROJECT_ALLOC_NAME}
needs: []

####
Expand All @@ -48,17 +46,13 @@ quartz_release:
.src_build_on_quartz:
stage: build
variables:
# Use when ellastic ci is on quartz or we go back to ruby
# ALLOC_COMMAND: "srun --reservation=ci --qos=ci_ruby -t 60 -N 1 "
ALLOC_COMMAND: "srun -t 60 -N 1 -p pdebug"
extends: [.src_build_script, .on_quartz, .src_workflow]
needs: [quartz_allocate]

.full_build_on_quartz:
stage: build
variables:
# Use when ellastic ci is on quartz or we go back to ruby
# ALLOC_COMMAND: "srun --reservation=ci --qos=ci_ruby -t 60 -N 1 "
ALLOC_COMMAND: "srun -t 60 -N 1 -p pdebug"
extends: [.full_build_script, .on_quartz, .full_workflow]
needs: []
Expand Down
4 changes: 2 additions & 2 deletions .gitlab/build_rzansel.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2017-2023, 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)
Expand All @@ -12,7 +12,7 @@
- rzansel
before_script:
- module load cuda/11.2.0
- module load cmake/3.18.0
- module load cmake/3.21.1

####
# Template
Expand Down
2 changes: 1 addition & 1 deletion .gitlab/build_rzgenie.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2017-2023, 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)
Expand Down
23 changes: 3 additions & 20 deletions .gitlab/build_tioga.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright (c) 2017-2023, 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)
Expand All @@ -21,14 +21,14 @@
.src_build_on_tioga:
stage: build
variables:
ALLOC_COMMAND: "flux mini run --exclusive --time-limit=30m --nodes=1"
ALLOC_COMMAND: "flux run --queue pci --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 mini run --exclusive --time-limit=60m --nodes=1"
ALLOC_COMMAND: "flux run --queue pci --exclusive --time-limit=60m --nodes=1"
extends: [.full_build_script, .on_tioga, .full_workflow]
needs: []

Expand All @@ -39,14 +39,6 @@ tioga-clang_16_0_0_hip_5_6_0-src:
COMPILER: "[email protected]_hip"
HOST_CONFIG: "tioga-toss_4_x86_64_ib_cray-${COMPILER}.cmake"
extends: .src_build_on_tioga
allow_failure: true

tioga-cce_15_0_1_hip_5_4_3-src:
variables:
COMPILER: "[email protected]_hip"
HOST_CONFIG: "tioga-toss_4_x86_64_ib_cray-${COMPILER}.cmake"
extends: .src_build_on_tioga
allow_failure: true

####
# Full Build jobs
Expand All @@ -56,12 +48,3 @@ tioga-clang_16_0_0_hip_5_6_0-full:
SPEC: "%${COMPILER}~openmp+rocm+mfem+c2c"
EXTRASPEC: "amdgpu_target=gfx90a ^[email protected] ^[email protected] ^[email protected] ^raja~openmp+rocm ^umpire~openmp+rocm ^hdf5 cflags=-Wno-int-conversion"
extends: .full_build_on_tioga
allow_failure: true

tioga-cce_15_0_1_hip_5_4_3-full:
variables:
COMPILER: "[email protected]_hip"
SPEC: "%${COMPILER}~openmp+rocm+mfem+c2c"
EXTRASPEC: "amdgpu_target=gfx90a ^[email protected] ^[email protected] ^[email protected] ^raja~openmp+rocm ^umpire~openmp+rocm ^hdf5 cflags=-Wno-int-conversion"
extends: .full_build_on_tioga
allow_failure: true
8 changes: 6 additions & 2 deletions .mailmap
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ Aaron Black <[email protected]> Aaron C. Black <[email protected]
Adam J. Kunen <[email protected]> Adam J. Kunen <[email protected]>
Adrien M. Bernede <[email protected]> Adrien Bernede <[email protected]>
Aesha Parekh <[email protected]> Aesha Parekh <[email protected]>
Alan Dayton <[email protected]> Alan Dayton <[email protected]>
Arlie Capps <[email protected]> Arlie Capps <[email protected]>
Arlie Capps <[email protected]> Arlie Capps <[email protected]>
Arlie Capps <[email protected]> Arlie Capps <[email protected]>
Expand All @@ -13,6 +14,7 @@ Benjamin Curtice Corbett <[email protected]> Benjamin Curtice Corbett <corbet
Benjamin Curtice Corbett <[email protected]> Ben Corbett <[email protected]>
Benjamin Curtice Corbett <[email protected]> Benjamin Corbett <[email protected]>
Benjamin Curtice Corbett <[email protected]> Ben Corbett <[email protected]>
Brad J. Whitlock <[email protected]> Brad Whitlock <[email protected]>
Brian Manh Hien Han <[email protected]> Brian Han <[email protected]>
Brian Manh Hien Han <[email protected]> Brian Manh Hien Han <[email protected]>
Brian T.N. Gunney <[email protected]> Brian Gunney <[email protected]>
Expand All @@ -24,7 +26,10 @@ Daniel Taller <[email protected]> Danny Taller <66029857+dtaller@u
Esteban Pauli <[email protected]> Esteban Pauli <[email protected]>
Evan Taylor Desantola <[email protected]> Evan Taylor DeSantola <[email protected]>
George Zagaris <[email protected]> George Zagaris <[email protected]>
Jacob Spainhour <[email protected]> jcs15c <[email protected]>
Jacob Spainhour <[email protected]> jcs15c <[email protected]>
Jacob Spainhour <[email protected]> Jacob Spainhour <[email protected]>
Jacob Spainhour <[email protected]> Jacob Spainhour <[email protected]>
Jamie A. Bramwell <[email protected]> Jamie Bramwell <[email protected]>
Joe Hennis <[email protected]> Hennis <[email protected]>
Joe Hennis <[email protected]> hennis1 <[email protected]>
Josh Essman <[email protected]> Josh Essman <[email protected]>
Expand Down Expand Up @@ -59,7 +64,6 @@ Robert Carson <[email protected]> Robert <[email protected]>
Robert Carson <[email protected]> rcarson3 <[email protected]>
Robert Cohn <[email protected]> rscohn2 <[email protected]>
Samuel P. Mish <[email protected]> samuelpmishLLNL <[email protected]>
Brad J. Whitlock <[email protected]> Brad Whitlock <[email protected]>

Axom Shared User <[email protected]> Asctoolkit Shared User <[email protected]>
Axom Shared User <[email protected]> Asctoolkit Shared User <[email protected]>
Expand Down
4 changes: 4 additions & 0 deletions .readthedocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ build:
os: ubuntu-22.04
tools:
python: "3.11"
apt_packages:
- ghostscript
- graphviz
- texlive-full

# Build documentation in the docs/ directory with Sphinx
sphinx:
Expand Down
4 changes: 2 additions & 2 deletions .uberenv_config.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,12 @@
"package_final_phase": "initconfig",
"package_source_dir": "../..",
"spack_url": "https://github.com/spack/spack.git",
"spack_commit": "44f0708af424cb12dd05dd761de1cdae986ea5cf",
"spack_commit": "0d92b07dbd30b41bc6f50a61f26bc0056dca5e44",
"spack_configs_path": "scripts/spack/configs",
"spack_packages_path": ["scripts/spack/radiuss-spack-configs/packages", "scripts/spack/packages"],
"spack_concretizer": "clingo",
"vcpkg_url": "https://github.com/microsoft/vcpkg",
"vcpkg_commit": "6f7ffeb18f99796233b958aaaf14ec7bd4fb64b2",
"vcpkg_commit": "c8696863d371ab7f46e213d8f5ca923c4aef2a00",
"vcpkg_triplet": "x64-windows",
"vcpkg_ports_path": "scripts/vcpkg_ports"
}
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC.
Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC.
All rights reserved.

Redistribution and use in source and binary forms, with or without
Expand Down
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,13 @@
[comment]: # (#################################################################)
[comment]: # (Copyright 2017-2023, Lawrence Livermore National Security, LLC)
[comment]: # (Copyright 2017-2024, Lawrence Livermore National Security, LLC)
[comment]: # (and Axom Project Developers. See the top-level LICENSE file)
[comment]: # (for details.)
[comment]: #
[comment]: # (# SPDX-License-Identifier: BSD-3-Clause)
[comment]: # (#################################################################)


# <img src="/share/axom/logo/axom_logo.png?raw=true" width="250" valign="middle" alt="Axom"/>
# <img src="/share/axom/logo/axom_logo_transparent.png?raw=true" width="250" valign="middle" alt="Axom"/>

[![Azure Pipelines Build Status](https://dev.azure.com/axom/axom/_apis/build/status/LLNL.axom?branchName=develop)](https://dev.azure.com/axom/axom/_build/latest?definitionId=1&branchName=develop)
[![Documentation Status](https://readthedocs.org/projects/axom/badge/?version=develop)](https://axom.readthedocs.io/en/develop/?badge=develop)
Expand Down Expand Up @@ -56,7 +56,7 @@ Thanks to all of Axom's
License
-------

Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC.
Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC.
Produced at the Lawrence Livermore National Laboratory.

Copyrights and patents in the Axom project are retained by contributors.
Expand Down
4 changes: 2 additions & 2 deletions RELEASE
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
*******************************************************************************

Axom: ................................, version 0.8.1
Axom: ................................, version 0.9.0

Copyright (c) 2017-2023, Lawrence Livermore National Security, LLC.
Copyright (c) 2017-2024, Lawrence Livermore National Security, LLC.
Produced at the Lawrence Livermore National Laboratory.
All rights reserved. See details in the file axom/LICENSE.

Expand Down
71 changes: 67 additions & 4 deletions RELEASE-NOTES.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@

[comment]: # (#################################################################)
[comment]: # (Copyright 2017-2023, Lawrence Livermore National Security, LLC)
[comment]: # (Copyright 2017-2024, Lawrence Livermore National Security, LLC)
[comment]: # (and Axom Project Developers. See the top-level LICENSE file)
[comment]: # (for details.)
[comment]: #
Expand All @@ -19,7 +19,69 @@ The Axom project release numbers follow [Semantic Versioning](http://semver.org/

## [Unreleased] - Release date yyyy-mm-dd

## [v0.8.1] - Release date 2023-08-16
## [Version 0.9.0] - Release date 2024-03-19

### Added
- Primal: Adds a `Quadrilateral` primitive
- Primal: Adds a `compute_bounding_box()` operator for computing the bounding
box of a `Quadrilateral`
- Primal: Adds a `clip()` operator for clipping a tetrahedron against the
half-space defined by a plane
- Primal: Adds a `checkAndFixOrientation()` function to `primal::Tetrahedron`
that swaps the order of vertices if the signed volume of the Tetrahedron is
negative, resulting in the signed volume becoming positive.
- Adds `FlatMap`, a generic key-value store which aims for drop-in compatibility
with `std::unordered_map`, but utilizes an open-addressing design.
- Adds support for device-side use of `Array::push_back()` and `Array::emplace_back()`.
- Adds initial support for using Slic streams with tags
- Adds an example that finds intersection candidate pairs between two Silo
hexahedral meshes using either a BVH or Implicit Grid spatial index
- Quest: Adds `setTetPredFromBoundingBox()` and `setTetPred()` functions to
`quest::ProEReader` and `PProEReader` that set a tet predicate, allowing
user code to read in a subset of a Pro/E ASCII tetrahedron mesh file.

### Changed
- `MarchingCubes` has optimizations to improve GPU performance, particularly for
repeated computations. The constructor has changed and a new `setMesh` method
is added to set (or change) the mesh. New accessors present output data
without moving them from device to host. These accessors are an interim
solution and likely to be updated in the future.
- `DistributedClosestPoint` outputs are now controlled by the `setOutput` method.
- `MarchingCubes` allows user to select the underlying data-parallel implementation
- `fullParallel` works best on GPUs.
- `hybridParallel` reduces the amount of data processed and works best with
`MarchingCubesRuntimePolicy::seq`.
- `byPolicy` (the default) selects the implementation based on the runtime policy.
- `MarchingCubes` and `DistributedClosestPoint` classes identify domains by their
`state/domain_id` parameters if provided, or the local iteration index if not.
- `MarchingCubes` and `DistributedClosestPoint` classes changed from requiring the Blueprint
coordset name to requiring the Blueprint topology name. The changed interface methods are:
- `DistributedClosestPoint::setObjectMesh`
- `DistributedClosestPoint::computeClosestPoints`
- `MarchingCubes::MarchingCubes`
- `MarchingCubesSingleDomain::MarchingCubesSingleDomain`
- Primal: `Polyhedron::volume()` function changed from returning a signed
volume to an unsigned volume. The added `Polyhedron::signedVolume()` function
returns the signed volume.
- Primal: `intersection_volume()` operators changed from returning a signed
volume to an unsigned volume.
- Primal's `BoundingBox::contains(BoundingBox)` now returns `true` when the input is empty
- Renamed axom's bit utility functions to conform to `C++20` standard: `popCount() -> popcount()`,
`trailingZeros() -> countr_zero()` and `leadingZeros() -> countl_zero()`
- Renamed `axom::utilities::swapEndian() -> byteswap()` to conform to `C++23` standard

### Fixed
- quest's `SamplingShaper` now properly handles material names containing underscores
- quest's `SamplingShaper` can now be used with an mfem that is configured for (GPU) devices
- primal's `Polygon` area computation in 3D previously only worked when the polygon was aligned with the XY-plane. It now works for arbitrary polygons.
- Upgrades our `vcpkg` usage for automated Windows builds of our TPLs to its [2023.12.12 release](https://github.com/microsoft/vcpkg/releases/tag/2023.12.12)
- Fixed a bug in the bounds checks for `primal::clip(Triangle, BoundingBox)`
- Fixed a bug when loading Sidre groups with attributes that already exist
- Fixed `std::locale` error when when compiling `src/axom/core/utilities/System.cpp` using nvcc
- Include `cstdint` for higher gcc version support (e.g. gcc-13)
- Fixed several memory leaks in `axom::Array`, `quest::Shaping` and `sidre::MFEMSidreDataCollection`

## [Version 0.8.1] - Release date 2023-08-16

### Changed
- Updates to [RAJA version 2023.06.0][https://github.com/LLNL/RAJA/releases/tag/v2023.06.0]
Expand All @@ -30,7 +92,7 @@ The Axom project release numbers follow [Semantic Versioning](http://semver.org/
- Fixed MFEMSidreDataCollection finite element space bug
- Various fixes to CMake machinery

## [v0.8.0] - Release date 2023-07-26
## [Version 0.8.0] - Release date 2023-07-26

### Added
- Adds MarchingCubes class implementing the marching cubes algorithm for surface detection.
Expand Down Expand Up @@ -969,7 +1031,8 @@ fractions for the associated materials must be supplied before shaping.
- Use this section in case of vulnerabilities


[Unreleased]: https://github.com/LLNL/axom/compare/v0.8.1...develop
[Unreleased]: https://github.com/LLNL/axom/compare/v0.9.0...develop
[Version 0.9.0]: https://github.com/LLNL/axom/compare/v0.8.1...v0.9.0
[Version 0.8.1]: https://github.com/LLNL/axom/compare/v0.8.0...v0.8.1
[Version 0.8.0]: https://github.com/LLNL/axom/compare/v0.7.0...v0.8.0
[Version 0.7.0]: https://github.com/LLNL/axom/compare/v0.6.1...v0.7.0
Expand Down
6 changes: 3 additions & 3 deletions azure-pipelines.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
#
# Copyright (c) 2017-2023, 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)
Expand All @@ -9,8 +9,8 @@ variables:
DO_BUILD: 'yes'
DO_TEST: 'yes'
DO_CLEAN: 'no'
CLANG10_IMAGENAME: 'axom/tpls:clang-10_07-26-23_22h-58m'
GCC11_IMAGENAME: 'axom/tpls:gcc-11_07-26-23_22h-58m'
CLANG10_IMAGENAME: 'axom/tpls:clang-10_03-07-24_19h-20m'
GCC11_IMAGENAME: 'axom/tpls:gcc-11_03-07-24_19h-20m'
system.debug: false

jobs:
Expand Down
2 changes: 1 addition & 1 deletion config-build.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#!/bin/sh

# Copyright (c) 2017-2023, 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)
Expand Down
Loading

0 comments on commit 5f53159

Please sign in to comment.