diff --git a/E3SM-Project b/E3SM-Project index 1442143a9..62d19a32c 160000 --- a/E3SM-Project +++ b/E3SM-Project @@ -1 +1 @@ -Subproject commit 1442143a9519fbd66fdea4f3f2e67aba17ad49e5 +Subproject commit 62d19a32c7f92d3459cd4d2d75bdde83aa5bdebc diff --git a/compass/ocean/mesh/remap_topography.py b/compass/ocean/mesh/remap_topography.py index 31ef19da2..a02d8a30e 100644 --- a/compass/ocean/mesh/remap_topography.py +++ b/compass/ocean/mesh/remap_topography.py @@ -222,7 +222,8 @@ def _partition_scrip_file(self, in_filename): in_filename, h5m_filename, ] - check_call(args, logger) + # run in "parallel" with one task and one thread for Intel-MPI support + run_command(args, 1, 1, 1, self.config, logger) # Partition source SCRIP args = [ @@ -231,7 +232,8 @@ def _partition_scrip_file(self, in_filename): h5m_filename, part_filename, ] - check_call(args, logger) + # run in "parallel" with one task and one thread for Intel-MPI support + run_command(args, 1, 1, 1, self.config, logger) logger.info(' Done.') diff --git a/compass/ocean/tests/global_ocean/files_for_e3sm/remap_sea_surface_salinity_restoring.py b/compass/ocean/tests/global_ocean/files_for_e3sm/remap_sea_surface_salinity_restoring.py index f9495f570..ac042447f 100644 --- a/compass/ocean/tests/global_ocean/files_for_e3sm/remap_sea_surface_salinity_restoring.py +++ b/compass/ocean/tests/global_ocean/files_for_e3sm/remap_sea_surface_salinity_restoring.py @@ -159,7 +159,8 @@ def _partition_scrip_file(self, in_filename): in_filename, h5m_filename, ] - check_call(args, logger) + # run in "parallel" with one task and one thread for Intel-MPI support + run_command(args, 1, 1, 1, self.config, logger) # Partition source SCRIP args = [ @@ -168,7 +169,8 @@ def _partition_scrip_file(self, in_filename): h5m_filename, part_filename, ] - check_call(args, logger) + # run in "parallel" with one task and one thread for Intel-MPI support + run_command(args, 1, 1, 1, self.config, logger) logger.info(' Done.') return part_filename diff --git a/compass/version.py b/compass/version.py index 1574f6bb0..339181c5a 100644 --- a/compass/version.py +++ b/compass/version.py @@ -1 +1 @@ -__version__ = '1.7.0-alpha.3' +__version__ = '1.8.0-alpha.1' diff --git a/conda/bootstrap.py b/conda/bootstrap.py index dcb56e3da..6a0736601 100755 --- a/conda/bootstrap.py +++ b/conda/bootstrap.py @@ -495,7 +495,7 @@ def build_spack_env(config, update_spack, machine, compiler, mpi, # noqa: C901 specs = list() if cmake != 'None': - specs.append(f'"cmake@{cmake}"') + specs.append(f'cmake@{cmake}') e3sm_hdf5_netcdf = config.getboolean('deploy', 'use_e3sm_hdf5_netcdf') if not e3sm_hdf5_netcdf: @@ -504,37 +504,40 @@ def build_spack_env(config, update_spack, machine, compiler, mpi, # noqa: C901 netcdf_fortran = config.get('deploy', 'netcdf_fortran') pnetcdf = config.get('deploy', 'pnetcdf') specs.extend([ - f'"hdf5@{hdf5}+cxx+fortran+hl+mpi+shared"', - f'"netcdf-c@{netcdf_c}+mpi~parallel-netcdf"', - f'"netcdf-fortran@{netcdf_fortran}"', - f'"parallel-netcdf@{pnetcdf}+cxx+fortran"']) + f'hdf5@{hdf5}+cxx+fortran+hl+mpi+shared', + f'netcdf-c@{netcdf_c}+mpi~parallel-netcdf', + f'netcdf-fortran@{netcdf_fortran}', + f'parallel-netcdf@{pnetcdf}+cxx+fortran']) if esmf != 'None': - specs.append(f'"esmf@{esmf}+mpi+netcdf~pnetcdf~external-parallelio"') + specs.append(f'esmf@{esmf}+mpi+netcdf~pnetcdf~external-parallelio') if lapack != 'None': - specs.append(f'"netlib-lapack@{lapack}"') + specs.append(f'netlib-lapack@{lapack}') include_e3sm_lapack = False else: include_e3sm_lapack = True if metis != 'None': specs.append( - f'"metis@{metis}+int64+real64"') + f'metis@{metis}+int64+real64') if moab != 'None': specs.append( - f'"moab@{moab}+mpi+hdf5+netcdf+pnetcdf+metis+parmetis+tempest"') + f'moab@{moab}+mpi+hdf5+netcdf+pnetcdf+metis+parmetis+tempest') if petsc != 'None': - specs.append(f'"petsc@{petsc}+mpi+batch"') + specs.append(f'petsc@{petsc}+mpi+batch') custom_spack = '' if scorpio != 'None': specs.append( - f'"scorpio' - f'@{scorpio}+pnetcdf~timing+internal-timing~tools+malloc"') + f'e3sm-scorpio' + f'@{scorpio}+mpi~timing~internal-timing~tools+malloc') # make sure scorpio, not esmf, libraries are linked lib_path = \ f'{spack_branch_base}/var/spack/environments/' \ f'{spack_env}/.spack-env/view/lib' - scorpio_lib_path = '$(spack find --format "{prefix}" scorpio)' + scorpio_lib_path = '$(spack find --format "{prefix}" e3sm-scorpio)' + if scorpio_lib_path == '': + raise ValueError('Could not find e3sm-scorpio in Spack. ' + 'Did something go wrong with the build?') custom_spack = \ f'{custom_spack}' \ f'ln -sfn {scorpio_lib_path}/lib/libpioc.a {lib_path}\n' \ @@ -542,12 +545,12 @@ def build_spack_env(config, update_spack, machine, compiler, mpi, # noqa: C901 if parallelio != 'None': specs.append( - f'"parallelio' - f'@{parallelio}+pnetcdf~timing"') + f'parallelio' + f'@{parallelio}+pnetcdf~timing') if albany != 'None': - specs.append(f'"trilinos-for-albany@{albany}{trilinos_variants}"') - specs.append(f'"albany@{albany}{albany_variants}"') + specs.append(f'trilinos-for-albany@{albany}{trilinos_variants}') + specs.append(f'albany@{albany}{albany_variants}') yaml_template = f'{spack_template_path}/{machine}_{compiler}_{mpi}.yaml' if not os.path.exists(yaml_template): diff --git a/conda/compass_env/spec-file.template b/conda/compass_env/spec-file.template index d49be47e1..ca4ef9087 100644 --- a/conda/compass_env/spec-file.template +++ b/conda/compass_env/spec-file.template @@ -16,7 +16,7 @@ ipython jupyter lxml {% if include_mache %} -mache=1.27.0 +mache=1.31.0 {% endif %} matplotlib-base >=3.9.1 metis diff --git a/conda/configure_compass_env.py b/conda/configure_compass_env.py index 88d86e481..850762ced 100755 --- a/conda/configure_compass_env.py +++ b/conda/configure_compass_env.py @@ -102,7 +102,7 @@ def main(): if local_mache: mache = '' else: - mache = '"mache=1.27.0"' + mache = '"mache=1.31.0"' setup_install_env(env_name, activate_base, args.use_local, logger, args.recreate, conda_base, mache) diff --git a/conda/default.cfg b/conda/default.cfg index e4d78e02c..e9692679e 100644 --- a/conda/default.cfg +++ b/conda/default.cfg @@ -26,15 +26,15 @@ albany_variants = +mpas~py+unit_tests trilinos_variants = # cmake newer than 3.23.0 needed for Trilinos cmake = 3.23.0: -esmf = 8.7.0 -hdf5 = 1.14.3 +esmf = 8.8.1 +hdf5 = 1.14.6 lapack = 3.9.1 metis = 5.1.0 moab = master netcdf_c = 4.9.2 -netcdf_fortran = 4.6.1 +netcdf_fortran = 4.6.2 petsc = 3.19.1 -pnetcdf = 1.13.0 -scorpio = 1.6.5 +pnetcdf = 1.14.0 +scorpio = 1.8.1 # parallelio = 2.6.3 parallelio = None