-
Notifications
You must be signed in to change notification settings - Fork 44
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1321 from climbfuji/feature/merge_rel180_into_dev…
…elop Merge release/1.8.0 into develop
- Loading branch information
Showing
72 changed files
with
1,058 additions
and
1,254 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -75,8 +75,9 @@ packages: | |
# Pin version to avoid duplicates | ||
require: '@2.6.4' | ||
fms: | ||
require: '@2024.02' | ||
variants: 'precision=32,64 +quad_precision +gfs_phys +openmp +pic constants=GFS build_type=Release +deprecated_io' | ||
require: | ||
- '@2024.02' | ||
- 'precision=32,64 +quad_precision +gfs_phys +openmp +pic constants=GFS build_type=Release +deprecated_io' | ||
fontconfig: | ||
require: '+pic' | ||
freetype: | ||
|
@@ -214,6 +215,9 @@ packages: | |
## 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 | ||
|
@@ -226,9 +230,10 @@ packages: | |
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.25' | ||
- '@:1.23.5' | ||
py-pandas: | ||
require: '+excel' | ||
py-pybind11: | ||
|
@@ -273,7 +278,8 @@ packages: | |
w3nco: | ||
require: '@2.4.1' | ||
wgrib2: | ||
require: '@3.1.1' | ||
require: | ||
- '@3.1.1' | ||
wrf-io: | ||
require: '@1.2.0' | ||
zstd: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
packages: | ||
all: | ||
providers: | ||
blas: [openblas] | ||
fftw-api: [fftw] | ||
lapack: [openblas] | ||
ectrans: | ||
require: | ||
- '~mkl +fftw' | ||
gsibec: | ||
require: | ||
- '~mkl' | ||
py-numpy: | ||
require: | ||
- '^openblas' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -42,12 +42,6 @@ spack: | |
externals: | ||
- spec: [email protected] | ||
prefix: /usr | ||
g2: | ||
# https://github.com/NOAA-EMC/NCEPLIBS-g2/issues/745 | ||
require: | ||
- any_of: ['fflags="-fno-range-check"'] | ||
when: "@3.5.1 %clang" | ||
message: "Extra g2 compile options for version 3.5.1 with clang" | ||
g2tmpl: | ||
# https://github.com/JCSDA/spack-stack/issues/525 | ||
require: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -45,12 +45,6 @@ spack: | |
externals: | ||
- spec: [email protected] | ||
prefix: /usr | ||
g2: | ||
# https://github.com/NOAA-EMC/NCEPLIBS-g2/issues/745 | ||
require: | ||
- any_of: ['fflags="-fno-range-check"'] | ||
when: "@3.5.1 %gcc" | ||
message: "Extra g2 compile options for version 3.5.1 with gcc/gfortran" | ||
diffutils: | ||
buildable: false | ||
externals: | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -38,7 +38,7 @@ | |
[email protected], | ||
[email protected], | ||
[email protected], | ||
py-numpy@1.25.2, | ||
py-numpy@1.23.5, | ||
[email protected], | ||
py-pip, | ||
[email protected], | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -9,11 +9,6 @@ | |
externals: | ||
- spec: [email protected] | ||
modules: [git-lfs/2.11.0] | ||
perl: | ||
buildable: false | ||
externals: | ||
- spec: [email protected]~cpanm+shared+threads | ||
prefix: /usr | ||
mysql: | ||
buildable: false | ||
externals: | ||
|
@@ -38,6 +33,7 @@ | |
gdal: | ||
variants: ~curl | ||
flex: | ||
buildable: false | ||
externals: | ||
- spec: [email protected]+lex | ||
prefix: /usr |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -31,21 +31,29 @@ | |
- '@1.2.1 ~mkl' | ||
py-numpy: | ||
require:: | ||
- '@:1.25 ^openblas' | ||
- '^[virtuals=lapack,blas] openblas' | ||
- '@:1.25' | ||
- any_of: ['@:1.24'] | ||
when: '%[email protected]' | ||
# *DH | ||
eckit: | ||
require: | ||
- any_of: ["@1.23.1"] | ||
when: "%[email protected]" | ||
eccodes: | ||
require: | ||
- any_of: ["@2.27.0"] | ||
- any_of: ["@2.25.0"] | ||
when: "%[email protected]" | ||
message: "2.25.0 is the last version to use C++11 (as opposed to C++17)" | ||
py-scipy: | ||
require: | ||
- any_of: ["@1.10.1"] | ||
when: "%[email protected]" | ||
cdo: | ||
require: | ||
- any_of: ["@2.3.0"] | ||
when: "%[email protected]" | ||
message: "2.3.0 is the last version to use C++17" | ||
- any_of: ["@2.0.5"] | ||
when: "%[email protected]" | ||
message: "2.0.5 is the last version to use C++14" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -2,12 +2,12 @@ packages: | |
all: | ||
compiler:: [[email protected],[email protected]] | ||
providers: | ||
mpi:: [[email protected].0] | ||
mpi:: [[email protected]] | ||
mpi: | ||
buildable: False | ||
intel-oneapi-mpi: | ||
externals: | ||
- spec: [email protected]%2024.2.1 | ||
- spec: [email protected]%oneapi@2024.2.1 | ||
prefix: /cm/shared/apps/intel/oneapi-2024.2.1 | ||
modules: | ||
- mpi/2021.13 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -116,7 +116,7 @@ apt install -y \ | |
liblcms2-dev \ | ||
liblcms2-2 | ||
# Install QT5 for ecflow | ||
# Install QT5, needed for install of ecflow | ||
apt install -y \ | ||
qtcreator \ | ||
qtbase5-dev \ | ||
|
@@ -217,51 +217,7 @@ sudo usermod -aG docker $USER | |
exit | ||
``` | ||
|
||
4. Build ecflow outside of spack to be able to link against OS boost | ||
``` | ||
mkdir -p /home/ubuntu/jedi/ecflow-5.8.4/src | ||
cd /home/ubuntu/jedi/ecflow-5.8.4/src | ||
wget https://github.com/ecmwf/ecflow/archive/refs/tags/5.8.4.tar.gz | ||
tar -xvzf 5.8.4.tar.gz | ||
export WK=/home/ubuntu/jedi/ecflow-5.8.4/src/ecflow-5.8.4 | ||
export BOOST_ROOT=/usr | ||
# Build ecFlow | ||
cd $WK | ||
mkdir build | ||
cd build | ||
cmake .. -DPython3_EXECUTABLE=/usr/bin/python3 -DENABLE_STATIC_BOOST_LIBS=OFF -DCMAKE_INSTALL_PREFIX=/home/ubuntu/jedi/ecflow-5.8.4 2>&1 | tee log.cmake | ||
make -j10 2>&1 | tee log.make | ||
make install 2>&1 | tee log.install | ||
# Create a modulefiles directory and the "ecflow/5.8.4" module file. | ||
mkdir -p /home/ubuntu/jedi/modulefiles/ecflow | ||
cat << 'EOF' > /home/ubuntu/jedi/modulefiles/ecflow/5.8.4 | ||
#%Module1.0 | ||
module-whatis "Provides an ecflow-5.8.4 server+ui installation for use with spack." | ||
conflict ecflow | ||
proc ModulesHelp { } { | ||
puts stderr "Provides an ecflow-5.8.4 server+ui installation for use with spack." | ||
} | ||
# Set this value | ||
set ECFLOW_PATH "/home/ubuntu/jedi/ecflow-5.8.4" | ||
prepend-path PATH "${ECFLOW_PATH}/bin" | ||
prepend-path LD_LIBRARY_PATH "${ECFLOW_PATH}/lib" | ||
prepend-path LIBRARY_PATH "${ECFLOW_PATH}/lib" | ||
prepend-path CPATH "${ECFLOW_PATH}/include" | ||
prepend-path CMAKE_PREFIX_PATH "${ECFLOW_PATH}" | ||
prepend-path PYTHONPATH "${ECFLOW_PATH}/lib/python3.10/site-packages" | ||
EOF | ||
``` | ||
|
||
5. Install lmod. This step must be done as `root`. | ||
4. Install lmod. This step must be done as `root`. | ||
``` | ||
# Install lua/lmod manually because apt only has older versions | ||
# that are not compatible with the modern lua modules spack produces | ||
|
@@ -343,7 +299,7 @@ module purge | |
module list | ||
``` | ||
|
||
6. Install msql community server | ||
5. Install msql community server | ||
``` | ||
cd /home/ubuntu/jedi | ||
mkdir -p mysql-8.0.31/src | ||
|
@@ -365,7 +321,7 @@ exit | |
rm *.deb | ||
``` | ||
|
||
7. Option 1: Testing existing site config in spack-stack (skip steps | ||
6. Option 1: Testing existing site config in spack-stack (skip steps | ||
8-9 afterwards) this install is done directly on the NFS drive. If you are | ||
testing an update to the configuration, do this on the faster EBS volume (use a | ||
directory in /home/ubuntu) in order to ensure a faster build. Once you have | ||
|
@@ -398,7 +354,7 @@ spack module lmod refresh | |
spack stack setup-meta-modules | ||
``` | ||
|
||
8. Option 2: Test configuring site from scratch | ||
7. Option 2: Test configuring site from scratch | ||
``` | ||
mkdir -p /home/ubuntu/jedi && cd /home/ubuntu/jedi | ||
git clone -b develop --recursive https://github.com/jcsda/spack-stack spack-stack | ||
|
@@ -450,15 +406,6 @@ cat << 'EOF' >> ${SPACK_SYSTEM_CONFIG_PATH}/packages.yaml | |
prefix: /usr | ||
EOF | ||
# Add external ecflow | ||
cat << 'EOF' >> ${SPACK_SYSTEM_CONFIG_PATH}/packages.yaml | ||
ecflow: | ||
buildable: False | ||
externals: | ||
- spec: [email protected] +ui | ||
prefix: /home/ubuntu/jedi/ecflow-5.8.4 | ||
EOF | ||
spack compiler find --scope system | ||
export -n SPACK_SYSTEM_CONFIG_PATH | ||
|
@@ -479,12 +426,12 @@ spack config add "packages:all:compiler:[[email protected], [email protected]]" | |
# I_MPI_PMI_LIBRARY: '/opt/slurm/lib/libpmi.so' | ||
``` | ||
|
||
9. Option 2: To avoid duplicate library versions edit ``envs/unified-dev/site/packages.yaml`` | ||
8. Option 2: To avoid duplicate library versions edit ``envs/unified-dev/site/packages.yaml`` | ||
and remove entries for meson, ninja, hdf5, cmake and remove the external | ||
`cmake` and `openssl` entries. | ||
|
||
|
||
10. Concretize and install | ||
9. Concretize and install | ||
``` | ||
spack concretize 2>&1 | tee log.concretize.unified-env.001 | ||
./util/show_duplicate_packages.py -d log.concretize.unified-env.001 | ||
|
@@ -493,7 +440,7 @@ spack module lmod refresh | |
spack stack setup-meta-modules | ||
``` | ||
|
||
11. Test spack-stack installation using your favorite application. | ||
10. Test spack-stack installation using your favorite application. | ||
|
||
``` | ||
# Example given for building jedi-bundle | ||
|
@@ -515,12 +462,12 @@ make -j10 | |
ctest | ||
``` | ||
|
||
12. (Optional) Remove test installs of spack-stack environments, if desired. | ||
11. (Optional) Remove test installs of spack-stack environments, if desired. | ||
|
||
13. Create the AMI for use in the AWS parallelcluster config. You can follow | ||
12. Create the AMI for use in the AWS parallelcluster config. You can follow | ||
the official instructions for [Modifying an AWS ParallelCluster AMI](https://docs.aws.amazon.com/parallelcluster/latest/ug/building-custom-ami-v3.html#modify-an-aws-parallelcluster-ami-v3) | ||
|
||
14. Use the install to build | ||
13. Use the install to build | ||
|
||
``` | ||
# Load the intel toolchain into your environment. | ||
|
@@ -551,7 +498,7 @@ make -j10 | |
ctest | ||
``` | ||
|
||
15. Once the parallel cluster head node image is fully configured and tested you | ||
14. Once the parallel cluster head node image is fully configured and tested you | ||
can create an AMI snapshot based on the configured instance using the | ||
[instructions](https://docs.aws.amazon.com/parallelcluster/latest/ug/building-custom-ami-v3.html) | ||
published by AWS. Included here is a short summary of those instructions. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -5,5 +5,3 @@ modules: | |
lmod: | ||
include: | ||
- python | ||
exclude: | ||
- ecflow |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -19,11 +19,6 @@ packages: | |
externals: | ||
- spec: [email protected] | ||
prefix: /usr | ||
ecflow: | ||
buildable: False | ||
externals: | ||
- spec: [email protected]+ui+static_boost | ||
prefix: /home/ubuntu/jedi/ecflow-5.8.4 | ||
findutils: | ||
externals: | ||
- spec: [email protected] | ||
|
Oops, something went wrong.