Open penguian opened 6 days ago
This is because the spack.yaml
has hide_implicits: true
, which tries to hide implicit dependencies.
We don't get these errors with ACCESS-OM2, which has the same settings.
We could trying setting this to false
and set autoload: run
to minimise the number of module files generated and loaded
https://spack.readthedocs.io/en/latest/module_file_support.html#autoloading-and-hiding-dependencies
Hrm. Why does it work for ACCESS-OM2 and not ESM1.5? I'm not sure I understand.
Me either, but @CodeGat did mention the old exclude_implicits
vs hide_implicits
oddness we encountered some time ago. I thought they were largely synonyms, but might be worth doing some tests and regenerating the module files.
We could trying setting this to
false
and setautoload: run
to minimise the number of module files generated and loaded
This worked, @aidanheerdegen! See https://github.com/ACCESS-NRI/ACCESS-ESM1.5/pull/5/commits/1edb1aa7d7bf603596481a2ec3016474ffd53ae3
$ module use /g/data/vk83/prerelease/apps/spack/0.22/release/modules/linux-rocky8-x86_64_v4/
$ module load access-esm1p5/pr5-31
Loading the module apparently results in an empty bundle. Is this expected? If so, what is the purpose of this module?
$ module use /g/data/vk83/prerelease/apps/spack/0.22/release/modules/linux-rocky8-x86_64_v4/
$ module load access-esm1p5/pr5-31
$ which cice_access_360x300_12x1_12p.exe
/usr/bin/which: no cice_access_360x300_12x1_12p.exe in (/home/851/pcl851/.local/bin:/g/data/tm70/pcl851/src/ACCESS-NRI/spack/bin:/home/851/pcl851/.local/bin:/home/851/pcl851/bin:/opt/pbs/default/bin:/opt/nci/bin:/opt/bin:/opt/Modules/v4.3.0/bin:/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/opt/pbs/default/bin)
$ module show access-esm1p5/pr5-31
-------------------------------------------------------------------
/g/data/vk83/prerelease/apps/spack/0.22/release/modules/linux-rocky8-x86_64_v4/access-esm1p5/pr5-31:
module-whatis {ACCESS-ESM1.5 bundle contains the coupled UM7, CICE4 and MOM5 models.}
conflict access-esm1p5
prepend-path CMAKE_PREFIX_PATH /g/data/vk83/prerelease/apps/spack/0.22/restricted/ukmo/release/linux-rocky8-x86_64_v4/intel-19.0.3.199/access-esm1p5-latest-vawzi2p6rhblpvvrhlezwmd4siawp4jk/.
setenv SPACK_ACCESS_ESM1P5_ROOT /g/data/vk83/prerelease/apps/spack/0.22/restricted/ukmo/release/linux-rocky8-x86_64_v4/intel-19.0.3.199/access-esm1p5-latest-vawzi2p6rhblpvvrhlezwmd4siawp4jk
-------------------------------------------------------------------
$ ls $SPACK_ACCESS_ESM1P5_ROOT
$
Try using autoload: direct
or even autoload: all
instead?
Refer to: https://github.com/spack/spack/issues/40940
Looks like we need to use exclude_implicits
because Gadi has an old version of modules:
$ module --version
Modules Release 4.3.0 (2019-07-26)
hide_implicits
was added in Spack v0.21, hence not relevant for releases made on Spack v0.20.
Hi @penguian , FYI, we took a wrong turn at: https://github.com/ACCESS-NRI/ACCESS-OM2/issues/65 https://github.com/ACCESS-NRI/ACCESS-OM2/pull/60
Attempting to load the
access-esm1p5/pr5-22
module results in the errorModulefile requires at least Modules version 4.7
as follows: