Skip to content

Conversation

@nmnobre
Copy link

@nmnobre nmnobre commented Jan 13, 2025

Hi,

I noticed this while implementing ADS preconditioning functionality, and thought it could be useful to others.

Cheers,
-Nuno

victorapm pushed a commit that referenced this pull request Jan 21, 2026
* LC Spack Support (#1204)

* Add current GEOSX compilers to spack.

* Added python interface.

* Format python files with YAPF (#1947)

* spack environment file updates for LC


Co-authored-by: Benjamin Curtice Corbett <corbett5@llnl.gov>
Co-authored-by: Christopher Sherman <sherman27@llnl.gov>
Co-authored-by: William R Tobin <4522899+wrtobin@users.noreply.github.com>
victorapm pushed a commit that referenced this pull request Jan 21, 2026
* LC Spack Support (#1204)

* Spack work.

* Working with existing LLNL host configs.

* SuiteSparse on Lassen progress.

* Trilinos working on Lassen.

* HYPRE finally working.

* Trilinos MKL TPL

* Fixed CHAI version.

* Initial commit MacOS spack support

* Travis host configs.

* Expanded VTK libraries.

Co-authored-by: Herve Gross <herve.gross@total.com>

* Python interface (#1068)

* Add current GEOSX compilers to spack.

* Added python interface.

* Removed static variables.

* Python improvements.

* Removed std::string.

Co-authored-by: Randolph R. Settgast <settgast1@llnl.gov>

* Corbett/references and exceptions (#1318)

* Changes to Group and Wrapper to favor references.

* Added exceptions to harden the Python interface.

* Added a Spack and Uberenv guide.

* Changed getConstitutiveRelation and getConstitutiveManager.

* Changed getMeshBodies, getMeshBody and getMeshLevel.

* Changed getDomainPartition

* Changed getRegion and getSubRegion.

* Prevent MPI_Init from being called twice, (occurs with pygeosx).

* Changed getConstitutiveModel(s).

* Removing unnecessary uses of getGroupPointer.

* Changed Group::getParent and Wrapper constructor.

* Removed function input paths from restart.

* Changes for Summit. (#1367)

* Spack changes. (#1445)

* Use {fmt} for message formatting (#1568)

* Adding features for Wellbore meshing (#1424)

* added option to specify inner radius of cartesian mapping

* fix error in silo output

* modifications to wellbore parallel mesh gen + addNeighbor changes to allow ranks to be mutual periodic neighbors (doubly-neighbored)

* add hard coded coordinatese in the radial direction

* bugfix for integer overflow with hypre int

* fixes for mgr on gpu

* - Add additional instrumentation for using MGR (make restrictor, compute Auu)
- Update hypre linear algebra interface to the latest hypre/mgr
- Update MGR recipes for GPU

* modified LAIHelperFunctions::separateComponentFilter to batch insert rows. Introduced MatrixBase::separateComponentFilter as a specialized filter, implemented HypreMatrix::separateComponentFilter.

* some cleanup for HypreMatrix::separateComponentFilter

Co-authored-by: Sy-Tuan Nguyen <45685596+sytuannguyen@users.noreply.github.com>

* implement single read variant of HypreMatrix::separateComponentFilter

* Use full matrix instead of SDC approximation for mechanics in hydrofrac solver.
Fix bug in setting options for mechanics block solver.

* Changes to run on Summit. (#1546)

Co-authored-by: Randolph R. Settgast <settgast1@llnl.gov>

* fix bug from summit update

* fix bug in SinglePhasePoromechanicsSolver::implicitStepComplete

* resolve host-device ghost index array inconsistency

* added annulus option to cylinder geometry. added error check for aperature table

* Changes for new compilers on summit/lassen (#1611)

* Updated hypre.

* Force uberenv to use python3.

* Added CUDA 11.0.3 on Summit.

* Added GCC 9.1.0 to Summit

* Added GCC 9.1.0 to Summit

* Changes to work with GCC 9.1.0 on Summit.

Co-authored-by: Benjamin Curtice Corbett <corbett5@llnl.gov>

* Updating function parCSRtoIJ required by latest hypre version

Co-authored-by: wrtobin <tobin6@llnl.gov>
Co-authored-by: Quan Bui <mquan.bui@gmail.com>
Co-authored-by: Sy-Tuan Nguyen <45685596+sytuannguyen@users.noreply.github.com>
Co-authored-by: Ben Corbett <32752943+corbett5@users.noreply.github.com>
Co-authored-by: Benjamin Curtice Corbett <corbett5@llnl.gov>
Co-authored-by: Nicola Castelletto <castelletto1@llnl.gov>

* Format python files with YAPF (#1947)

Enabling yapf formatting of python files

* Add PT-Scotch as a partitioning method option in VTKMesh (#1996)

* Change `geosx` to `geos` in macros, include guards, namespace... (#2392)

This patch aims at shrinking `GEOSX` into `GEOS`.
- The `geosx` namespace is renamed `geos`.
- All the `GEOSX_ASSERT`, `GEOSX_LOG`, … are renamed `GEOS_…`
- All the include guards are modified.
- All the paths to the old `http://gihub.com/GEOSX/GEOSX` are renamed appropriately
- Mention to `GEOSX` in the text of the documentation is changed to `GEOS`
Meanwhile, `GEOSX` is kept for the following cases
- The executable is still named `geosx`, the examples in the doc still reflect the current naming.
- All the tools named after `geosx` kept their `geosx` (_e.g._ `pygeox`, `geosx_xml_tools`)
- All the `cmake` configuration flags (_e.g._ `GEOSX_TPL_DIR`, `GEOSX_USE_CUDA`) are unchanged.
- The `host-config` files are not changed.
- The variables names, classes or files containing `GEOSX` are not modified.

* Initial HIP/ROCM Support (#2453)

* Ensure unit tests are enabled by default. (#2464)

* Add geos-specific option to suppress/enable unit tests, active by default.

* Spack Update (#2028)

* Add mesa to packages.yaml, vtk issues

* modify, add fmt recipe

* remove cxx flags from blueos (consistent with RADIUSS and Axom)

* Add specific uncrustify version, remove optimization flags from toss3

* Move spack configs and package recipes to separate folders; delete uberenv directory

* Add uberenv as a submodule. Add uberenv config file

* Bump conduit, add libtools external package

* Bill's Conduit/HDF5 changes + switcharoo, try building latest pugixml

* Add vtk patches + Try replace hypre-cuda with +hypre+cuda and caliper variant changes

* Add camp dependency for RAJA path

* make suite-sparse mandatory (spack is not always adding it to spec otherwise)

* Change clang@upstream for blueos to clang@9 so clingo doesn't yell

* gmpr fix

* Use more accurate caliper version and correct readline version

* Cleanup vtk script, vtk now builds on lassen

* Update to spack 0.18.0

* Update hypre/silo/hdf5/conduit and use older trilinos recipe

* Can build all blueos libraries - compilation errors - use netlib-lapack instead of essl

* first pass at spack environments

* Add spack.yaml for lassen; modify spack.yaml install_tree path to blueos_3_ppc64le_ib_p9_package

* Generalize HDF5 and pugixml configuration so both thirdPartyLibs and spack builds work

* Update umpire/raja/chai/hypre - only quartz re-tested so far

* blueos config - set CUDA 11 as default

* Cuda 11 explicit spec

* Update CMake version; add gcc-toolchain flag for quartz

* Update caliper, adiak, trilinos, cmake requirement, camp version in spack recipe

* Update adiak namespace

* Add cxx flags (std:: errors), disable hwloc dependency (runtime MPI error) for trilinos recipe

* Guard adiak or adiak::adiak target

* Add FESAPI spack recipe

* pugixml and fmt changes for toss 3 quartz

* Update CUDA to 11.2.2, update hypre, add -fPIC flag for hypre~shared, add missing libcublasLt path

* use intel-oneapi-mkl instead of intel-mkl; use magic mvapich2; use mpi fortran in superlu-dist; disable fesapi default; update hypre; update cmake

* Update CMake to 3.26.3; CMake fortran/CXX error with 3.23.1

* Missing fmt dependency

* Upgrade to uberenv spack environments - update uberenv submodule, move to spack.yaml config files, comment out unused recipe patches

* Move pygeosx dependencies to a separate spack recipe; update to latest spack release; use older hdf5 recipe; small trilinos change due to spack cmakepackage reorg; add spack environment files for pygeosx; adjust spec check for HYPRE cuda/hip enabled; add project json file for uberenv to build pygeosx; delete old python spec files

* Mandate CMake >=3.23

* Spack environment file for toss 3 (rzgenie)

* Remove cp unused

* Omit uberenv from submodule check

* Lock blt version to bypass raja/chai/camp blt::stub error

* Make python required dependency; make pygeosx variant toggle

* Generate separate host-config for LvArray

* Update hypre and umpire versions, Remove some package recipes using git version specifiers where possible

* Update spack commit, remove chai and umpire recipes

* Remove fesapi support from spack

* Remove toss_3 recipe (no more toss_3 systems)

* hypre update

* Remove unneeded dependencies for pygeosx, add recommendation to build python3 using Linux package manager > spack

* Attempt to add openmp variant

* Try adding fPIC to cflag as well...

* Guard the cuda release flags

* Update hypre hash

* Try adding cached_cmake.py logic for determining MPIEXEC

* Testing spacked docker images

* Added uberenv as submodule

* Try rocky

* Changes to get things working with tpl version updates - includes spack recipe changes, spack version update

* Try rocky gcc

* Find mpfr, reduce build size

* Do not build pygeosx for gcc, build silo~shared

* Update raja suite and vtk for github action images

* spack environment file updates for LC

* Try curl with error

* Update .gitignore for spack, update cmake version for blueos

* Remove environment variable sets from rocky linux Dockerfiles

* Attempt to update LC build script for uberenv

* Script arg indexing

* Script clang13-cuda12 naming

* Keep gcc env vars for mpi4py installation

* Try pangea3, separate total environment file into separate pangea and pecan

* Remove leftover merge comment

* change openmpi spec

* Spelling, flag geosx recipe adjustments

* Possible rpaths and LD_LIBRARY_PATH options for pangea-3

* cleanup paths, add symlinks so spack can find link dependencies, bump cmake requirement

* Have spack build part of texinfo dependencies, install bzip2 for tar

* Let spack build ncurses

* Use built gettext

* Add bison and flex to env

* Build scotch using make instead of cmake build system; ~shared/static relevant libraries; adjust essl recipe; fix blas/lapack host-config logic; GEOS_LA_INTERFACE spelling

* Disable error for scotch

* Fix vtk recipe multiple cxx flags; add no avx compiler flags

* Changes to fix rockylinux clang; lock-in clang@17, newer clang@18 fails to configure with CMake; add -fPIC fortran flag to some dependencies

* Update hypre version hash

* Update hyper version hash for LC spack.yaml files

* Try caliper/trilinos/cmake updates + different rockylinux clang workaround

* differentiate cuda versions in rocky

* Disable deprecated warning failures

* Sherlock updates, try define spec in gha yml

* uberenv script comment fix

* cleanup comment

* Try fix for ascii codec decode error

* Try set through env variables

* Stick with actual ascii codec decode fix, add comment

* Remove debug env print

* feat: macOS spack environment.

* add addr2line

* remove hdf5

* Fix Sequoia build: update spack version.

* python3-dev

* python3-dev in remaining docker files.

---------

Co-authored-by: Ben Corbett <32752943+corbett5@users.noreply.github.com>
Co-authored-by: Herve Gross <herve.gross@total.com>
Co-authored-by: Randolph R. Settgast <settgast1@llnl.gov>
Co-authored-by: Sergey Klevtsov <s.klevzoff@gmail.com>
Co-authored-by: wrtobin <tobin6@llnl.gov>
Co-authored-by: Quan Bui <mquan.bui@gmail.com>
Co-authored-by: Sy-Tuan Nguyen <45685596+sytuannguyen@users.noreply.github.com>
Co-authored-by: Benjamin Curtice Corbett <corbett5@llnl.gov>
Co-authored-by: Nicola Castelletto <castelletto1@llnl.gov>
Co-authored-by: Christopher Sherman <sherman27@llnl.gov>
Co-authored-by: Sergey Klevtsov <klevtsov@stanford.edu>
Co-authored-by: TotoGaz <49004943+TotoGaz@users.noreply.github.com>
Co-authored-by: William R Tobin <4522899+wrtobin@users.noreply.github.com>
Co-authored-by: Brian Han <han12@llnl.gov>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant