Skip to content

Conference call notes 20240605

Kenneth Hoste edited this page Jun 5, 2024 · 3 revisions

(back to Conference calls)

Notes on the 247th EasyBuild conference call, Wednesday 5 June 2024 (15:00 UTC)

Attendees

List of attendees (XXX):

  • Sebastian Achilles (JSC, Germany)
  • Alex Domingo (Vrije Universiteit Brussel, Belgium)
  • Jasper Grimm (University of York, UK)
  • Alexander Grund (TU Dresden, Germany)
  • Thomas Hayward-Schneider (Max Planck Institute for Plasma Physics (IPP))
  • Thomas Hoffman (EMBL, Germany)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Kurt Lust (UAntwerpen, Belgium + LUMI User Support Team)
  • Luca Marsella (CSCS, Switzerland)
  • Sam Moors (Vrije Universiteit Brussel, Belgium)
  • Sébastien Moretti (SIB, Switzerland)
  • Alan O'Cais (CECAM + Univ. of. Barcelona, Spain)
  • Mikael Öhman (Chalmers University of Technology, Sweden)
  • Jure Pečar (EMBL, Heidelberg, Germany)
  • Jörg Saßmannshausen (Imperial College London, UK)
  • Åke Sandgren (Umeå University, Sweden)
  • Alain van Hoof (TU Eindhoven, Netherlands)

Agenda

  • overview of recent developments
  • outlook to EasyBuild 5.0 release
  • 2024a update of common toolchains
  • Q&A

Recent developments

  • latest EasyBuild release: 4.9.1 (3 Apr 2024)
  • next EasyBuild release: probably 4.9.2 in coming weeks, to help with transition to 5.0.0
  • EasyBuild v5.0.0
    • detailed notes on latest developments in https://hackmd.io/tZtz6vMmRfGL6N9Rf__OEA
    • to test development version of EasyBuild 5.0:
      # set up Python virtual environment, and jump into it
      python3 -m venv eb5
      source eb5/bin/activate
      
      # install EasyBuild 5.0 development version into it
      pip install https://github.com/easybuilders/easybuild-framework/archive/5.0.x.tar.gz
      pip install https://github.com/easybuilders/easybuild-easyblocks/archive/5.0.x.tar.gz
      pip install https://github.com/easybuilders/easybuild-easyconfigs/archive/5.0.x.tar.gz
      
      # go!
      eb --version

Merged PRs

  • docs (merged PRs)

    • ...
  • framework (merged PRs)

    • bug fixes
      • Fix resolved (template) values in case of failure (PR #4532)
    • enhancements
      • versions checks to avoid mixing major versions across the EasyBuild components (PR #4520)
        • will help to make clear why --from-pr is broken when using EasyBuild 4.x when 5.0.x branch is collapsed into develop branch (which will happen soon, after release of EasyBuild v4.9.2)
      • add support for easyconfig parameter module_only (PR #4537)
    • changes
      • ...
    • code cleanup
      • ...
    • EasyBuild 5.0 (5.0.x branch)
      • Use dict.items() instead of repeatedly getting the value (PR #4533)
      • create env.sh and cmd.sh helper scripts in run_shell_cmd (framework PR #4486)
      • add support for alternate easyconfig parameters/templates/constants (PR #4511)
        • actual renaming is being done in PR #4514 (which is about to get merged)
        • policy will be documented w.r.t. naming of things:
            1. Multiple words are separated by _ (or - for command line configuration options), as opposed to just concatenating them
            • examples: build_opts (not buildopts), post_install_cmds (not postinstallcmds)
            • exceptions: symlink, sysroot
            1. Common long words can be abbreviated, but only if there's no room for confusion
            • examples: deps (instead of dependencies), opts (instead of options), env_mod (instead of environment_module)
            • exceptions:
              • configure in easyconfig parameters like configure_opts (to be consistent with configure step)
              • cfg will be used EasyBuild configuration options
            1. Confusion with commonly used terms (like "module") is avoided by being more descriptive
            • example: don't use mod for module, but py_mod for Python module, env_mod for environment module, fortran_mod for Fortran module
        • add new get_cwd function to tools.filetools to retrieve current working directory (PR #4525)
        • --fix-deprecated-easyconfigs will be enhanced to auto-rename stuff in easyconfigs (see WIP PR #4547)
      • fix test_update_branch_github which got broken because toy-0.0.eb easyconfig was modified (framework PR #4545)
  • easyblocks (merged PRs)

    • bug fixes
      • ...
    • enhancements
      • allow version mismatchs between OpenSSL components in host system as long as they fulfill version requirements (PR #3340)
      • Allow external PRRTE in OpenMPI easyblock (PR #3347)
    • updates
      • ...
    • changes
      • ...
    • new easyblocks
      • ...
    • EasyBuild 5.0
      • set CMake installation LIBDIR to lib by default in CMakeMake easyblock (PR #3227)
  • easyconfigs (merged PRs)

    • ~XXX easyconfig PRs were merged since last conf call
    • bug fixes/reports
      • ...
    • enhancements
      • ...
    • (noteworthy) new software
      • ...
    • noteworthy software updates
      • ...

Open (active) PRs

  • docs (open PRs + issues)

    • ...
  • framework (open PRs + issues)

    • bug fixes
      • ...
    • enhancements
      • ...
    • changes
      • ...
    • EasyBuild 5.0
  • easyblocks (open PRs + issues)

    • bug fixes
      • fix failing sanity check for intel-compiler on Debian/Ubuntu (PR #3346)
      • avoid sanity check on the software itself for CargoPythonBundle easyblock (PR #3341)
    • enhancements
      • enhance CMakeMake easyblock to check whether correct Python installation was picked up by cmake (PR #3233)
      • add Arm support to NAMD easyblock (PR #3348)
    • changes
      • Merge of the ConfigureMake and CMakeMake versions of the easyblock for QuantumESPRESSO (PR #3338)
    • new
      • ...
  • easyconfigs (open PRs + issues)

    • bug fixes
      • ...
    • enhancements
      • ...
    • (noteworthy) new software
      • QuantumESPRESSO:
        • 7.3.1 with cmake (PR #20138)
        • Correct configuration of QuantumESPRESSO for 6.7/7.2/7.3, move all QE easyconfigs to "legacy" easyblock (PR #20070)
      • jax 0.4.25 w/ CUDA (PR #20119)
      • RELION v5.0.0_beta.2024.0.01 w/ CUDA 12.1.1 9 (PR #19678)
      • PyTorch v2.3.0 (PR #20489)
        • Alexander is in touch with PyTorch devs on getting machine-readable output for PyTorch test suite
    • changes
      • ...

2024a common toolchains

  • GCC 13.3 as a base
  • latest version of all components (except GCC, not using 14.1):
    • foss/2024a (candidate toolchain foss/2024.05 merged: PR #20646)
      • GCC 13.3 (20240521) + binutils 2.42 (20240129) (PR #20559)
      • OpenMPI 5.0.3 (20240408) (PR #17561)
        • PMIx 5.0.2 (20240321), UCX 1.16.0 (20240415), libfabric 1.21.0 (20240329)
      • FlexiBLAS 3.4.3 (20240521) + OpenBLAS 0.3.27 (20240404) + BLIS 1.0 (20240506)
      • FFTW 3.3.10 (20210914)
      • ScaLAPACK 2.2.0 (20220202)
    • intel/2024a (TODO: set up candidate toolchain intel/2024.04?)
      • GCCcore 13.3 + binutils 2.42
      • Intel C/C++/Fortran compilers 2024.1.0 (20240327)
      • Intel MPI 2021.12.1 (20240424)
      • Intel MKL 2024.1.0 (20240327)
  • notes
    • Python 3.11.x or 3.12.x => trying with Python 3.12 for now
    • Sam: Cython should be a build dependency for Python-bundle-PyPI

Q&A / others

  • ...
Clone this wiki locally