Skip to content

Conference call notes 20231108

Kenneth Hoste edited this page Dec 6, 2023 · 4 revisions

(back to Conference calls)

Notes on the 233rd EasyBuild conference call, Wednesday 8 Nov 2023 (09:00 UTC)

Attendees

List of attendees (16):

  • Sebastian Achilles (JSC, Germany)
  • Simon Branford (Univ. of Birmingham, UK)
  • Alex Domingo (Vrije Universiteit Brussel, Belgium)
  • Jasper Grimm (University of York, UK)
  • Alexander Grund (TU Dresden, Germany)
  • Kenneth Hoste (HPC-UGent, Belgium)
  • Adam Huffman (Big Data Institute, Oxford, UK)
  • Kurt Lust (UAntwerpen, Belgium + LUMI User Support Team)
  • Sam Moors (Vrije Universiteit Brussel, Belgium)
  • Sébastien Moretti (SIB, Switzerland)
  • 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)
  • Alexandre Strube (JSC, Germany)
  • Alain van Hoof (TU Eindhoven, Netherlands)

Agenda

  • overview of recent developments
  • 2023b update of common toolchains
  • Q&A

Recent developments

  • latest EasyBuild release: 4.8.2 (29 Oct 2023)
    • ETA for next EasyBuild release (v4.9.0): early/mid Dec'23
    • ETA for EasyBuild 5.0 release: first release of 2024?
      • started doing short sprint meetings, each Monday at 10:00 CEST to set next 5 goals to tackle that week
  • recent changes
    • docs (merged PRs)
      • ...
    • framework (merged PRs)
      • bug fixes
        • fix broken test for reasons_for_closing, which fails because commit status of easyconfigs PR is no longer available (PR #4366)
        • only install GitHub token when testing with Lmod 8.x + Python 3.6 or 3.9 (PR #4375)
        • deduplicate warnings & errors found in logs and add initial newline + tab in output (PR #4361)
      • enhancements
        • add support for %(sysroot)s template value (PR #4359)
        • add dependency_names method to EasyConfig class to get set of names of (direct) dependencies (PR #4360)
      • changes
        • ...
      • EasyBuild 5.0 (to 5.0.x branch)
        • ...
    • easyblocks (merged PRs)
      • bug fixes
        • fix --sanity-check-only and --module-only for UCX plugins (PR #3007)
          • nice example of how to make easyblocks compatible with --sanity-check-only and --module-only
        • enhance TensorFlow easyblock to avoid use of -mcpu=native for XNNPACK component when building on aarch64 (PR #3011)
        • fix the blas/lapack name passed to meson when building recent scipy versions (>= 1.9.0) on top of Intel MKL (PR #3024)
      • enhancements
        • add support for allowing version mismatch + consider versionsuffix when creating .modulerc in ModuleRC easyblock (PR #3028)
      • updates
        • update WRF easyblock to correctly determine wrf_subdir for version >= 4.5.1 (PR #2997)
        • update sanity check in wxPython easyblock for version 4.2.0 (PR #3023)
      • changes
        • Install only SuiteSparse libraries with make install (PR #3004)
      • new easyblocks
      • EasyBuild 5.0 (to 5.0.x branch)
        • ...
    • easyconfigs (merged PRs)
      • over XXX easyconfig PRs were merged since last conf call
      • bug fixes
        • fix wrong version of, and missing, extensions in recent Perl easyconfigs (PR #18789)
        • use %(sysroot)s template in wget easyconfigs to define PKG_CONFIG_PATH (PR #19080)
        • add alternate checksum for OpenImageIO v2.4.14.0 (PR #19090)
        • enable -fPIC in easyconfig for libwebp 1.3.2 (PR #19098)
        • only set flag --enable-asmjit for PLUMED when installing on x86_64 (PR #19110)
        • ensure right Python version is used in DP3, WSClean and dependencies by specifying -DPython3_EXECUTABLE CMake option (PR #19119)
        • add patch to fix detection of newer Intel CPUs in OpenBLAS 0.3.20-0.3.23 (PR #19141)
        • remove outdated --disable-docs configure option from FriBidi-1.0.12 (PR #19147)
        • add libiconv dependency to gettext 0.22 (PR #19155)
        • fix OpenBLAS 0.3.20+ on newer Intel CPUs (PR #19159)
      • enhancements
        • also run easyconfigs test suite with Python 3.11 (PR #18009)
        • add sanity check commands for recent GDB versions (PR #19102)
      • (noteworthy) new software
        • ...
      • noteworthy software updates
        • Python-bundle-PyPI v2023.10 w/ GCCcore/13.2.0 (PR #19143)
      • changes
        • rename CVS to ConcurrentVersionsSystem PR #18985
      • EasyBuild 5.0 (to 5.0.x branch)
        • ...
  • work-in-progress
    • docs (open PRs + issues)
    • framework (open PRs + issues)
      • reported bugs / bug fixes
        • add optimal optimization flags for Intel compilers on AMD CPUs (issue #3793)
          • for AMD Genoa, we don't want to use -mavx2 since then we won't get AVX-512 instructions
        • fix support for Environment Modules as modules tool to pass unit tests with v4.2+ (PR #4369)
        • adapt module function check for Environment Modules v4+ (PR #4371)
      • enhancements
        • ...
      • changes
        • drop load storm safe guard for Environment Modules v4.2.4+ (PR #4373)
      • EasyBuild 5.0 (to 5.0.x branch)
        • change run_shell_cmd to store command output in temporary file(s) by default + pass RunShellCmdResult instance to RunShellCmdError RunShellCmdError (PR #4356)
    • easyblocks (open PRs + issues)
      • bug reports/fixes
        • fix extension filter for Perl packages (PR #2699)
          • easyconfigs PR #18789 is a big step towards merging this, but there are other easyconfigs that needs to be tested first, like XML-LibXML, worker, GD, ...
      • enhancements
        • deprecate unknown configure args in ConfigureMake easyblock (PR #3026)
      • updates
        • ...
      • new easyblocks
        • new custom easyblocks for Spparks and Stitch (PR #2948)
        • add generic CargoPythonBundle easyblock (PR #2964)
        • add new easyblock for HPCC and adapt HPL easyblock (PR #3009)
      • changes
        • ...
      • EasyBuild 5.0 (to 5.0.x branch)
        • enable download_dep_fail, use_pip, sanity_pip_check by default in PythonPackage easyblock (PR #3022)
          • needs some tests to make sure nothing is horribly broken
          • follow-up is needed in easyconfigs, to:
            • clean up easyconfigs in 5.0.x branch that now set use_pip & co to True
            • explicitly set use_pip & co to False in (non-archived) easyconfig that currently don't specify them at all (which should be a minimal set of easyconfigs)
        • update ConfigureMake easyblock to error out on unknown configure args (PR #3025)
    • easyconfigs (open PRs + issues)
      • bug fixes/reports
        • add patch to work around potential crash in PyTorch 1.13.1 caused by GCC 12 compiler bug (PR #19133)
      • enhancements
    • add test for duplicate PYTHONPATH in modextrapaths (PR #19061)
      • new software
        • ...
      • noteworthy software updates
        • PETSc 3.19.4 w/ foss/2023a (PR #18608)
        • PyTorch v1.13.1 w/ foss/2022b + CUDA 11.7.0 (PR #18853)
        • PyTorch v1.13.1 w/ foss/2022b + CUDA 12.0.0 (PR #18806)
        • PyTorch v2.0.1 w/ foss/2022b (PR #19067)
        • R-bundle-CRAN v2023.11 w/ foss/2023a (PR #19170)
          • requires R v4.3.1 with gfbf/2023a (PR #18221)
          • R should ideally have a minimal set of extensions, maybe only devtools and what it requires
            • is shiny really required by devtools? probably not
          • Sebastian is already looking into updating to R v4.3.2
      • changes
        • ...
      • EasyBuild 5.0 (to 5.0.x branch)
        • ...

2023b update of common toolchains

  • 2023b toolchains should be included in EasyBuild 4.9.0 release
    • candidate toolchains are merged, ready for more extensive testing of "big" apps
  • most significant change is jump to GCC 13.x
  • foss/2023.09 (PR #18886) - candidate for foss/2023b
    • GCC 13.2.0 + binutils 2.40
    • OpenMPI 4.1.6 (+ UCX 1.15.0, PMIx 4.2.6, libfabric 1.19.0)
    • FlexiBLAS 3.3.1 (+ OpenBLAS 0.3.24)
    • FFTW 3.3.10
    • ScaLAPACK 2.1.0
  • intel/2023.07 (PR #18439) - candidate for intel/2023b
    • GCC 13.2.0 + binutils 2.40
    • intel-compilers 2023.2.1
    • impi 2021.10.0
    • imkl 2023.2.0
  • testing
    • OSU-Micro-Benchmarks (foss in PR #18893)
    • SciPy-bundle (numpy, scipy)
    • GROMACS (C++)
    • OpenFOAM (C++)
      • requires ParaView, Qt5, etc.
      • should we keep building on top of ParaView (only needed for paraFoam utility)?
        • installing paraFoam stand-alone is a PITA
        • paraFoam isn't actually used when running OpenFOAM simulations
    • CP2K (Fortran)
    • check if Qt6 can be used
  • Mikael saw a strange compilation with GCC 13.2 for assimp (dep for Qt6)

Q&A

  • Jörg: Intel oneAPI compiler complaining about AMD CPU not supporting AVX2, even though it really does
    • Kurt: there's different compiler flags to enable AVX2, some involve CPU detection, some don't
      • see docs of HAWK system at HLRS
  • Adam: OK to add newer version of Bowtie2 for GCC/10.3.0?
Clone this wiki locally