ACCESS-NRI / ACCESS-OM2

ACCESS-OM2: ACCESS Ocean-Sea Ice Model
Apache License 2.0
6 stars 0 forks source link

Update software stack to latest available versions #61

Open aidanheerdegen opened 7 months ago

aidanheerdegen commented 7 months ago

In general we want to keep the underlying software stack as recent as possible, within the limits of retaining reproducibility and not reducing performance.

There are a number of reasons to do so:

  1. When moving to a new HPC older versions of software are not supported
  2. Gain benefit of bug fixes and new features
  3. Updating one component often requires updating others (see parallelio and netCDF)
  4. Performance changes (this can go either way as we saw with parallelio 2.5.2 -> 2.5.10)
  5. Older versions are no longer supported (e.g. Classic Intel Fortran compiler)
  6. New hardware not supported by older tools (MPI and compilers especially)
  7. Newer versions make it easier to port a model to other HPCs, and make comparisons with our results more meaningful. We aim to make our model usable by others to improve it and verify the results are robust
  8. Keep all models as closely aligned as possible, so that desirable features used in one model can be utilised in another, e.g. zarr output directly from netCDF
harshula commented 7 months ago

Blocker for oneapi compiler support: https://github.com/ACCESS-NRI/spack-packages/issues/52

aidanheerdegen commented 5 months ago

If ifx is a blocker for now I'd suggest we go ahead and update all the other dependencies and work on ifx support separately.

harshula commented 2 months ago

Hi @aidanheerdegen , Before publishing the spack develop instructions, we need to: 1) Decide on the versions of ACCESS-OM2 dependencies in the official release. 2) Decide whether main and the official release use the same spack.yaml. At the moment, they appear to be out-of-sync. 3) Decide to use main or a tag of ACCESS-OM2 in the spack develop instructions.

CodeGat commented 2 months ago

In my opinion, if we retract a version of a model, we we should revert main to the last released version, but keep the tag for the retracted version. This is because we keep retracted versions in our model provenance database, so we need to keep the tag. But main should point to the latest non-retracted version.

CodeGat commented 2 months ago

@harshula would you like me to do the reversion?

harshula commented 2 months ago

Hi @CodeGat , Yes please.

harshula commented 2 months ago

We've resolved the immediate problem by syncing the main branch to the official release. i.e We dropped the commits related to https://github.com/ACCESS-NRI/ACCESS-OM2/pull/73 .