Skip to content

Conference call notes 20250423

Kenneth Hoste edited this page Apr 23, 2025 · 1 revision

(back to Conference calls)

Notes on the 268th EasyBuild conference call, Wednesday 23 April 2025 (08:00 UTC / 10:00 CEST)

Attendees

List of attendees (17):

  • Alex Domingo (Vrije Universiteit Brussel, Belgium
  • Jasper Grimm (University of York, UK)
  • Alexander Grund (ZIH, Dresden, Germany)
  • Leonardo Honfi Camilo (Wageningen University, The Netherlands)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Georgios Kafanas (University of Luxembourg)
  • Kurt Lust (UAntwerpen / LUMI)
  • Sam Moors (Vrije Universiteit Brussel, Belgium)
  • Alan O'Cais (CECAM)
  • Mikael Öhman (Chalmers University of Technology, Sweden)
  • Jure Pečar (EMBL, Germany)
  • Andrea Piserchia (E4)
  • Jan Reuter (JSC, Germany)
  • Jörg Saßmannshausen (Imperial College London, UK)
  • Roberto Scipioni (Red Oak Consulting, UK)
  • Alain van Hoof (TU Eindhoven, Netherlands)
  • Cintia Willemyns (Vrije Universiteit Brussel, Belgium)

Agenda

  • overview of recent developments
  • 2025a update of common toolchains
  • Q&A

Recent developments

  • latest EasyBuild release: EasyBuild v5.0.0 (18 March 2025) 🥳
  • next (stable) EasyBuild release: EasyBuid v5.0.1 (soon, days-not-weeks)

News

  • structural merge sprints to be planned (for easyconfigs repo)
    • once a month, fixed day?
    • pairing up of maintainer with frequent contributor?
  • "release after 5.0.0" milestones are being renamed to "5.0.1" + some issues/PRs are being moved to new "release after 5.0.1" milestone

Merged PRs

(changed made in PRs marked with * are included latest EasyBuild stable release)

  • docs (merged PRs)

    • ...
  • framework (merged PRs)

    • bug fixes
      • take into account job-output-dir option in Slurm job backend (PR #4842)
      • Fix unbound variable in error case in build_and_install_software (PR #4843)
      • Add "-" before "DMKL_ILP64" in $CFLAGS (PR #4850)
    • enhancements
      • ...
    • changes
      • ...
    • code cleanup
    • CI
      • ...
  • easyblocks (merged PRs)

    • bug fixes
      • Fix incorrect glob pattern & use report_test_failure in test step in LLVM easyblock (PR #3695)
      • don't use non-existing --enable-sve configure option when building FFTW on Arm system that supports SVE (PR #3696)
      • specify path to gcc RPATH wrapper to linker option of Rust compiler (PR #3698)
    • enhancements
    • updates
      • Update easyblock for AEDT 2025R1 (PR #3644)
    • changes
      • ...
    • new easyblocks
      • ...
    • code cleanup
      • ...
    • CI
      • ...
  • easyconfigs (merged PRs)

    • XXX easyconfig PRs were merged since last conf call
    • bug fixes/reports
      • patch Siesta in order to let EasyBuild control optimization flags (PR #22731)
      • ensure Infernal is built with MPI support, and drop toolchain to gompi (PR #22753)
      • Ensure Proteinortho links against FlexiBLAS, and bump to foss (PR #22754)
    • enhancements
      • ...
    • (noteworthy) new software
      • ...
    • noteworthy software updates
      • ...
    • cleanup
      • ...
    • changes
      • ...

Open (active) PRs

  • docs (open PRs + issues)

  • framework (open PRs + issues)

    • bug fixes
      • Regression: CMAKE_LIBRARY_PATH=lib added to modulefiles (issue #4844 )
    • enhancements
      • add support for data installations (PR #4474)
      • Add capability to export RPATH wrappers for a toolchain (PR #4596)
        • also includes bug fix for RPATH wrappers being used when installing extensions
      • add a CUDA device code sanity check (PR #4692)
    • code cleanup
      • ...
    • changes
      • Deprecation of checksum types should be done on the EasyConfig level instead of during computation (issue #4849)
      • replace deprecation warning about reproducible tarballs on Python older than 3.9 to a regular warning (PR #4852)
  • easyblocks (open PRs + issues)

    • bug fixes/reports
      • run pip check only once for PythonBundle (PR #3432)
      • Avoid failure in Python package installation and sanity check when $PIP_REQUIRE_VIRTUALENV is set (PR #3460)
      • Fix access to unassigned variable when installing Python < 3.9.1 with using sysroot (PR #3686)
      • fix using LLVM easyblock for bundle component + don't build GO tests by default for LLVM versions < 16 (PR #3690)
        • also other PR for LLVM easyblock by Jan (PR #3675)
          • mostly relevant for LLVM 19.x + 20.x (no merged easyconfigs yet)
      • Set Rust channel to stable to prevent usage of rust-lld as default linker (PR #3691)
    • enhancements
      • Support exporting rpath wrappers in buildenv easyblock (PR #3661)
      • Enhance LLVM EasyBlock to better handle offload builds and test failures (PR #3675)
        • includes fix for bug introduced in PR #3674
    • updates
      • ...
    • changes
      • ...
    • code cleanup
      • Remove Python2 style super()-calls and fix ExtensionEasyBlock (PR #3681)
    • new easyblocks
      • ...
  • easyconfigs (open PRs + issues)

2025a common toolchains

  • (2024b is skipped to catch up with original schedule for defining common toolchain versions)
    • EasyBuild v5.0 is ideal excuse for that break in continuity...
  • GCC 14.2 as a base (see easyconfigs PR #21114)
  • we should define candidate toolchains using latest version of all components
  • foss/2025a:
    • easyconfigs using GCCcore/14.2.0 toolchain available for Python 3.13.1, Perl + Perl-bundle-CPAN 5.40.0
    • easyconfigs PR #22125 merged for FlexiBLAS, OpenBLAS, BLIS
    • (easyconfigs PR #22349) merged for cryptography, required for Python-bundle-PyPI, after fixing issue with RPATH linking of Rust crates
    • gfbf/2025.02 + FFTW merged in easyconfigs PR #22126
  • intel/2025a:
    • updates for intel-compilers and impi merged in PR #22657
    • TODO: imkl
    • separate package for intel-shmem, doesn't really belong in intel toolchain

Q&A / others

  • Alex: issue opened for NVHPC-based toolchain (framework issue #4853)
    • options like -Mscalapack assume that NVHPC is installed with the OpenMPI that comes with it
    • adopting NVHPC "batteries included" as proper toolchain EasyBuild opens up a lot of questions
    • current NVHPC easyconfigs should be renamed to nvidia-compilers, since they don't provide full NVHPC SDK
      • makes sense to only do this for new versions of NVHPC, and require sufficiently recent version in toolchain support for NVHPC
    • Alex will look into full NVHPC toolchain
    • main motivator currently is VASP
      • Jörg has also been looking into this
    • shadowing self-provided (ABI-compatible) OpenMPI could be an option?
      • trick we pull in EESSI to allow injecting MPI libraries could be helpful here
    • performance tests done by Alexander @ TU Dresden show that self-compiled OpenMPI on top of NVHPC was a bit faster than the one included with NVHPC
      • unclear if that was for OpenMPI or HPC-X
      • tweaks done by NVIDIA may only be relevant for GPU-to-GPU communication?
Clone this wiki locally