Skip to content

Commit

Permalink
release/1.7.0 - site config and doc updates (#1052)
Browse files Browse the repository at this point in the history
* Bug fix in configs/sites/discover-scu17/compilers.yaml: remove duplicate env variable
* Documentation updates for release-1.7.0
* Update discover-scu16 intel config and documentation, and add note in doc/source/NewSiteConfigs.rst about problems of [email protected] with zlib-ng
* Update documentation for S4 and for problems of zlib-ng with [email protected] on some systems
* Update documentation for new Redhat 8 site configs
* Switch to tag spack-stack-1.7.0 for spack submodule
* Update doc/source/PreConfiguredSites.rst with information on mapl version/variant differences
  • Loading branch information
climbfuji authored Apr 9, 2024
1 parent d221d2a commit a58b90b
Show file tree
Hide file tree
Showing 11 changed files with 154 additions and 199 deletions.
2 changes: 1 addition & 1 deletion .gitmodules
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
[submodule "spack"]
path = spack
url = https://github.com/jcsda/spack
branch = release/1.7.0
branch = spack-stack-1.7.0
[submodule "doc/CMakeModules"]
path = doc/CMakeModules
url = https://github.com/noaa-emc/cmakemodules
Expand Down
2 changes: 1 addition & 1 deletion configs/containers/docker-ubuntu-clang-mpich.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ spack:
os: ubuntu:20.04
spack:
url: https://github.com/jcsda/spack
ref: release/1.7.0
ref: spack-stack-1.7.0
resolve_sha: true

# Whether or not to strip binaries
Expand Down
2 changes: 1 addition & 1 deletion configs/containers/docker-ubuntu-gcc-openmpi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@ spack:
os: ubuntu:20.04
spack:
url: https://github.com/jcsda/spack
ref: release/1.7.0
ref: spack-stack-1.7.0
resolve_sha: true

# Whether or not to strip binaries
Expand Down
2 changes: 1 addition & 1 deletion configs/containers/docker-ubuntu-intel-impi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -115,7 +115,7 @@ spack:
os: ubuntu:20.04
spack:
url: https://github.com/jcsda/spack
ref: release/1.7.0
ref: spack-stack-1.7.0
resolve_sha: true

# Whether or not to strip binaries
Expand Down
16 changes: 8 additions & 8 deletions configs/sites/discover-scu16/compilers.yaml
Original file line number Diff line number Diff line change
@@ -1,24 +1,24 @@
compilers:
- compiler:
spec: intel@=2021.5.0
spec: intel@=2021.6.0
paths:
cc: /usr/local/intel/oneapi/2021/compiler/2022.0.1/linux/bin/intel64/icc
cxx: /usr/local/intel/oneapi/2021/compiler/2022.0.1/linux/bin/intel64/icpc
f77: /usr/local/intel/oneapi/2021/compiler/2022.0.1/linux/bin/intel64/ifort
fc: /usr/local/intel/oneapi/2021/compiler/2022.0.1/linux/bin/intel64/ifort
cc: /usr/local/intel/oneapi/2021/compiler/2022.1.0/linux/bin/intel64/icc
cxx: /usr/local/intel/oneapi/2021/compiler/2022.1.0/linux/bin/intel64/icpc
f77: /usr/local/intel/oneapi/2021/compiler/2022.1.0/linux/bin/intel64/ifort
fc: /usr/local/intel/oneapi/2021/compiler/2022.1.0/linux/bin/intel64/ifort
flags:
ldflags: '-L/usr/local/other/gcc/11.2.0/lib64'
operating_system: sles12
target: x86_64
modules:
- comp/intel/2021.5.0
- comp/intel/2021.6.0
environment:
prepend_path:
PATH: '/usr/local/other/gcc/11.2.0/bin'
CPATH: '/usr/local/other/gcc/11.2.0/include'
LD_LIBRARY_PATH: '/usr/local/intel/oneapi/2021/compiler/2022.0.1/linux/compiler/lib/intel64_lin:/usr/local/other/gcc/11.2.0/lib64'
LD_LIBRARY_PATH: '/usr/local/intel/oneapi/2021/compiler/2022.1.0/linux/compiler/lib/intel64_lin:/usr/local/other/gcc/11.2.0/lib64'
set:
I_MPI_ROOT: '/usr/local/intel/oneapi/2021/mpi/2021.5.0'
I_MPI_ROOT: '/usr/local/intel/oneapi/2021/mpi/2021.6.0'
extra_rpaths: []
- compiler:
spec: gcc@=12.1.0
Expand Down
8 changes: 4 additions & 4 deletions configs/sites/discover-scu16/packages.yaml
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
packages:
all:
compiler:: [intel@2021.5.0, [email protected]]
compiler:: [intel@2021.6.0, [email protected]]
providers:
mpi:: [intel-oneapi-mpi@2021.5.0, [email protected]]
mpi:: [intel-oneapi-mpi@2021.6.0, [email protected]]

### MPI, Python, MKL
mpi:
buildable: False
intel-oneapi-mpi:
externals:
- spec: intel-oneapi-mpi@2021.5.0%intel@2021.5.0
- spec: intel-oneapi-mpi@2021.6.0%intel@2021.6.0
prefix: /usr/local/intel/oneapi/2021
modules:
- mpi/impi/2021.5.0
- mpi/impi/2021.6.0
openmpi::
externals:
- spec: [email protected]%[email protected] ~cuda~cxx~cxx_exceptions~java~memchecker+pmi~static~wrapper-rpath
Expand Down
3 changes: 1 addition & 2 deletions configs/sites/discover-scu17/compilers.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,10 @@ compilers:
CPATH: '/usr/local/other/gcc/11.4.0/include'
LD_LIBRARY_PATH: '/usr/local/intel/oneapi/2021/compiler/2023.2.1/linux/compiler/lib/intel64_lin:/usr/local/other/gcc/11.4.0/lib64'
set:
# https://github.com/JCSDA/spack-stack/issues/1012
I_MPI_EXTRA_FILESYSTEM: 'ON'
# https://github.com/JCSDA/spack-stack/issues/1011
I_MPI_SHM_HEAP_VSIZE: '512'
PSM2_MEMORY: 'large'
# https://github.com/JCSDA/spack-stack/issues/1012
I_MPI_EXTRA_FILESYSTEM: '1'
I_MPI_EXTRA_FILESYSTEM_FORCE: 'gpfs'
I_MPI_FABRICS: 'ofi'
Expand Down
3 changes: 3 additions & 0 deletions configs/sites/noaa-gcloud/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,9 @@ mkdir -p /contrib/admin
cat <<EOF > /contrib/admin/basic_setup.sh
#!/bin/bash

yum-config-manager --disable intel-clck-2019-repo
yum-config-manager --disable intel-hpc-platform
yum-config-manager --disable intelpython
chmod 777 /contrib
yum install -y qt5-qtbase-devel
yum install -y qt5-qtsvg-devel
Expand Down
2 changes: 2 additions & 0 deletions configs/sites/s4/packages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ packages:
compiler:: [[email protected]]
providers:
mpi:: [[email protected]]
# https://github.com/JCSDA/spack-stack/issues/1055
zlib-api:: [zlib]

### MPI, Python, MKL
mpi:
Expand Down
19 changes: 12 additions & 7 deletions doc/source/NewSiteConfigs.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,25 @@ It is also instructive to peruse the GitHub actions scripts in ``.github/workflo
+-------------------------------------------+----------------------------------------------------------------------+---------------------------+
| Compiler | Versions tested/in use in one or more site configs | Spack compiler identifier |
+===========================================+======================================================================+===========================+
| Intel classic (icc, icpc, ifort) | 2021.3.0 to the latest available version in oneAPI 2023.1.0 | ``intel@`` |
| Intel classic (icc, icpc, ifort) | 2021.3.0 to the latest available version in oneAPI 2023.1.0 [#fn1]_ | ``intel@`` |
+-------------------------------------------+----------------------------------------------------------------------+---------------------------+
| Intel mixed (icx, icpx, ifort) | all versions up to latest available version in oneAPI 2023.1.0 | ``intel@`` |
+-------------------------------------------+----------------------------------------------------------------------+---------------------------+
| GNU (gcc, g++, gfortran) | 9.2.0 to 12.2.0 (note: 13.x.y is **not** yet supported) | ``gcc@`` |
+-------------------------------------------+----------------------------------------------------------------------+---------------------------+
| Apple clang (clang, clang++, w/ gfortran) | 13.1.6 to 15.0.0 [#fn1]_ | ``apple-clang@`` |
| Apple clang (clang, clang++, w/ gfortran) | 13.1.6 to 15.0.0 [#fn2]_ | ``apple-clang@`` |
+-------------------------------------------+----------------------------------------------------------------------+---------------------------+
| LLVM clang (clang, clang++, w/ gfortran) | 10.0.0 to 14.0.3 | ``clang@`` |
+-------------------------------------------+----------------------------------------------------------------------+---------------------------+

.. rubric:: Footnotes

.. [#fn1]
Note that [email protected] compiler versions are fully supported, and [email protected] will work but requires the :ref:`workaround noted below<apple-clang-15-workaround>`.
Also, when using [email protected] you must use Command Line Tools version 15.1, and the Command Line Tools versions 15.3 and newer are not yet supported.
We have noted problems on some - not all - platforms with ``[email protected]`` when we switched from ``zlib`` to ``zlib-ng`` in spack-stack-1.7.0. These issues went away when using a different version of the compiler (anything between 2021.3.0 and 2021.11.0). It is therefore recommended to avoid using ``[email protected]`` unless it is the only option.
.. [#fn2]
Note that ``[email protected]`` compiler versions are fully supported, and ``[email protected]`` will work but requires the :ref:`workaround noted below<apple-clang-15-workaround>`.
Also, when using ``[email protected]`` you must use Command Line Tools version 15.1, and the Command Line Tools versions 15.3 and newer are not yet supported.
.. _NewSiteConfigs_macOS:

Expand Down Expand Up @@ -384,6 +387,8 @@ The following instructions were used to prepare a basic Red Hat 8 system as it i
yum -y install automake
yum -y install xorg-x11-xauth
yum -y install xterm
yum -y install perl-IPC-Cmd
yum -y install gettext-devel
yum -y install texlive
# Do not install qt@5 for now
Expand Down Expand Up @@ -511,8 +516,8 @@ It is recommended to increase the stacksize limit by using ``ulimit -S -s unlimi
# JEDI-Skylab system (using R2D2 localhost)
spack external find --scope system mysql
# Note - only needed for generating documentation
spack external find --scope system texlive
spack external find --scope system sed
5. Find compilers, add to site config's ``compilers.yaml``

Expand All @@ -535,10 +540,10 @@ It is recommended to increase the stacksize limit by using ``ulimit -S -s unlimi
spack config add "packages:all:compiler:[gcc@YOUR-VERSION]"
# Example for Red Hat 8 following the above instructions
spack config add "packages:all:providers:mpi:[openmpi@4.1.6]"
spack config add "packages:all:providers:mpi:[openmpi@5.0.1]"
# Example for Ubuntu 20.04 or 22.04 following the above instructions
spack config add "packages:all:providers:mpi:[[email protected].1]"
spack config add "packages:all:providers:mpi:[[email protected].2]"
.. warning::
On some systems, the default compiler (e.g., ``gcc`` on Ubuntu 20) may not get used by spack if a newer version is found. Compare your entry to the output of the concretization step later and adjust the entry, if necessary.
Expand Down
Loading

0 comments on commit a58b90b

Please sign in to comment.