Skip to content

Commit

Permalink
Merge branch 'main' of github.com:lanl/singularity-eos into jhp/PTE_FPE
Browse files Browse the repository at this point in the history
  • Loading branch information
jhp-lanl committed Apr 19, 2024
2 parents ba961df + 185d982 commit abf3ff5
Show file tree
Hide file tree
Showing 13 changed files with 886 additions and 74 deletions.
32 changes: 32 additions & 0 deletions .github/workflows/draft-pdf.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Generate JOSS paper

on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
release:
types:
- created

jobs:
paper:
runs-on: ubuntu-latest
name: Paper Draft
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build draft PDF
uses: openjournals/openjournals-draft-action@master
with:
journal: joss
# This should be the path to the paper within your repo.
paper-path: joss-paper/paper.md
- name: Upload
uses: actions/upload-artifact@v1
with:
name: paper
# This is the output path where Pandoc will write the compiled
# PDF. Note, this should be the same directory as the input
# paper.md
path: joss-paper/paper.pdf
31 changes: 30 additions & 1 deletion .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@ variables:
SINGULARITY_EOS_OPENMPI_VERSION: "4.1.1"
SINGULARITY_EOS_CUDA_VERSION: "11.6.0"
SINGULARITY_EOS_BUILD_TYPE: "RelWithDebInfo"
SINGULARITY_EOS_CXX_STANDARD: 14
SINGULARITY_EOS_SPACK_SPEC: "singularity-eos@main+mpi+spiner+hdf5+python+tests%gcc@=${SINGULARITY_EOS_GCC_VERSION} ^openmpi@${SINGULARITY_EOS_OPENMPI_VERSION}"
COLOR_CYAN: "\e[1;36m"
COLOR_PLAIN: "\e[0m"
Expand Down Expand Up @@ -165,7 +166,6 @@ default:
spack repo add spack-repo
spack develop --no-clone -p ${CI_PROJECT_DIR}/utils/spiner spiner@main
spack develop --no-clone -p ${CI_PROJECT_DIR}/utils/ports-of-call ports-of-call@main
spack develop --no-clone -p ${CI_PROJECT_DIR} singularity-eos@main
spack config add upstreams:default:install_tree:${PROJECT_SPACK_ROOT}/opt/spack/
spack dev-build -j $(nproc) ${SINGULARITY_EOS_SPACK_SPEC}
spack env deactivate
Expand Down Expand Up @@ -196,6 +196,7 @@ default:
- |
cmake -DCMAKE_INSTALL_PREFIX=${CI_PROJECT_DIR}/install ${SINGULARITY_CMAKE_CXX_COMPILER_FLAG} \
-DCMAKE_BUILD_TYPE=${SINGULARITY_EOS_BUILD_TYPE} \
-DCMAKE_CXX_STANDARD=${SINGULARITY_EOS_CXX_STANDARD} \
-DSINGULARITY_USE_EOSPAC=ON \
-DSINGULARITY_USE_SPINER=ON \
-DSINGULARITY_USE_SPINER_WITH_HDF5=ON \
Expand Down Expand Up @@ -270,6 +271,34 @@ install_gnu_skylake_fort:
<<: *python
<<: *fort

install_gnu_skylake_fort_kokkos:
needs: [download_prereq]
extends: .test
variables:
<<: *skylake
<<: *python
<<: *fort
SINGULARITY_EOS_SPACK_SPEC: "singularity-eos@main+python+mpi+tests+kokkos+spiner+hdf5+kokkos-kernels%gcc@=${SINGULARITY_EOS_GCC_VERSION} ^kokkos std=${SINGULARITY_EOS_CXX_STANDARD} +openmp ^openmpi@${SINGULARITY_EOS_OPENMPI_VERSION}"

install_gnu_skylake_fort_kokkos_cxx17:
needs: [download_prereq]
extends: .test
variables:
<<: *skylake
<<: *python
<<: *fort
SINGULARITY_EOS_CXX_STANDARD: 17
SINGULARITY_EOS_SPACK_SPEC: "singularity-eos@main+python+mpi+tests+kokkos+spiner+hdf5+kokkos-kernels%gcc@=${SINGULARITY_EOS_GCC_VERSION} ^kokkos std=${SINGULARITY_EOS_CXX_STANDARD} +openmp ^openmpi@${SINGULARITY_EOS_OPENMPI_VERSION}"

install_gnu_skylake_fort_static_kokkos:
needs: [download_prereq]
extends: .test
variables:
<<: *skylake
<<: *python
<<: *fort
SINGULARITY_EOS_SPACK_SPEC: "singularity-eos@main+python+mpi+tests+kokkos+spiner+hdf5+kokkos-kernels%gcc@=${SINGULARITY_EOS_GCC_VERSION} ^kokkos std=${SINGULARITY_EOS_CXX_STANDARD} ~shared +openmp ^kokkos-kernels~shared ^openmpi@${SINGULARITY_EOS_OPENMPI_VERSION}"

install_gnu_skylake_nofort:
needs: [download_prereq]
extends: .test
Expand Down
2 changes: 2 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,13 @@
## Current develop

### Added (new features/APIs/variables/...)
- [[PR#362]](https://github.com/lanl/singularity-eos/pull/362) Add lambda to thermalqs
- [[PR#339]](https://github.com/lanl/singularity-eos/pull/339) Added COMPONENTS to singularity-eos CMake install, allowing to select a minimal subset needed e.g. for Fortran bindings only
- [[PR#336]](https://github.com/lanl/singularity-eos/pull/336) Included code and documentation for a full, temperature consistent, Mie-Gruneisen EOS based on a pressure power law expansion in eta = 1-V/V0. PowerMG.
- [[PR334]](https://github.com/lanl/singularity-eos/pull/334) Include plugins infrastructure
- [[PR331]](https://github.com/lanl/singularity-eos/pull/331) Included code and documentation for a full, temperature consistent, Mie-Gruneisen EOS based on a linear Us-up relation. MGUsup.
- [[PR326]](https://github.com/lanl/singularity-eos/pull/326) Document how to do a release
- [[PR#357]](https://github.com/lanl/singularity-eos/pull/357) Added support for C++17 (e.g., needed when using newer Kokkos).

### Fixed (Repair bugs, etc)
- [[PR343]](https://github.com/lanl/singularity-eos/pull/343) Add chemical potentials to stellar collapse gold files
Expand Down
8 changes: 7 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -167,7 +167,13 @@ if(SINGULARITY_BUILD_PYTHON)
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
endif()

target_compile_features(singularity-eos_Interface INTERFACE cxx_std_14)
# require at least C++14, but allow newer versions to become a client requirement if
# explicitly set at build time (needed for building with newer Kokkos)
if(CMAKE_CXX_STANDARD)
target_compile_features(singularity-eos_Interface INTERFACE cxx_std_${CMAKE_CXX_STANDARD})
else()
target_compile_features(singularity-eos_Interface INTERFACE cxx_std_14)
endif()

# checks if this is our build, or we've been imported via `add_subdirectory` NB:
# this should make the `option(SINGULARITY_SUBMODULE_MODE ...)` unnecessary
Expand Down
Loading

0 comments on commit abf3ff5

Please sign in to comment.