Skip to content

Commit

Permalink
Merge branch 'develop' into ouassim/edfm_loader
Browse files Browse the repository at this point in the history
  • Loading branch information
paveltomin authored Jan 28, 2025
2 parents 1ecec46 + 5bfdb01 commit e49b685
Show file tree
Hide file tree
Showing 256 changed files with 10,191 additions and 3,200 deletions.
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"build": {
"dockerfile": "Dockerfile",
"args": {
"GEOS_TPL_TAG": "288-584"
"GEOS_TPL_TAG": "290-594"
}
},
"runArgs": [
Expand Down
25 changes: 25 additions & 0 deletions .github/workflows/ci_tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -183,6 +183,15 @@ jobs:
ENABLE_TRILINOS: OFF
BUILD_SHARED_LIBS: ON

- name: Sherlock CPU (centos 7.9.2009, gcc 10.1.0, open-mpi 4.1.2, openblas 0.3.10)
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/sherlock-gcc10.1.0-openmpi4.1.2-openblas0.3.10-zlib1.2.11
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GCP_BUCKET: geosx/Sherlock-CPU
HOST_CONFIG: host-configs/Stanford/sherlock-gcc10.cmake
BUILD_SHARED_LIBS: ON

uses: ./.github/workflows/build_and_test.yml
with:
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS }}
Expand All @@ -192,6 +201,7 @@ jobs:
ENABLE_HYPRE: ${{ matrix.ENABLE_HYPRE }}
ENABLE_TRILINOS: ${{ matrix.ENABLE_TRILINOS }}
GCP_BUCKET: ${{ matrix.GCP_BUCKET }}
HOST_CONFIG: ${{ matrix.HOST_CONFIG }}
RUNS_ON: ubuntu-22.04
secrets: inherit

Expand Down Expand Up @@ -346,6 +356,21 @@ jobs:
DOCKER_CERTS_DIR: "/etc/pki/ca-trust/source/anchors"
DOCKER_CERTS_UPDATE_COMMAND: "update-ca-trust"

- name: Sherlock GPU (centos 7.9.2009, gcc 10.1.0, open-mpi 4.1.2, openblas 0.3.10, cuda 12.4.0,)
BUILD_AND_TEST_CLI_ARGS: "--no-run-unit-tests --no-install-schema"
BUILD_GENERATOR: "--ninja"
CMAKE_BUILD_TYPE: Release
DOCKER_REPOSITORY: geosx/sherlock-gcc10.1.0-openmpi4.1.2-cuda12.4.0-openblas0.3.10-zlib1.2.11
ENABLE_HYPRE_DEVICE: CUDA
ENABLE_HYPRE: ON
ENABLE_TRILINOS: OFF
GCP_BUCKET: geosx/Sherlock-GPU
HOST_CONFIG: host-configs/Stanford/sherlock-gcc10-cuda12-sm70.cmake
RUNS_ON: streak2
NPROC: 8
DOCKER_RUN_ARGS: "--cpus=8 --memory=128g --runtime=nvidia -v /etc/pki/ca-trust/source/anchors/:/etc/pki/ca-trust/source/anchors/llnl:ro"
DOCKER_CERTS_DIR: "/etc/pki/ca-trust/source/anchors"
DOCKER_CERTS_UPDATE_COMMAND: "update-ca-trust"

# Below this line, jobs that deploy to Google Cloud.

Expand Down
3 changes: 2 additions & 1 deletion .integrated_tests.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
baselines:
bucket: geosx
baseline: integratedTests/baseline_integratedTests-pr3495-9552-257c87e
baseline: integratedTests/baseline_integratedTests-pr3395-9832-31f145e

allow_fail:
all: ''
streak: ''
16 changes: 16 additions & 0 deletions BASELINE_NOTES.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,22 @@ This file is designed to track changes to the integrated test baselines.
Any developer who updates the baseline ID in the .integrated_tests.yaml file is expected to create an entry in this file with the pull request number, date, and their justification for rebaselining.
These notes should be in reverse-chronological order, and use the following time format: (YYYY-MM-DD).

PR #3395 (2024-01-22)
=====================
Add new fields and change the default input for some tests.

PR #3416 (2024-01-21)
=====================
Refactoring of induced seismicity EQ solvers to add coupling.

PR #3310 (2024-01-21)
======================
Scalable rock toughness required new field.

PR #3228 (2024-01-15)
=====================
deltaVolume added in multiphase.

PR #3495 (2024-01-08)
=====================
Add missing logic to support switching from fixed mass rate injection rate constraint to max injection pressure.
Expand Down
14 changes: 10 additions & 4 deletions examples/ObjectCatalog/Base.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* Copyright (c) 2016-2024 Lawrence Livermore National Security LLC
* Copyright (c) 2018-2024 TotalEnergies
* Copyright (c) 2018-2024 The Board of Trustees of the Leland Stanford Junior University
* Copyright (c) 2023-2024 Chevron
* Copyright (c) 2023-2024 Chevron
* Copyright (c) 2019- GEOS/GEOSX Contributors
* All rights reserved
*
Expand Down Expand Up @@ -46,7 +46,7 @@ class Parameter
class Base
{
public:
Base( int junk, double const & junk2, Parameter& pbv )
Base( int junk, double const & junk2, Parameter & pbv )
{
GEOS_LOG( "calling Base constructor with arguments (" << junk << " " << junk2 << ")" );
}
Expand All @@ -56,14 +56,20 @@ class Base
GEOS_LOG( "calling Base destructor" );
}

using CatalogInterface = dataRepository::CatalogInterface< Base, int, double const &, Parameter& >;
static CatalogInterface::CatalogType& getCatalog()
using CatalogInterface = dataRepository::CatalogInterface< Base, int, double const &, Parameter & >;
static CatalogInterface::CatalogType & getCatalog()
{
static CatalogInterface::CatalogType catalog;
return catalog;
}

virtual std::string const getName() const = 0;

static DataContext const & getDataContext()
{
static DataFileContext const context = DataFileContext( "Base Test Class", __FILE__, __LINE__ );
return context;
}
};

#endif
12 changes: 8 additions & 4 deletions examples/ObjectCatalog/main.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
* Copyright (c) 2016-2024 Lawrence Livermore National Security LLC
* Copyright (c) 2018-2024 TotalEnergies
* Copyright (c) 2018-2024 The Board of Trustees of the Leland Stanford Junior University
* Copyright (c) 2023-2024 Chevron
* Copyright (c) 2023-2024 Chevron
* Copyright (c) 2019- GEOS/GEOSX Contributors
* All rights reserved
*
Expand All @@ -31,10 +31,14 @@ int main( int argc, char *argv[] )


GEOS_LOG( "Attempting to create a Derived1 object" );
std::unique_ptr<Base> derived1 = Base::CatalogInterface::Factory( "derived1", junk, junk2, param );
std::unique_ptr< Base > derived1 = Base::CatalogInterface::factory( "derived1",
Base::getDataContext(),
junk, junk2, param );
GEOS_LOG( "Attempting to create a Derived2 object" );
std::unique_ptr<Base> derived2 = Base::CatalogInterface::Factory( "derived2", junk, junk3, param );
std::unique_ptr< Base > derived2 = Base::CatalogInterface::factory( "derived2",
Base::getDataContext(),
junk, junk3, param );

Base::CatalogInterface::catalog_cast<Derived1>( *(derived2.get()));
Base::CatalogInterface::catalog_cast< Derived1 >( *(derived2.get()));
GEOS_LOG( "EXITING MAIN" );
}
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@
<SurfaceGenerator
name="SurfaceGen"
targetRegions="{ Domain }"
rockToughness="1e6"
initialRockToughness="1e6"
nodeBasedSIF="1"
mpiCommOrder="1"/>
</Solvers>
Expand Down
50 changes: 0 additions & 50 deletions host-configs/Stanford/sherlock-base.cmake

This file was deleted.

13 changes: 0 additions & 13 deletions host-configs/Stanford/sherlock-gcc10-cuda11-ampere.cmake

This file was deleted.

13 changes: 0 additions & 13 deletions host-configs/Stanford/sherlock-gcc10-cuda11-volta.cmake

This file was deleted.

Original file line number Diff line number Diff line change
@@ -1,17 +1,14 @@
include(${CMAKE_CURRENT_LIST_DIR}/sherlock-gcc10-ompi4.1.2-openblas0.3.10.cmake)

# OpenMP options
set(ENABLE_OPENMP OFF CACHE BOOL "" FORCE)
include(${CMAKE_CURRENT_LIST_DIR}/sherlock-gcc10.cmake)

# CUDA options
set(ENABLE_CUDA ON CACHE BOOL "" FORCE)
set(CUDA_VERSION "11.7.1" CACHE PATH "")
set(CUDA_VERSION "12.4.0" CACHE PATH "")
set(CUDA_HOME "${SOFTWARE_ROOT}/cuda/${CUDA_VERSION}" CACHE PATH "")
set(CMAKE_CUDA_ARCHITECTURES "70" CACHE STRING "")
set(CUDA_ARCH "sm_${CMAKE_CUDA_ARCHITECTURES}" CACHE STRING "")
set(CUDA_TOOLKIT_ROOT_DIR "${CUDA_HOME}" CACHE STRING "")

set(CONFIG_NAME "sherlock-gcc10-ompi4.1.2-openblas0.3.10-cuda${CUDA_VERSION}-${CUDA_ARCH}" CACHE PATH "" FORCE)
set(CONFIG_NAME "sherlock-gcc${GCC_VERSION}-ompi${OMPI_VERSION}-openblas${OPENBLAS_VERSION}-cuda${CUDA_VERSION}-${CUDA_ARCH}" CACHE PATH "" FORCE)

set(CMAKE_CUDA_HOST_COMPILER ${MPI_CXX_COMPILER} CACHE STRING "")
set(CMAKE_CUDA_COMPILER ${CUDA_TOOLKIT_ROOT_DIR}/bin/nvcc CACHE STRING "")
Expand All @@ -20,6 +17,9 @@ set(CMAKE_CUDA_FLAGS_RELEASE "-O3 -DNDEBUG -Xcompiler -DNDEBUG -Xcompiler -O3" C
set(CMAKE_CUDA_FLAGS_RELWITHDEBINFO "-g -lineinfo ${CMAKE_CUDA_FLAGS_RELEASE}" CACHE STRING "")
set(CMAKE_CUDA_FLAGS_DEBUG "-g -G -O0 -Xcompiler -O0" CACHE STRING "")

# OpenMP options
set(ENABLE_OPENMP OFF CACHE BOOL "" FORCE)

# LAI options
set(GEOS_LA_INTERFACE "Hypre" CACHE STRING "" FORCE)
set(ENABLE_HYPRE ON CACHE BOOL "" FORCE)
Expand Down

This file was deleted.

This file was deleted.

46 changes: 42 additions & 4 deletions host-configs/Stanford/sherlock-gcc10.cmake
Original file line number Diff line number Diff line change
@@ -1,7 +1,45 @@
set(CONFIG_NAME "sherlock-gcc10" CACHE PATH "")
# User defined versions
set(GCC_VERSION "10.1.0" CACHE STRING "Version of GCC")
set(OMPI_VERSION "4.1.2" CACHE STRING "Version of Open MPI")
set(OPENBLAS_VERSION "0.3.10" CACHE STRING "Version of OpenBLAS")

set(GCC_ROOT "/share/software/user/open/gcc/10.1.0" CACHE PATH "")
set(MPI_ROOT "/share/software/user/open/openmpi/4.1.0" CACHE PATH "")
set(CONFIG_NAME "sherlock-gcc${GCC_VERSION}-ompi${OMPI_VERSION}-openblas${OPENBLAS_VERSION}" CACHE PATH "")

include(/home/groups/tchelepi/geosx/host-configs/sherlock-base.cmake)
set(SOFTWARE_ROOT /share/software/user/open CACHE PATH "")
set(GCC_ROOT "${SOFTWARE_ROOT}/gcc/${GCC_VERSION}" CACHE PATH "")
set(MPI_ROOT "${SOFTWARE_ROOT}/openmpi/${OMPI_VERSION}" CACHE PATH "")

site_name(HOST_NAME)

# Compilers
set(CMAKE_C_COMPILER "${GCC_ROOT}/bin/gcc" CACHE PATH "")
set(CMAKE_CXX_COMPILER "${GCC_ROOT}/bin/g++" CACHE PATH "")
set(CMAKE_Fortran_COMPILER "${GCC_ROOT}/bin/gfortran" CACHE PATH "")

# OpenMP options
#set(ENABLE_OPENMP ON CACHE BOOL "")

# MPI options
set(ENABLE_MPI ON CACHE PATH "" FORCE)
set(MPI_C_COMPILER "${MPI_ROOT}/bin/mpicc" CACHE PATH "")
set(MPI_CXX_COMPILER "${MPI_ROOT}/bin/mpic++" CACHE PATH "")
set(MPI_Fortran_COMPILER "${MPI_ROOT}/bin/mpifort" CACHE PATH "")
set(MPIEXEC "${MPI_ROOT}/bin/mpirun" CACHE PATH "")
set(MPIEXEC_NUMPROC_FLAG "-n" CACHE STRING "")
set(ENABLE_WRAP_ALL_TESTS_WITH_MPIEXEC ON CACHE BOOL "")

# CUDA options
set(ENABLE_CUDA OFF CACHE PATH "" FORCE)

# Blas/Lapack options
set(OPENBLAS_ROOT "${SOFTWARE_ROOT}/openblas/${OPENBLAS_VERSION}" CACHE STRING "")
set(BLAS_LIBRARIES "${OPENBLAS_ROOT}/lib/libopenblas.so" CACHE STRING "")
set(LAPACK_LIBRARIES "${OPENBLAS_ROOT}/lib/libopenblas.so" CACHE STRING "")

set(ENABLE_VALGRIND OFF CACHE BOOL "")
set(ENABLE_CALIPER ON CACHE BOOL "")

if (DEFINED ENV{GEOSX_TPL_DIR})
set(GEOS_TPL_DIR "$ENV{GEOSX_TPL_DIR}" CACHE PATH "" FORCE)
endif()
include(${CMAKE_CURRENT_LIST_DIR}/../tpls.cmake)
Loading

0 comments on commit e49b685

Please sign in to comment.