Skip to content

Conference call notes 20250312

Kenneth Hoste edited this page Mar 12, 2025 · 1 revision

(back to Conference calls)

Notes on the 266th EasyBuild conference call, Wednesday 12 Mar 2025 (16:00 UTC / 17:00 CET)

Attendees

List of attendees (21):

  • Bibek Chapagain (Barcelona Supercomputing Centre, Spain)
  • Andy Ells (Cardiff University, UK)
  • Davide Grassano (CECAM)
  • Jasper Grimm (University of York, UK)
  • Alexander Grund (ZIH, Dresden, Germany)
  • Thomas Hayward-Schneider (IPP, Germany)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Adam Huffman (University of Oxford, UK)
  • Kurt Lust (UAntwerpen / LUMI)
  • Raoul Lahom (Hays, US)
  • Sébastien Moretti (SIB, Switzerland)
  • Julián Morillo (BSC, Spain)
  • Mikael Öhman (Chalmers University of Technology, Sweden)
  • Jure Pečar (EMBL, Germany)
  • Anders S. Pedersen (Aarhus University, Denmark)
  • Andrea Piserchia (E4)
  • Jan Reuter (JSC, Germany)
  • Jörg Saßmannshausen (Imperial College London, UK)
  • Roberto Scipioni (Red Oak Consulting, UK)
  • Caspar van Leeuwen (SURF)
  • Cintia Willemyns (Vrije Universiteit Brussel, Belgium)

Agenda

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

Recent developments

  • latest EasyBuild release:
  • next (stable) EasyBuild release:
    • EasyBuild v5.0.0 🔥
      • WIP: regression testing + preparing detailed overview of changes in documentation
        • including overview of "known issues" (which will be minor, corner cases or only affecting not so commonly used software)
      • current target release date: Wed 12 March 2025 Mon 17 March 2025
        • 5.0.x branches will likely be collapsed into develop after the release of EasyBuild 5.0.0
          • to avoid that --from-pr is broken for everyone with no new EasyBuild release being available in which it still works...
      • next EasyBuild conf call on Wed 12 March may be replaced with a presentation on EasyBuild 5.0
        • see EUM'25 talk by Simon on EasyBuild 5.0
        • we may still do a more detailed EasyBuild 5.0 release announcement online talk after EUM'25...
    • additional EasyBuild 4.9.x versions could in theory still be done via 4.9.x branches, but none are planned currently
  • EasyBuild v5.0.0
    • project board: https://github.com/orgs/easybuilders/projects/18/views/2
    • detailed notes on latest developments here
    • 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
      • [5.0.x] Set maximum level of parallellism via parallel configuration option rather than fixed value for maxparallel or max_parallel easyconfig parameter (PR #4777)
      • [5.0.x] make delattr aware of environment variables in ModuleLoadEnvironment (PR #4784)
      • [5.0.x] clean up use get_source_tarball_from_git to use same checkout mechanism for creating tarball for Git repos with tags and commits (PR #4797)
      • [5.0.x] Allow empty string in modextrapaths (PR #4799)
      • [5.0.x] avoid re-assigning env_var_name of outer for loop in inner for loop in EasyBlock.inject_module_extra_paths (PR #4801)
      • [5.0.x] Allow use of rpath toolchain option when using system compiler toolchain (PR #4808)
    • enhancements
      • copy build directory and/or log file(s) if installation failed to path specified via --failed-install-build-dirs-path or --failed-install-logs-path (PR #4601)
      • enhance apply_regex_substitutions to support use of multi-line patterns, requiring matching all patterns in each file, and use pre-compiled regular expressions (PR #4758)
      • [develop] ignore other classes if software specific easyblock class was found (PR #4769)
      • [5.0.x] add warning about possible checksum verification failure on non-reproducible sources (PR #4798)
      • [5.0.x] Enhance get_gpu_info to also use amd-smi for AMD GPUs if possible (PR #4805)
    • changes
      • [5.0.x] Add context manager for allowing unresolved templates and make the state members private (PR #4735)
      • [5.0.x] enable keeping of symbolic links by default when copying (set keepsymlinks easyconfig parameter to True) (PR #4773)
    • code cleanup
      • ...
    • CI
      • Update GitHub actions workflows to stop using ubuntu-20.04 (PRs #4783, #4795)
  • easyblocks (merged PRs)

    • bug fixes
      • ...
    • enhancements
      • [5.0.x] enhance LLVM easyblock for compilation of clang/flang + other llvm-projects (PR #3373)
      • [develop] Use unittest XML files to parse PyTorch test results (PR #3633)
        • not included yet in 5.0.x branch, need to check if this can still be included for upcoming EasyBuild 5.0 release...
      • [5.0.x] add collection of easyconfig templates organized per generation (and remove TEMPLATE.eb poor mans template easyconfig) (PR #21984)
    • updates
      • ...
    • changes
      • [5.0.x] Use context managers for templating changes in Bundle easyblock (PR #3547)
    • new easyblocks
      • ...
    • code cleanup
      • replace delattr with preferred ModuleLoadEnvironment.remove method in SystemCompiler and SystemMPI (PR #3647)
    • CI
      • Update GitHub actions workflows to stop using ubuntu-20.04 (PRs #3651, #3655)
  • easyconfigs (merged PRs)

    • XXX easyconfig PRs were merged since last conf call
    • bug fixes/reports
      • [5.0.x] add patch for QuantumESPRESSO 7.4 to fix parallel symmetrization glitch (PR #22345)
      • [5.0.x] fix NSS easyconfigs by not keeping symlinks when copying files to installation (PR #22471)
    • enhancements
      • ...
    • (noteworthy) new software
      • ...
    • noteworthy software updates
      • ...
    • cleanup
      • ...
    • changes
      • [5.0.x] avoid using buildcmd in PySide2 easyconfig (PR #22380)
      • [5.0.x] replace hardcoded 'CPATH' in modextravars with MODULE_LOAD_ENV_HEADERS constant (PR #22417)

Open (active) PRs

  • docs (open PRs + issues)

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

    • bug fixes
      • [develop] show readable error message when applying patch without (extracted) source (PR #4738)
      • [develop] Avoid processing the same EasyConfig multiple times (PR #4767)
      • [5.0.x] don't expand paths being considered for generated module file for temporary 'fake' module file to avoid filtering out paths for directories that don't exist yet (PR #4809)
    • enhancements
      • [develop] initial work towards integrating easy_update functionality (PR #4714)
      • [develop] Introduce check_readelf_rpath easyconfig parameter to optionally skip RPATH checks (PR #4768)
      • [develop] add support for specifying dependencies required to obtain source files via source_deps easyconfig parameter (PR #4766)
    • code cleanup
      • ...
    • changes
      • [5.0.x] With new clang based intel compilers (ifx, icx, icpx) we should use -march=native (issue #4744)
        • significant performance regression when using -march=native rather than -xHOST, so doesn't seem wise to adopt it by default...
        • needs more testing, with newer version of Intel compilers
        • binaries produced with -xHOST just fail on AMD systems...
  • easyblocks (open PRs + issues)

    • bug fixes/reports
      • [develop] Fix cargo build when git branch is referenced (PR #3654)
      • [5.0.x] make AOCC compiler wrappers aware of keepsymlinks option (PR #3659)
    • enhancements
      • [5.0.x] Add build_target parameter to PythonPackage (PR #3575)
    • updates
      • ...
    • changes
      • [develop] Use PythonPackage as the default_easyblock for PythonBundle (PR #3649)
    • code cleanup
      • [5.0.x] recursive glob expansion of library files in GROMACS and convert lib_subdirs into a property (PR #3641)
    • 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
  • easyconfigs using GCCcore/14.2.0 toolchain available for Python 3.13.1, Perl + Perl-bundle-CPAN 5.40.0
  • effort sort of on hold until EasyBuild v5.0.0 is released...
  • easyconfigs PR #22125 for FlexiBLAS, OpenBLAS, BLIS

Q&A / others

Clone this wiki locally