Conference call notes 20231025 - easybuilders/easybuild GitHub Wiki

(back to Conference calls)

Notes on the 232nd EasyBuild conference call, Wednesday 25 Oct 2023 (15:00 UTC)

Attendees

List of attendees (7):

  • Jasper Grimm (University of York, UK)
  • Adam Huffman (Big Data Institute, Oxford, UK)
  • Kurt Lust (UAntwerpen, Belgium + LUMI User Support Team)
  • Mikael Öhman (Chalmers University of Technology, Sweden)
  • Bart Oldeman (Digital Research Alliance of Canada)
  • Jörg Saßmannshausen (Imperial College London, UK)
  • Alexandre Strube (JSC, Geermany)

Agenda

  • overview of recent developments
  • Q&A

Recent developments

  • latest EasyBuild release: 4.8.1 (11 Sept 2023)
    • ETA for next EasyBuild release: end of Oct'23
      • Kenneth is working on preparing release as we speak...
    • ETA for EasyBuild 5.0 release: by the end of 2023 (?)
      • started doing short sprint meetings, each Monday at 10:00 CEST to set next 5 goals to tackle that week
  • easyconfigs merge sprint
    • done Mon 23 Oct'23
    • started at ~792 open easyconfig PRs
    • ended with ~720 open easyconfig PRs
    • there may be another easyconfigs merge sprint this year (early Dec?)
  • recent changes
    • docs (merged PRs)
    • framework (merged PRs)
      • bug fixes
        • ...
      • enhancements
        • ...
      • changes
        • ...
      • EasyBuild 5.0 (to 5.0.x branch)
        • improve error reporting for failing shell commands (and EasyBuild crashes) (PR #4351)
        • use 5.0.x branch for easyblocks + easyconfigs in CI workflows (for now) (PR #4358)
        • take into account that VERBOSE_VERSION imported from easybuild.easyblocks is now a string value (PR #4357)
    • easyblocks (merged PRs)
      • bug fixes
        • ...
      • enhancements
        • don't blindly overwrite -Dccflags + honour preconfigopts in Perl easyblock (PR #3010)
        • fix CMAKE_PREFIX_PATH in imkl easyblock (PR #3021)
      • updates
        • ...
      • changes
        • ...
      • new easyblocks
        • ...
      • EasyBuild 5.0 (to 5.0.x branch)
        • use LooseVersion from easybuild.tools in all easyblocks (PR #3018)
        • don't auto-enable use of -DSCOTCH_PTHREAD when using MPI library other than Intel MPI in SCOTCH easyblock (PR #3019)
    • easyconfigs (merged PRs)
      • over 100 easyconfig PRs were merged since last conf call
      • bug fixes
        • make sure Python dependency included for ESPResSo is actually used by specifying -DPYTHON_EXECUTABLE (PR #18963)
        • CMakeMake should be setting -DPython_EXECUTABLE & co (in EasyBuild 5.0)?
        • only add tbb as dependency in recent LAMMPS easyconfigs when installing on x86_64 (PR #19000)
        • detect the correct Python for vcflib (PR #19001)
        • fix invalid pointer access in UCX 1.11-1.14 (PR #19023)
        • disable threadedmpi in recent SCOTCH easyconfigs using gompi toolchain (PR #19024)
        • fix pybind11 incompatibility with some CUDA versions and add Catch2 dependency for tests (PR #19047)
        • add missing GSL dependency for casacore 3.4.0 (PR #19042)
      • enhancements
        • add patch for LIBSVM 3.30 to pass $CFLAGS + $LDFLAGS and run tests (PR #18454)
        • add patch to improve CUDA 11 compatibility of GCCcore/12.2.0 + GCCcore/12.3.0 (PR #18854)
        • don't disable building of third and fourth derivates in libxc 6.1.0 (PR #18467)
        • add patches to build Qt5 5.15.10 with Python 3 instead of Python 2.7 (PR #19045)
      • (noteworthy) new software
        • ...
      • noteworthy software updates
      • changes
      • 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
      • enhancements
      • changes
        • ...
      • EasyBuild 5.0 (to 5.0.x branch)
        • change run_shell_cmd to always store command output in temporary file(s) + pass RunShellCmdResult instance to RunShellCmdError (PR #4356)
          • needs work to fix broken tests
        • see also EasyBuild 5.0 sync meeting notes
    • easyblocks (open PRs + issues)
      • bug reports/fixes
        • fix extension filter for Perl packages (PR #2699)
        • 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
        • fix the blas/lapack name passed to meson when building scipy with MKL (PR #3024)
      • enhancements
        • ...
      • 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)
      • 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)
        • new easyblock for PALM (PR #3020)
      • changes
        • Install only SuiteSparse libraries with make install (PR #3004)
      • EasyBuild 5.0 (to 5.0.x branch)
        • enable download_dep_fail, use_pip, sanity_pip_check by default in PythonPackage easyblock (PR #3022)
    • easyconfigs (open PRs + issues)
      • bug fixes/reports
        • remove duplicated PYTHONPATH module entries (PR #13385)
      • enhancements
        • also run easyconfigs test suite with Python 3.11 (PR #18009)
        • requires rename of CVS easyconfigs (see PR #18985)
        • add test for duplicate PYTHONPATH in modextrapaths (PR #19061)
      • new software
        • ...
      • noteworthy software updates
      • changes
        • rename CVS to ConcurrentVersionsSystem (PR #18985)
      • EasyBuild 5.0 (to 5.0.x branch)
        • ...

2023b update of common toolchains

  • 2023b toolchains should be included in EasyBuild 4.9.0 release
    • probably not yet next release (4.8.2, ETA end Oct'23)
    • 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
      • binutils 2.41 came out July 31st, probably not worth the trouble updating that. It has some fixes for gprofng being able to deal with some DWARF 5 debugging constructs used by newer GCC, but otherwise 2.40 should suffice.
    • 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 (already done?)
    • 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

Q&A

  • Jörg: brotli: PR#18288 and PR#19070. This is an optional compression library that can be used by GnuTLS. In #19070 this is now explicitly disabled instead of accidentally picked up from the OS library, if available.
  • Jörg: wxPython for foss/2022a: easyblock PR#3023, which fixes a failed sanity check for wxPython 4.2.1:
    Sanity check failed: no file found at 'UNKNOWN/wx/libwx_baseu-3.1.so' in /sw-eb/software/wxPython/4.2.1-foss-2022a
    
    • Mysteriously the easyconfig passed all the tests in PR#18427. We should find out why.
      • edit (Kenneth): updated wxPython easyblock is only needed for wxPython 4.2.0+ if wxWidgets is a dependency for wxPython