Skip to content

Commit

Permalink
Merge branch 'develop' into feature/tier2-aws-ami
Browse files Browse the repository at this point in the history
  • Loading branch information
stiggy87 authored Dec 19, 2024
2 parents 3b72fd0 + 491b30f commit 5b0464d
Show file tree
Hide file tree
Showing 27 changed files with 155 additions and 124 deletions.
4 changes: 2 additions & 2 deletions configs/common/modules_lmod.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -132,8 +132,8 @@ modules:
^[email protected]+debug snapshot=none: 'esmf-8.6.1-debug'
^[email protected]~debug snapshot=none: 'esmf-8.7.0'
^[email protected]+debug snapshot=none: 'esmf-8.7.0-debug'
^[email protected].0b06~debug snapshot=b06: 'esmf-8.8.0b06'
^[email protected].0b06+debug snapshot=b06: 'esmf-8.8.0b06-debug'
^[email protected].0b10~debug snapshot=b10: esmf-8.8.0b10
^[email protected].0b10+debug snapshot=b10: esmf-8.8.0b10-debug
openmpi:
environment:
set:
Expand Down
4 changes: 2 additions & 2 deletions configs/common/modules_tcl.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,8 @@ modules:
^[email protected]+debug snapshot=none: 'esmf-8.6.1-debug'
^[email protected]~debug snapshot=none: 'esmf-8.7.0'
^[email protected]+debug snapshot=none: 'esmf-8.7.0-debug'
^[email protected].0b06~debug snapshot=b06: 'esmf-8.8.0b06'
^[email protected].0b06+debug snapshot=b06: 'esmf-8.8.0b06-debug'
^[email protected].0b10~debug snapshot=b10: esmf-8.8.0b10
^[email protected].0b10+debug snapshot=b10: esmf-8.8.0b10-debug
openmpi:
environment:
set:
Expand Down
59 changes: 22 additions & 37 deletions configs/common/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,16 @@ packages:
cairo:
require: '+pic'
cdo:
require: '@2.3.0 ~openmp'
require:
- any_of: ['@2.3.0 ~openmp']
when: '%intel@2021:'
message: '2.3.0 is the last version to use C++17, use with Intel Classic'
- any_of: ['@2.3.0 ~openmp']
when: '%apple-clang@:14'
message: '2.3.0 is the last version to use C++17, use with Apple Clang 14 and earlier'
- any_of: ['@2.0.5 ~openmp']
when: '%intel@:2020'
message: '2.0.5 is the last version to use C++14, use with Intel Classic 2020 and earlier'
cmake:
version: ['3.27.9']
require: '+ownlibs'
Expand All @@ -46,7 +55,7 @@ packages:
require: '@0.40.0 +fckit +trans +tesselation +fftw'
ectrans:
require:
- '@1.5.0'
- '@1.2.0'
eigen:
require: '@3.4.0'
# Attention - when updating the version also check the common modules.yaml
Expand All @@ -55,7 +64,7 @@ packages:
esmf:
require:
- '~xerces ~pnetcdf +shared +external-parallelio'
- any_of: ['@=8.6.1 snapshot=none', '@=8.8.0b06 snapshot=b06']
- any_of: ['@=8.6.1 snapshot=none', '@=8.8.0b10 snapshot=b10']
- any_of: ['fflags="-fp-model precise" cxxflags="-fp-model precise"']
when: "%intel"
message: "Extra ESMF compile options for Intel"
Expand Down Expand Up @@ -142,11 +151,6 @@ packages:
mapl:
require: '@2.46.3 ~shared ~f2py'
variants: '+pflogger'
# To avoid duplicate packages being built
meson:
require:
- '@1.5.1:'
# If making changes here, also check the Discover site configs and the CI workflows
met:
require: '@11.1.1 +python +grib2'
metplus:
Expand All @@ -156,7 +160,7 @@ packages:
mpich:
require: '~hwloc'
nco:
require: '@5.1.6 ~doc'
require: '@5.2.4 ~doc'
# ncview - when adding information here, also check Orion
# and Discover site configs
nemsio:
Expand All @@ -177,8 +181,11 @@ packages:
# ninja - when adding information here, also check Discover site config
odc:
require: '@1.5.2 ~fortran'
# Todo: update to 0.3.28 so that it builds with 'clang'. Check
# packages_clang.yaml where we are overwriting openblas for now.
openblas:
require: '@0.3.24'
require:
- '@0.3.24'
openmpi:
require: '~internal-hwloc +two_level_namespace'
openssl:
Expand All @@ -199,9 +206,6 @@ packages:
require: '~tiff'
python:
require: '@3.11.7'
py-attrs:
# https://github.com/JCSDA/spack-stack/issues/740
require: '@21.4.0'
py-cartopy:
require: '+plotting'
# Avoid full rust dependency: version 43+ requires py-maturin
Expand All @@ -223,42 +227,23 @@ packages:
require: '@3.8.0'
py-h5py:
require: '~mpi'
## To avoid duplicate packages
#py-jinja2:
# require: '@3.1.2'
# https://github.com/JCSDA/spack-stack/issues/1276
py-matplotlib:
require: '@3.7.4'
py-meson-python:
require: '@0.15.0'
# Comment out for now until build problems are solved
# https://github.com/jcsda/spack-stack/issues/522
# see also ewok-env virtual package and container
# README.md
#py-mysql-connector-python:
# require: '@8.0.32'
# Variant ~mpi not working for latest py-netcdf4
# https://github.com/spack/spack/issues/47652
py-netcdf4:
require: '@1.5.8 ~mpi'
# [email protected] causes many build problems with older Python packages
# also check Nautilus site config when making changes here
# https://github.com/JCSDA/spack-stack/issues/1276
py-numpy:
require:
- '@:1.23.5'
require: '@1.7.1 +mpi'
py-pandas:
require: '+excel'
py-pybind11:
require: '@2.11.0'
# To avoid duplicate packages
py-ruamel-yaml:
require: '@0.17.16'
# Pin the py-setuptools version to avoid duplicate Python packages
py-setuptools:
require: '@63.4.3'
require: '@69'
py-setuptools-rust:
require: '+rust_bootstrap'
py-shapely:
require: '@1.8.0'
py-torch:
require: '+custom-protobuf ~mkldnn'
# To avoid duplicate packages
Expand Down Expand Up @@ -294,4 +279,4 @@ packages:
wrf-io:
require: '@1.2.0'
zstd:
require: '@1.5.2 +programs'
require: '@1.5.6 +programs'
28 changes: 28 additions & 0 deletions configs/common/packages_clang.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
packages:
all:
providers:
blas: [openblas]
fftw-api: [fftw]
lapack: [openblas]
ectrans:
require:
- '~mkl +fftw'
gsibec:
require:
- '~mkl'
py-numpy:
require:
- '^openblas'
# clang@19 requires [email protected] - with this, we can'this
# build all the Python dependencies as of 2024/12/11 due to
# version conflicts.
openblas:
require::
- '@0.3.28'
# ip@5 doesn't build with clang@19 compilers (flang-new)
# https://github.com/NOAA-EMC/NCEPLIBS-ip/issues/263
# but requiring %gcc doesn't work when using openblas
#ip:
# require:
# #- '~openmp'
# - '%gcc'
2 changes: 1 addition & 1 deletion configs/containers/specs/jedi-ci.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
[email protected],
[email protected] +fckit +trans +tesselation +fftw,
[email protected],
ectrans@1.5.0 +fftw,
ectrans@1.2.0 +fftw,
[email protected],
[email protected],
[email protected],
Expand Down
2 changes: 1 addition & 1 deletion configs/sites/tier1/acorn/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
Expand Down
4 changes: 2 additions & 2 deletions configs/sites/tier1/aws-pcluster/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,11 @@ packages:
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
# *DH
9 changes: 5 additions & 4 deletions configs/sites/tier1/derecho/packages.yaml
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
packages:
all:
target: [core2]

### Modification of common packages
# Tell esmf that this is not a 'normal' Cray ...
esmf:
variants: ~xerces ~pnetcdf snapshot=none ~shared +external-parallelio esmf_os=Linux esmf_comm=mpich
# Need to force spack to build python with ssl variant when using older openssl from OS
python:
require: "+ssl"
require:
- 'esmf_os=Linux esmf_comm=mpich'
# py-scipy 1.12 does not build with intel on Derecho, pin to 1.11.4
# use same version with gcc for consistency on the machine
py-scipy:
require:
- '@1.11.4'

### All other external packages listed alphabetically
autoconf:
externals:
Expand Down
27 changes: 4 additions & 23 deletions configs/sites/tier1/derecho/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,6 @@ packages:
compiler:: [[email protected],[email protected]]
providers:
mpi:: [[email protected]]
# Remove the next three lines to switch to intel-oneapi-mkl
blas:: [openblas]
fftw-api:: [fftw]
lapack:: [openblas]
mpi:
buildable: False
cray-mpich:
Expand All @@ -18,25 +14,10 @@ packages:
- libfabric/1.15.2.0
- cray-pals/1.2.11
intel-oneapi-mkl:
# Remove buildable: False and configure+uncomment externals section below to use intel-oneapi-mkl
# Note that on 2024/08/14, Dom H couldn't find any MKL installation on Derecho - keep using fftw
# and openblas, or find another provider (Cray stuff)?
buildable: False
#externals:
#- spec: [email protected]%[email protected]
# prefix: /apps/oneapi
# No intel-oneapi-mkl installed on Derecho, install via spack.
# Prefer the version that Intel releases with the above compiler
prefer:
- '@2023.2.0'
# Newer versions of patchelf (tested 0.18.0) don't build with Intel on Derecho
patchelf:
version:: ['0.17.2']
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
# *DH

4 changes: 2 additions & 2 deletions configs/sites/tier1/gaea-c5/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,13 @@ packages:
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
# *DH

### All other external packages listed alphabetically
Expand Down
4 changes: 2 additions & 2 deletions configs/sites/tier1/gaea-c6/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -28,13 +28,13 @@ packages:
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
# *DH

### All other external packages listed alphabetically
Expand Down
4 changes: 2 additions & 2 deletions configs/sites/tier1/hera/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,13 +24,13 @@ packages:
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
# *DH
zlib-ng:
require:
Expand Down
4 changes: 2 additions & 2 deletions configs/sites/tier1/hercules/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,10 @@ packages:
# Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
2 changes: 1 addition & 1 deletion configs/sites/tier1/nautilus/packages_aocc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ packages:
buildable: False
ectrans:
require::
- '@1.5.0 +mkl ~fftw'
- '@1.2.0 +mkl ~fftw'
gsibec:
require::
- '@1.2.1 +mkl'
Expand Down
4 changes: 2 additions & 2 deletions configs/sites/tier1/nautilus/packages_gcc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ packages:
buildable: False
ectrans:
require::
- '@1.5.0 +mkl ~fftw'
- '@1.2.0 +mkl ~fftw'
gsibec:
require::
- '@1.2.1 +mkl'
py-numpy:
require::
- '@:1.23 ^intel-oneapi-mkl'
- '^intel-oneapi-mkl'
4 changes: 2 additions & 2 deletions configs/sites/tier1/noaa-aws/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ packages:
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
# *DH
4 changes: 2 additions & 2 deletions configs/sites/tier1/noaa-azure/packages_intel.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -24,11 +24,11 @@ packages:
# DH* Remove this section to switch to intel-oneapi-mkl
ectrans:
require::
- '@1.5.0 ~mkl +fftw'
- '@1.2.0 ~mkl +fftw'
gsibec:
require::
- '@1.2.1 ~mkl'
py-numpy:
require::
- '@:1.23 ^openblas'
- '^openblas'
# *DH
Loading

0 comments on commit 5b0464d

Please sign in to comment.