Skip to content

Conversation

@andrewdnolan
Copy link
Collaborator

This merge also updates config_machines.xml to bring in updates to Aurora modules (E3SM-Project/E3SM#7693). This version of config_machines.xml corresponds to

https://github.com/E3SM-Project/E3SM/blob/f29cfa46f9033d8ffb6848f1bca8d9e8d284043f/cime_config/machines/config_machines.xml

This bring in changes to Aurora modules and corresponds to
E3SM commit hash: f29cfa46f9033d8ffb6848f1bca8d9e8d284043f
@andrewdnolan andrewdnolan added spack Changes relate to creating conda and Spack environments, and creating a load script config-machines Changes to the config_machines.xml file labels Oct 29, 2025
Copy link
Collaborator

@xylar xylar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A version needs fixing here.

Copy link
Collaborator

@xylar xylar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good (as long as it actually works, of course).

@xylar xylar self-requested a review October 29, 2025 21:20
Copy link
Collaborator

@xylar xylar left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Needs the fixes from update-to-2.0.0

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@xylar to explain a little of what's going on. First, I loaded the (needed) modules from the config_machines.xml:

source /usr/share/lmod/lmod/init/sh
module load cmake/3.31.8
module load oneapi/release/2025.2.0

Then I ran:

$ which cmake
/opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/cmake-3.31.8-mvhtj5u/bin/cmake

$ ls -d /opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/libiconv*
ls: cannot access '/opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/libiconv*': No such file or directory

$ ls -d /opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/libxml2*
/opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/libxml2-2.13.5-dhzcbk4

$ ls -d /opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/gcc-runtime-*
/opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/gcc-13.3.0/gcc-runtime-13.3.0-ghotoln

$ which mpicc
/opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/oneapi-2025.2.0/mpich-develop-git.6037a7a-cym6jg6/bin/mpicc

which is where I got the new paths from. Also that's what's lead to the decision to delete the libiconv entry (I double checked the oneapi-2025.2.0 directory, but nothing there either.

@andrewdnolan
Copy link
Collaborator Author

So, even with 2f23373 (cherry-picked onto update-to-2.0.0) we still get the same error message:

==> Created environment e3sm_spack_env in: /lus/flare/projects/E3SMinput/soft/e3sm-unified/e3smu_1_12_0rc3/aurora/spack/oneapi-ifx_mpich/var/spack/environments/e3sm_spack_env
==> Activate with: spack env activate e3sm_spack_env
==> Fetching https://ghcr.io/v2/spack/bootstrap-buildcache-v1/blobs/sha256:232504c082b9badb4b1c2540f36f2e0c28f8f314f742262935e82aef0c049a0c
==> Fetching https://ghcr.io/v2/spack/bootstrap-buildcache-v1/blobs/sha256:90b7cf4dd98e26c58578ad8604738cc32dfbb228cfb981bdfe103c99d0e7b5dd
==> Installing "clingo-bootstrap@=spack%gcc@=10.2.1~docs+ipo+optimized+python+static_libstdcpp build_system=cmake build_type=Release generator=make patches=bebb819,ec99431 arch=linux-centos7-x86_64" from a buildcache
==> Error: failed to concretize `[email protected]%[email protected]+mpi`, `[email protected]%[email protected]`, `[email protected]%[email protected]`, `[email protected]%[email protected]+cxx+fortran+hl+mpi+shared`, ..., `[email protected]%[email protected]+mpi~parallel-netcdf` for the following reasons:
     1. cannot satisfy a requirement for package 'gcc-runtime'.. You could consider setting `concretizer:unify` to `when_possible` or `false` to allow multiple versions of some packages.

So, I added the --debug flag to all the commands in the build_e3sm_spack_env.bash script, and now get:

==> [2025-10-30-02:53:51.011479] [/lus/flare/projects/E3SMinput/soft/e3sm-unified/e3smu_1_12_0rc3/aurora/spack/oneapi-ifx_mpich/lib/spack/spack/compilers/__init__.py] The external spec '[email protected]' cannot be used as a compiler: missing the 'extra_attributes' key                                                                                                           
==> [2025-10-30-02:53:51.021630] [/lus/flare/projects/E3SMinput/soft/e3sm-unified/e3smu_1_12_0rc3/aurora/spack/oneapi-ifx_mpich/lib/spack/spack/compilers/__init__.py] The external spec '[email protected]' cannot be used as a compiler: missing the 'extra_attributes' key                                                                                                           
==> [2025-10-30-02:53:51.061096] [/lus/flare/projects/E3SMinput/soft/e3sm-unified/e3smu_1_12_0rc3/aurora/spack/oneapi-ifx_mpich/lib/spack/spack/compilers/__init__.py] The external spec '[email protected]' cannot be used as a compiler: missing the 'extra_attributes' key                                                                                                           
==> [2025-10-30-02:53:59.780443] UnsatisfiableSpecError: failed to concretize `[email protected]%[email protected]`, `[email protected]%[email protected]+openmp`, `[email protected]%[email protected]+mpi`, `[email protected]%[email protected]`, ..., `[email protected]%[email protected]~external-parallelio+mpi+netcdf~pnetcdf` for the following reasons:                                    
     1. cannot satisfy a requirement for package 'gcc-runtime'.. You could consider setting `concretizer:unify` to `when_possible` or `false` to allow multiple versions of some packages. 
==> [2025-10-30-02:53:59.780501] Error: failed to concretize `[email protected]%[email protected]`, `[email protected]%[email protected]+openmp`, `[email protected]%[email protected]+mpi`, `[email protected]%[email protected]`, ..., `[email protected]%[email protected]~external-parallelio+mpi+netcdf~pnetcdf` for the following reasons:
     1. cannot satisfy a requirement for package 'gcc-runtime'.. You could consider setting `concretizer:unify` to `when_possible` or `false` to allow multiple versions of some packages.

While it's not logged as an error/warning the first three lines suggest there's an issue using [email protected] as the compiler because it's missing the 'extra_attributes' key.

@andrewdnolan
Copy link
Collaborator Author

No luck with extra_attributes. Same error message as before.

I've also compared the content of:

/opt/aurora/24.347.0/spack/unified/0.9.2/install/linux-sles15-x86_64/oneapi-2025.0.5/mpich-develop-git.6037a7a-sxnhr7p

and

/opt/aurora/25.190.0/spack/unified/0.10.1/install/linux-sles15-x86_64/oneapi-2025.2.0/mpich-develop-git.6037a7a-cym6jg6

and they seem to have the same content, laid out in a similar way.

... I'm pretty stumped.

Comment on lines -18 to +20
# whether to use system modules for hdf5, netcdf-c, netcdf-fortran and pnetcdf
# whether to use E3SM modules for hdf5, netcdf-c, netcdf-fortran and pnetcdf
# (spack modules are used otherwise)
use_system_hdf5_netcdf = True
use_e3sm_hdf5_netcdf = True
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This was fairly clearly a mixup. Aurora must have been added about the same time Althea and I removed support of use_system_hdf5_netcdf and it got left with that incorrect config option.

xylar added 2 commits October 30, 2025 11:33
This is required for gcc-runtimes to be handled correctly.
@andrewdnolan
Copy link
Collaborator Author

Based on the successful deployment on Aurora, I think this is ready to be merged. What do you think @xylar ?

@xylar
Copy link
Collaborator

xylar commented Oct 31, 2025

Testing

Tested as part of successful E3SM-Unified 1.2.0rc3 deployment on Aurora.

@xylar xylar assigned xylar and unassigned andrewdnolan Oct 31, 2025
@xylar xylar merged commit eb36f6d into E3SM-Project:main Oct 31, 2025
5 checks passed
@andrewdnolan andrewdnolan deleted the update-aurora branch November 4, 2025 16:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

config-machines Changes to the config_machines.xml file spack Changes relate to creating conda and Spack environments, and creating a load script

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants