Skip to content

Commit

Permalink
Merge branch 'develop' into container-updates
Browse files Browse the repository at this point in the history
  • Loading branch information
eap committed Aug 23, 2024
2 parents 82353d2 + 489665d commit 2ee0f80
Show file tree
Hide file tree
Showing 13 changed files with 66 additions and 23 deletions.
6 changes: 4 additions & 2 deletions configs/common/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ packages:
boost:
require: '@1.84 ~atomic +chrono +date_time +exception +filesystem ~graph ~iostreams ~locale ~log ~math ~mpi ~numpy +pic +program_options +python ~random +regex +serialization ~signals +system +test +thread +timer ~wave cxxstd=17 visibility=hidden'
bufr:
require: '@12.0.1 +python'
require: '@12.1.0 +python'
bufr-query:
require: '@0.0.2 +python'
cairo:
require: '+pic'
cdo:
Expand All @@ -37,7 +39,7 @@ packages:
ecflow:
require: '@5.11.4 +ui'
eckit:
require: '@1.24.5 linalg=eigen,lapack compression=lz4,bzip2'
require: '@1.27.0 linalg=eigen,lapack compression=lz4,bzip2'
ecmwf-atlas:
require: '@0.38.1 +fckit +trans +tesselation +fftw'
ectrans:
Expand Down
9 changes: 5 additions & 4 deletions configs/sites/tier1/atlantis/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -122,10 +122,11 @@ packages:
externals:
- spec: [email protected]+lex
prefix: /usr
openssl:
externals:
- spec: [email protected]
prefix: /usr
# Can no longer use, issues with py-cryptography
#openssl:
# externals:
# - spec: [email protected]
# prefix: /usr
gawk:
externals:
- spec: [email protected]
Expand Down
13 changes: 8 additions & 5 deletions configs/sites/tier1/narwhal/compilers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,27 +14,30 @@ compilers::
modules:
- PrgEnv-intel/8.3.3
- intel-classic/2023.2.0
- cray-libsci/23.05.1.4
- libfabric/1.12.1.2.2.1
environment:
prepend_path:
PATH: '/opt/cray/pe/gcc/10.3.0/snos/bin'
CPATH: '/opt/cray/pe/gcc/10.3.0/snos/include'
LD_LIBRARY_PATH: '/opt/cray/libfabric/1.12.1.2.2.1/lib64:/opt/cray/pe/libsci/22.11.1.2/INTEL/19.0/x86_64/lib:/opt/cray/pe/gcc/10.3.0/snos/lib:/opt/cray/pe/gcc/10.3.0/snos/lib64'
LD_LIBRARY_PATH: '/opt/cray/libfabric/1.12.1.2.2.1/lib64:/opt/cray/pe/libsci/23.05.1.4/INTEL/2022.2/x86_64/lib:/opt/cray/pe/gcc/10.3.0/snos/lib:/opt/cray/pe/gcc/10.3.0/snos/lib64'
set:
CRAYPE_LINK_TYPE: 'dynamic'
extra_rpaths: []
- compiler:
spec: [email protected]
paths:
cc: cc
cxx: CC
f77: ftn
fc: ftn
cc: /opt/cray/pe/gcc/10.3.0/bin/gcc
cxx: /opt/cray/pe/gcc/10.3.0/bin/g++
f77: /opt/cray/pe/gcc/10.3.0/bin/gfortran
fc: /opt/cray/pe/gcc/10.3.0/bin/gfortran
flags: {}
operating_system: sles15
modules:
- PrgEnv-gnu/8.3.3
- gcc/10.3.0
- cray-libsci/22.11.1.2
- libfabric/1.12.1.2.2.1
environment:
prepend_path:
LD_LIBRARY_PATH: '/opt/cray/libfabric/1.12.1.2.2.1/lib64:/opt/cray/pe/libsci/22.11.1.2/GNU/9.1/x86_64/lib'
Expand Down
2 changes: 1 addition & 1 deletion configs/sites/tier1/narwhal/packages_gcc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ packages:
buildable: False
cray-mpich:
externals:
- spec: [email protected]%[email protected] ~wrappers
- spec: [email protected]%[email protected] +wrappers
modules:
- cray-mpich-ucx/8.1.21
- craype-network-ucx
20 changes: 20 additions & 0 deletions configs/sites/tier1/nautilus/packages_gcc.yaml
Original file line number Diff line number Diff line change
@@ -1,8 +1,17 @@
packages:
# On Nautilus, use intel-oneapi-mkl as provider
# for blas, lapack, fftw-api with GNU because of
# problems using openblas in downstream applications
# (e.g. py-pandas):
# ELF load command address/offset not properly aligned" when loading libopenblas.so
# https://github.com/OpenMathLib/OpenBLAS/wiki/Faq#ELFoffset
all:
compiler:: [[email protected]]
providers:
mpi:: [[email protected]]
blas:: [intel-oneapi-mkl]
fftw-api:: [intel-oneapi-mkl]
lapack:: [intel-oneapi-mkl]
mpi:
buildable: False
openmpi:
Expand All @@ -12,3 +21,14 @@ packages:
modules:
- penguin/openmpi/5.0.1/gcc-8.5.0
- slurm
openblas:
buildable: False
ectrans:
require::
- '@1.2.0 +mkl ~fftw'
gsibec:
require::
- '@1.2.1 +mkl'
py-numpy:
require::
- '@:1.25 ^intel-oneapi-mkl'
2 changes: 1 addition & 1 deletion configs/templates/gsi-addon-dev/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@ spack:
# Note: Set 'compilers' manually; must match upstream list
- compilers: []
- packages:
- global-workflow-env ^[email protected] ^[email protected] ^[email protected]
- global-workflow-env ^[email protected] ^[email protected]
- ufs-weather-model-env
- gsi-env

Expand Down
2 changes: 1 addition & 1 deletion configs/templates/neptune-dev/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ spack:
definitions:
- compilers: ['%aocc', '%apple-clang', '%gcc', '%intel', '%oneapi']
- packages:
- neptune-env +python ^[email protected] snapshot=b11
- neptune-env +espc +python +xnrl ^[email protected] snapshot=b11

specs:
- matrix:
Expand Down
1 change: 1 addition & 0 deletions configs/templates/skylab-dev/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ spack:
- jedi-neptune-env ^esmf@=8.7.0b11 snapshot=b11
- jedi-ufs-env ^esmf@=8.6.1
- jedi-um-env
- neptune-env ~espc +python ~xnrl ^esmf@=8.7.0b11 snapshot=b11
- soca-env

# Various crtm tags (list all to avoid duplicate packages)
Expand Down
2 changes: 1 addition & 1 deletion configs/templates/unified-dev/spack.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ spack:
- jedi-tools-env
- jedi-ufs-env ^esmf@=8.6.1
- jedi-um-env
- neptune-env ~python ^esmf@=8.7.0b11 snapshot=b11
- neptune-env ~espc +python ~xnrl ^esmf@=8.7.0b11 snapshot=b11
- soca-env
- ufs-srw-app-env ^esmf@=8.6.1
- ufs-weather-model-env ^esmf@=8.6.1
Expand Down
12 changes: 10 additions & 2 deletions doc/source/PreConfiguredSites.rst
Original file line number Diff line number Diff line change
Expand Up @@ -253,8 +253,12 @@ With Intel, the following is required for building new spack environments and fo
module unload intel
module load intel-classic/2023.2.0
module unload cray-mpich
module load cray-mpich/8.1.21
module unload craype-network-ofi
module load craype-network-ucx
module load cray-mpich-ucx/8.1.21
module load libfabric/1.12.1.2.2.1
module unload cray-libsci
module load cray-libsci/23.05.1.4
THIS SECTION IS OUT OF DATE, REFER TO 1.7.0 RELEASE DOCUMENTATION - - For ``spack-stack-1.7.0`` with Intel, proceed with loading the following modules:

Expand All @@ -279,8 +283,12 @@ With GNU, the following is required for building new spack environments and for
module unload gcc
module load gcc/10.3.0
module unload cray-mpich
module load cray-mpich/8.1.21
module unload craype-network-ofi
module load craype-network-ucx
module load cray-mpich-ucx/8.1.21
module load libfabric/1.12.1.2.2.1
module unload cray-libsci
module load cray-libsci/22.11.1.2
THIS SECTION IS OUT OF DATE, REFER TO 1.7.0 RELEASE DOCUMENTATION - For ``spack-stack-1.7.0`` with GNU, proceed with loading the following modules:

Expand Down
2 changes: 2 additions & 0 deletions spack-ext/repos/spack-stack/packages/jedi-base-env/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,14 @@ class JediBaseEnv(BundlePackage):
# Need to find a free fftw provider for fftw-api ...
variant("fftw", default=True, description="Build fftw")
variant("hdf4", default=True, description="Build hdf4 library and python hdf module")
variant("bufrquery", default=True, description="Build bufr-query library")

depends_on("base-env", type="run")
depends_on("bison", type="run")
depends_on("blas", type="run")
depends_on("boost", type="run")
depends_on("bufr", type="run")
depends_on("bufr-query", when="+bufrquery", type="run")
# Force users to load manually
# depends_on("[email protected]", type="run")
depends_on("ecbuild", type="run")
Expand Down
16 changes: 11 additions & 5 deletions spack-ext/repos/spack-stack/packages/neptune-env/package.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,9 @@ class NeptuneEnv(BundlePackage):

version("1.4.0")

variant("python", default=True, description="Build Python libraries")
variant("python", default=True, description="Build Python dependencies")
variant("espc", default=True, description="Build ESPC dependencies")
variant("xnrl", default=True, description="Build XNRL and its extra Python dependencies")

depends_on("base-env", type="run")

Expand All @@ -37,9 +39,11 @@ class NeptuneEnv(BundlePackage):
depends_on("nco", type="run")
depends_on("mct", type="run")

# Required by ESPC
depends_on("fftw", type="build")
depends_on("netlib-lapack", type="build")
conflicts("+xnrl", when="~python", msg="Variant xnrl requires variant python")

with when("+espc"):
depends_on("fftw", type="build")
depends_on("netlib-lapack", type="build")

with when("+python"):
depends_on("py-f90nml", type="run")
Expand All @@ -53,8 +57,10 @@ class NeptuneEnv(BundlePackage):
depends_on("py-pyyaml", type="run")
depends_on("py-scipy", type="run")
depends_on("py-xarray", type="run")
depends_on("py-xnrl", type="run")
depends_on("py-pytest", type="run")
depends_on("py-fortranformat", type="run")

with when("+xnrl"):
depends_on("py-xnrl", type="run")

# There is no need for install() since there is no code.

0 comments on commit 2ee0f80

Please sign in to comment.