Initial planning meeting 21/10/22

ACCESS modules refresh meeting

Attendees

@scott (Bureau of Meteorology)
@dale.roberts (CLEX/MelbUni)
@Aidan (ACCESS-NRI)
@harshula (ACCESS-NRI)
Rui Yang (NCI)
Paul Leopardi (NCI)

Notes

@dale.roberts gave overview of very comprehensive build system used to deploy /apps at NCI. Generally decided that due to the proprietary nature of that software, that it uses setuid binaries (so not suitable for users) and the scale and scope it was designed for that it wasn’t a great fit ACCESS modules.

There was some discussion about using containers for deploying software. There are issues around keeping container systems up to date with gadi system images which get rebuilt every quarter.

@Aidan gave following reasons ACCESS-NRI favour spack

  • Can use existing system infrastructure, e.g. OpenMPI
  • Provenance: captures build environment
  • Reproducibility: lock file allows build to be reproduced at a later date
  • Portability: same builds on ubuntu-CI as on HPC
  • Container support: cached containers will make CI easier and faster
  • Matrix builds: already has in-built support for ci pipeline generation with gitlab
  • Simple to test multiple library versions of important dependencies
  • Internal environment support is a nice convenient way to provide multiple versions of models to community
  • Can also generate modulefiles
  • Users can make use of build caches but still build their own versions if required (spack develop)

Others agreed that spack has a lot to offer, but important that any tool could be configured to use NCI provided compilers, OpenMPI and system openssl library. Lustre and mellanox drivers hand built. Might lose access to LFS, set striping. openssl library updated very rapidly with security advisories.

@Aidan had done some testing and was building with those system libraries in some cases, other cases not, but pretty confident that was just a configuration problem that could be solved.

Agreed to test spack for suitability. A lot of potential up-side if ACCESS-NRI and the ACCESS modules builds use the same system. Agreed to coordinate activity and share info on forum.

Actions:

  • Create fork of spack at ACCESS-NRi GitHub organisation: @Aidan done
  • Push branch with new test packages: @Aidan
  • Create repo to share spack configurations @Aidan done
  • Push spack config info to branch and share with others: @Aidan
  • Write meeting notes (@Aidan) and everyone else feel free to add comments
  • Meet again in one week, revise if necessary, send invite: @Scott done - meeting again 28/10/22

Note that I’ve created those two repos in the ACCESS-NRI organisation. I could move them to ACCESS-Hive so they’re more “community focussed”. I have no great feelings either way, so let me know if they’re better in the org.

EDIT: I have moved the spack_config repo to ACCESS-Hive