-
Notifications
You must be signed in to change notification settings - Fork 47
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merge release/1.4.1 into develop #671
Merged
climbfuji
merged 19 commits into
JCSDA:develop
from
climbfuji:feature/merge_141_into_jcsda_emc_spack_stack
Jul 14, 2023
Merged
Changes from all commits
Commits
Show all changes
19 commits
Select commit
Hold shift + click to select a range
b517acf
set build_type=Release for fms
AlexanderRichert-NOAA ef0f3d7
update scotch variants in configs/common/packages.yaml
AlexanderRichert-NOAA 53de65a
update .gitmodules
AlexanderRichert-NOAA f10f1e3
submodule pointer
AlexanderRichert-NOAA c3a4140
submodule pointer
AlexanderRichert-NOAA 35298b1
update gitmodules
AlexanderRichert-NOAA 1e1c2a4
submodule pointer
AlexanderRichert-NOAA 2181c7e
remove tab
AlexanderRichert-NOAA 45e96ce
fix gitmodules file
AlexanderRichert-NOAA 928ee77
Update eckit to 1.23.1 (#635)
climbfuji 248628a
Merge branch 'release/1.4.1' of https://github.com/jcsda/spack-stack …
climbfuji 3322236
Merge pull request #632 from AlexanderRichert-NOAA/ufs_jun2023
AlexanderRichert-NOAA 17e75be
Update Acorn config and include [email protected] for 1.4.1 (#636)
AlexanderRichert-NOAA 6ffd4e7
update container README (#639)
AlexanderRichert-NOAA 8475534
update submodule pointer for scotch mpi patch (#660)
AlexanderRichert-NOAA be8f8dd
Final updates (documentation, site configs, ...) for spack-stack-1.4.…
climbfuji 7e50533
Merge branch 'release/1.4.1' of https://github.com/jcsda/spack-stack …
climbfuji c429794
Update .gitmodules and submodule pointer for spack for code review an…
climbfuji 93e2a71
[skip ci] Revert .gitmodules and update submodule pointer for spack
climbfuji File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 |
---|---|---|
|
@@ -2,11 +2,11 @@ | |
|
||
To avoid hardcoding specs in the generic container recipes, we keep the specs list empty (`specs: []`) and manually add the specs for the particular spack-stack release and application as listed below, *after* running `spack stack create ctr`. | ||
|
||
### spack-stack-1.4.0 / skylab-5.0.0 containers for fv3-jedi and mpas-jedi (but not for ufs-jedi) | ||
### spack-stack-1.4.1 / skylab-5.0.0 containers for fv3-jedi and mpas-jedi (but not for ufs-jedi) | ||
``` | ||
specs: [[email protected], [email protected] ~fftw, [email protected], [email protected], | ||
[email protected], [email protected], [email protected], bufr@11.7.1, [email protected], [email protected], ecflow@5, | ||
[email protected].0, [email protected] +trans ~fftw, [email protected] ~fftw, [email protected], | ||
[email protected], [email protected], [email protected], bufr@12.0.0, [email protected], [email protected], ecflow@5, | ||
[email protected].1, [email protected] +trans ~fftw, [email protected] ~fftw, [email protected], | ||
[email protected], fms@release-jcsda, [email protected], [email protected], [email protected], | ||
[email protected], [email protected], [email protected], [email protected], [email protected], [email protected], | ||
[email protected], [email protected], [email protected], [email protected], | ||
|
@@ -27,14 +27,14 @@ To avoid hardcoding specs in the generic container recipes, we keep the specs li | |
# [email protected] | ||
``` | ||
|
||
### spack-stack-1.4.0 / ufs-weather-model-x.y.z containers for ufs-weather-model as of May 18, 2023 | ||
### spack-stack-1.4.1 / ufs-weather-model-x.y.z containers for ufs-weather-model as of July 5, 2023 | ||
|
||
**Note. This is not yet working correctly, some libraries are missing. Please do not use yet! Also, if using the clang-mpich container, need to disable openmp for fms, not clear how to do this cleanly.** | ||
|
||
``` | ||
specs: [[email protected], | ||
[email protected], [email protected], bufr@11.7.1, [email protected], [email protected], ecflow@5, | ||
[email protected].0, [email protected] +trans ~fftw, [email protected] ~fftw, [email protected], | ||
[email protected], [email protected], bufr@12.0.0, [email protected], [email protected], ecflow@5, | ||
[email protected].1, [email protected] +trans ~fftw, [email protected] ~fftw, [email protected], | ||
[email protected], [email protected], [email protected], [email protected], [email protected], | ||
[email protected], [email protected], [email protected], [email protected], [email protected], [email protected], | ||
[email protected], [email protected], [email protected], [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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -80,7 +80,7 @@ packages: | |
buildable: False | ||
externals: | ||
- spec: [email protected]+ui+static_boost | ||
prefix: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/ecflow-5.8.4-c5 | ||
prefix: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/ecflow-5.8.4 | ||
modules: [ecflow/5.8.4] | ||
file: | ||
externals: | ||
|
@@ -174,7 +174,7 @@ packages: | |
buildable: False | ||
externals: | ||
- spec: [email protected] | ||
prefix: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/mysql-8.0.31-c5 | ||
prefix: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/mysql-8.0.31 | ||
modules: [mysql/8.0.31] | ||
ncurses: | ||
externals: | ||
|
@@ -204,7 +204,7 @@ packages: | |
qt: | ||
externals: | ||
- spec: [email protected] | ||
prefix: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/qt-5.15.2-c5/5.15.2/gcc_64 | ||
prefix: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/qt-5.15.2/5.15.2/gcc_64 | ||
rdma-core: | ||
externals: | ||
- spec: [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 |
---|---|---|
|
@@ -3,7 +3,7 @@ packages: | |
compiler:: [[email protected], [email protected]] | ||
#compiler:: [[email protected]] | ||
providers: | ||
mpi:: [[email protected], [email protected].4] | ||
mpi:: [[email protected], [email protected].5] | ||
|
||
### MPI, Python, MKL | ||
mpi: | ||
|
@@ -20,11 +20,11 @@ packages: | |
# - intel-oneapi-mpi/2021.7.1 | ||
openmpi: | ||
externals: | ||
- spec: [email protected].4%[email protected] ~cuda~cxx~cxx_exceptions~java~memchecker+pmi+static~wrapper-rpath | ||
- spec: [email protected].5%[email protected]~cuda~cxx~cxx_exceptions~java~memchecker+pmi~static~wrapper-rpath | ||
fabrics=ucx schedulers=slurm | ||
prefix: /apps/spack-managed/gcc-11.3.1/openmpi-4.1.4-ruvlmb6yyvzbzbiqaov4zk75ogthczsp | ||
prefix: /work/noaa/epic/role-epic/spack-stack/hercules/openmpi-4.1.5/gcc-11.3.1 | ||
modules: | ||
- openmpi/4.1.4 | ||
- openmpi/4.1.5 | ||
python: | ||
buildable: False | ||
externals: | ||
|
@@ -74,9 +74,9 @@ packages: | |
buildable: False | ||
externals: | ||
- spec: [email protected]+ui+static_boost | ||
prefix: /work/noaa/epic-ps/role-epic-ps/spack-stack/ecflow-5.8.4-hercules | ||
prefix: /work/noaa/epic/role-epic/spack-stack/hercules/ecflow-5.8.4 | ||
modules: | ||
- ecflow/5.8.4-hercules | ||
- ecflow/5.8.4 | ||
findutils: | ||
externals: | ||
- spec: [email protected] | ||
|
@@ -119,9 +119,9 @@ packages: | |
buildable: False | ||
externals: | ||
- spec: [email protected] | ||
prefix: /work/noaa/epic-ps/role-epic-ps/spack-stack/mysql-8.0.31-hercules | ||
prefix: /work/noaa/epic/role-epic/spack-stack/hercules/mysql-8.0.31 | ||
modules: | ||
- mysql/8.0.31-hercules | ||
- mysql/8.0.31 | ||
openssh: | ||
externals: | ||
- spec: [email protected] | ||
|
@@ -164,3 +164,10 @@ packages: | |
externals: | ||
- spec: [email protected] | ||
prefix: /usr | ||
# Need to use external zlib, because of qt dependence on it (otherwise issues with tar command) | ||
zlib: | ||
externals: | ||
- spec: [email protected] | ||
prefix: /apps/spack-managed/gcc-11.3.1/zlib-1.2.13-ltp4c3zzde3zi3gf7x4b7c7nj5ww4i4g | ||
modules: | ||
- zlib/1.2.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
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 |
---|---|---|
|
@@ -63,6 +63,9 @@ Sign into qt, select customized installation, choose [email protected] only (uncheck all | |
.. note:: | ||
On air-gapped systems, the above method may not work (we have not encountered such a system so far). | ||
|
||
.. note:: | ||
If ``./qt-unified-linux-x64-online.run`` fails to start with the error ``qt.qpa.xcb: could not connect to display`` and a role account is being used, follow the procedure described in https://www.thegeekdiary.com/how-to-set-x11-forwarding-export-remote-display-for-users-who-switch-accounts-using-sudo to export the display. A possible warning ``xauth: file /ncrc/home1/role.epic/.Xauthority does not exist`` can be ignored, since this file gets created by the ``xauth`` command. | ||
|
||
.. _MaintainersSection_ecFlow: | ||
|
||
------------------------------ | ||
|
@@ -243,7 +246,7 @@ MSU Hercules | |
------------------------------ | ||
|
||
ecflow | ||
``ecFlow`` must be built manually using the GNU compilers and linked against a static ``boost`` library, using an available ``Qt5`` installation. After loading the following modules, follow the instructions in :numref:`Section %s <MaintainersSection_ecFlow>` to install ``ecflow`` in ``/work/noaa/epic-ps/role-epic-ps/spack-stack/ecflow-5.8.4-hercules``. | ||
``ecFlow`` must be built manually using the GNU compilers and linked against a static ``boost`` library, using an available ``Qt5`` installation. After loading the following modules, follow the instructions in :numref:`Section %s <MaintainersSection_ecFlow>` to install ``ecflow`` in ``/work/noaa/epic/role-epic/spack-stack/hercules/ecflow-5.8.4``. | ||
|
||
.. code-block:: console | ||
|
||
|
@@ -253,6 +256,22 @@ ecflow | |
mysql | ||
``mysql`` must be installed separately from ``spack`` using a binary tarball provided by the MySQL community. Follow the instructions in :numref:`Section %s <MaintainersSection_MySQL>` to install ``mysql`` in ``/work/noaa/epic-ps/role-epic-ps/spack-stack/mysql-8.0.31-hercules``. | ||
|
||
openmpi | ||
need to load qt so to get consistent zlib (or just load zlib directly, check qt module) | ||
|
||
.. code-block:: console | ||
|
||
module purge | ||
module load zlib/1.2.13 | ||
module load ucx/1.13.1 | ||
./configure \ | ||
--prefix=/work/noaa/epic/role-epic/spack-stack/hercules/openmpi-4.1.5/gcc-11.3.1 \ | ||
--with-ucx=$UCX_ROOT \ | ||
--with-zlib=$ZLIB_ROOT | ||
make VERBOSE=1 -j4 | ||
make check | ||
make install | ||
|
||
.. _MaintainersSection_Discover: | ||
|
||
------------------------------ | ||
|
@@ -538,17 +557,8 @@ NOAA RDHPCS Gaea C5 | |
|
||
On Gaea C5, ``miniconda``, ``qt``, ``ecflow``, and ``mysql`` need to be installed as a one-off before spack can be used. | ||
|
||
miniconda | ||
Follow the instructions in :numref:`Section %s <MaintainersSection_Miniconda>` to create a basic ``miniconda`` installation and associated modulefile for working with spack. Don't forget to log off and back on to forget about the conda environment. Use the following workaround to avoid the terminal being spammed by error messages about missing version information (``/usr/bin/lua5.3: /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/miniconda-3.9.12-c5/lib/libtinfo.so.6: no version information available (required by /lib64/libreadline.so.7)``): | ||
|
||
.. code-block:: console | ||
|
||
cd /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/miniconda-3.9.12-c5/lib | ||
mv libtinfow.so.6.3 libtinfow.so.6.3.conda.original | ||
ln -sf /lib64/libtinfo.so.6 libtinfow.so.6.3 | ||
|
||
qt (qt@5) | ||
The default ``qt@5`` in ``/usr`` is incomplete and thus insufficient for building ``ecflow``. After loading/unloading the modules as shown below, refer to :numref:`Section %s <MaintainersSection_Qt5>` to install ``[email protected]`` in ``/lustre/f2/dev/wpo/role.epic/contrib/spack-stack/qt-5.15.2-c5``. Note that the installation must be done as a regular user due to problems with graphical applications for role accounts. | ||
The default ``qt@5`` in ``/usr`` is incomplete and thus insufficient for building ``ecflow``. After loading/unloading the modules as shown below, refer to :numref:`Section %s <MaintainersSection_Qt5>` to install ``[email protected]`` in ``/lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/qt-5.15.2``. :numref:`Section %s <MaintainersSection_Qt5>` describes how to export the X windows environment in order to install ``qt@5`` using the role account. | ||
|
||
.. code-block:: console | ||
|
||
|
@@ -557,7 +567,7 @@ qt (qt@5) | |
module load PrgEnv-gnu/8.3.3 | ||
|
||
ecflow | ||
``ecFlow`` must be built manually using the GNU compilers and linked against a static ``boost`` library. After installing `qt5` and loading the following modules, follow the instructions in :numref:`Section %s <MaintainersSection_ecFlow>`. Because of the dependency on ``miniconda``, that module must be loaded automatically in the ``ecflow`` module (similar to ``[email protected]``). Ensure to follow the extra instructions in that section for Gaea C5. | ||
``ecFlow`` must be built manually using the GNU compilers and linked against a static ``boost`` library. After installing `qt5` and loading the following modules, follow the instructions in :numref:`Section %s <MaintainersSection_ecFlow>`. Because of the dependency on ``miniconda``, that module must be loaded automatically in the ``ecflow`` module (similar to ``[email protected]``). Ensure to follow the extra instructions in that section for Gaea C5 in ``/lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/ecflow-5.8.4``. | ||
|
||
Ensure to follow the extra instructions in that section for Gaea. | ||
|
||
|
@@ -568,11 +578,11 @@ ecflow | |
module load PrgEnv-gnu/8.3.3 | ||
module load python/3.9.12 | ||
|
||
module use /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/modulefiles-c5 | ||
module use /lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/modulefiles | ||
module load qt/5.15.2 | ||
|
||
mysql | ||
``mysql`` must be installed separately from ``spack`` using a binary tarball provided by the MySQL community. Follow the instructions in :numref:`Section %s <MaintainersSection_MySQL>` to install ``mysql`` in ``/lustre/f2/dev/wpo/role.epic/contrib/spack-stack/mysql-8.0.31-c5``. | ||
``mysql`` must be installed separately from ``spack`` using a binary tarball provided by the MySQL community. Follow the instructions in :numref:`Section %s <MaintainersSection_MySQL>` to install ``mysql`` in ``/lustre/f2/dev/wpo/role.epic/contrib/spack-stack/c5/mysql-8.0.31``. | ||
|
||
.. _MaintainersSection_Hera: | ||
|
||
|
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'm good with making [email protected] the default version, but I want to double check. JEDI users should be using spack-stack-1.4.0 which has [email protected] installed. Because of this JEDI users will be insulated from this change so it's okay to make [email protected] the default version on the develop branch.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Correct
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
just a note: [email protected] is producing large differences in GSI regression tests (as reported by @DavidHuber-NOAA: NOAA-EMC/GSI#589 (comment)). fine to merge this here, but i expect there might be some issues w/ some applications during transition to this version.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ulmononian one thing to check would be if the GSI is currently using the [email protected] bufr_8 component (which is using 8-byte integers and 8-byte floats, ie double precision), or the bufr_d component (which has 4-byte integers and 8-byte floats). See the README.md notes at https://github.com/NOAA-EMC/NCEPLIBS-bufr/tree/bufr_v11.7.1 for details.
The only component available in [email protected] is bufr_4 which is 4-byte integers and 4-byte floats (ie single precision) so the GSI bufr related code could be making a switch from double to single precision.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let me note that if it turns out that we need both bufr@12 and bufr@11 in spack-stack-1.5.0, we can install both and configure the different environments (gsi-env etc.) such that they load the correct one.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@srherbener Indeed, the GSI uses the bufr_d library, so that could explain the differences. Thanks!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@srherbener thanks for providing that insight, steve. @DavidHuber-NOAA do you expect the GSI team to accept the differences w/ bufr_4 / bufr@12 or should we plan to provide bufr@11 for gsi purposes for the foreseeable future?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@ulmononian I don't expect that they will accept it or at least that they will want to run some more testing before making the switch. Also, I don't see any hints on their GitHub page that they desire to upgrade at this time. But I have asked the question -- and will ask again on a different channel -- and will update when I hear back.