Conference call notes 20210512 - easybuilders/easybuild GitHub Wiki
(back to Conference calls)
Notes on the 172nd EasyBuild conference call, Wednesday May 12th 2021 (08:00 UTC)
Attendees
Alphabetical list of attendees (16):
- Kenneth Hoste (HPC-UGent, Belgium)
- Lev Lafayette (Univ. of Melbourne)
- Thekla (Cyprus Institute)
- Minas Trattou (Cyprus Institute)
- Adam Huffman (Big Data Institute, Oxford, UK)
- Alan O'Cais (Jülich Supercomputer Centre, Germany)
- Jörg Saßmannshausen (NIHR Biomedical Research Centre, UK)
- Kurt Lust (Univ. of Antwerp, Belgium + LUMI User Support Team)
- Maxim Masserov (SURF, Netherlands)
- Miguel Dias Costa (Univ. of Singapore)
- Dinindu Senanayake (New Zealand eScience Infrastructure)
- Jorge Guerra (Universidad Politécnica de Madrid, Spain)
- Alexander Grund (TU Dresden, Germany)
- Alex Domingo (VUB, Belgium)
- Mikael Öhman (Chalmers University of Technology, Sweden)
- Sebastian Achilles (Jülich Supercomputing Centre, Germany)
- Simon Branford (University of Birmingham, UK)
Agenda
- update on recent developments
- progress update on 2021a version of common toolchains
- Q&A
Recent developments
- last release: EasyBuild v4.3.4 (April 9th)
- ETA next release: end of next week?
- probably v4.4.0
- due to inclusion of
2021atoolchains + some significant enhancements (hopefully)
- due to inclusion of
- project for next release: https://github.com/orgs/easybuilders/projects/13
- to maintainers: add issues/PRs you consider important there!
- see also
2021aproject (only easyconfigs): https://github.com/easybuilders/easybuild-easyconfigs/projects/2
- probably v4.4.0
- recent changes
- framework
- bug fixes
- don't skip sanity check for
--module-only --rebuild(PR #3645)- currently doesn't sanity check extensions
--module-only --forcestill skips sanity check
- re-enable write permissions when installing with
--read-only-installdir(PR #3649) - fix use of
--module-onlyon existing installations without write permissions (PR #3659)
- don't skip sanity check for
- enhancements
- changes
- move
disable_templatingfunction into theEasyConfigclass (PR #3668)- see also easyconfigs PR #12848
- move
- bug fixes
- easyblocks
- bug fixes
- enhancements
- don't unpack
whlfiles by default in genericPythonPackageeasyblock (PR #2366) - make it possible to force disabling kernel features in Qt easyblock (PR #2403)
- update imkl easyblock to support oneAPI versions (>= 2021.x) (PR #2407)
- allow 'default' versions to be defined by modulerc EasyBlock (PR #2418)
- don't unpack
- new software
- custom easyblock for installing
FlexiBLAS(PR #2369)
- custom easyblock for installing
- changes
- (none)
- easyconfigs
- over 75 easyconfig PRs merged since last conf call
- bug fixes
- add patch for rhdf5filters extension in Bioconductor 3.12 bundle to fix installation on aarch64 (PR #12836)
- enhancements
- add check to make sure that source step is not being skipped (PR #12807)
- skipping
sourcestep implies not verifying checksums, so should be avoided
- skipping
- add check to make sure that source step is not being skipped (PR #12807)
- cleanup
- remove '
unpack_sources = False' from recent easyconfigs that use a*.whlfile as source (PR #12783)
- remove '
- new software
- (nothing major?)
- noteworthy software updates
- OpenMPI 4.1.1 (PR #12566)
- OpenBLAS 0.3.15 (PR #12653)
- impi 2021.2.0 (PR #12766)
- PyTorch 1.8.1 with
foss/2020b(PR #12347)- PyTorch 1.8.1
fosscuda/2020bis WIP (PR #) - Alexander saw some failing tests on AMD EPYC systems with
foss/2020b - should we also have
eb --ignore-failing-testsnext toeb --skip-test-step? - first failing GPU test aborts the whole test suite...
- PyTorch 1.8.1
- noteworthy changes
- require
sanity_pip_checkfor all Python package/bundles (PR #12464)
- require
- framework
- to merge/fix/tackle soon
- framework
- bug fixes
- performance improvements for easyconfig parsing (PR #3555)
- error creating Cray toolchain modulefiles with Lua syntax (issue #3626)
- enhancements
- support additional features in easystack files
- support for filtering via labels (PR #3620)
- allow for overriding RPATH with higher priority paths (PR #3650)
- avoid using a priority in
prepend_module_path(Lmod) to avoid costly module calls (PR #3636) - add support for
postinstallcmdsfor extensions (PR #3663) - add support for
--sanity-check-only(PR #3655)- needs more work to ensure that sanity checks for extensions are also done when using
eb --sanity-check-only
- needs more work to ensure that sanity checks for extensions are also done when using
- add support for using oneAPI versions of 'intel' toolchain components (PR #3665)
- need to figure out how to correctly "switch" between
iccifortandintel-compilerin subtoolchains...
- need to figure out how to correctly "switch" between
- add support for installing extensions in parallel (WIP) (PR #3667)
- allow tweaking of ECs from different toolchains (PR #3669)
- mostly relevant for
--try-amend
- mostly relevant for
- recursive module unload with limited depth for Cray toolchains problem report (issue #3627)
- support additional features in easystack files
- changes
- deprecate adding a non-existing path to
$MODULEPATH(PR #3637)
- deprecate adding a non-existing path to
- bug fixes
- easyblocks
- bug fixes
- treat files/directories of unpacked sources equally in
PackedBinary(PR #2306) - use explicit build toolset and compiler path in Boost easyblock (PR #2402)
--module-onlydoesn't always work as expected- see issues #2397 (
Bundle), #2399 (GROMACS), PR #2401 (Tkinter) - and PRs that fixes those issues:
GROMACS(PR #2414),Tkinter(PR #2416) - we need a better way of catching this in tests
- problem is that you typically need an actual installation to catch these problems, so can't be done in easyconfigs or easyblocks test suite run in CI
- test installations done on
generosoviaboegelbotcould be enhanced to catch problems with--module-only?
- see issues #2397 (
- make sure OpenFOAM sanity checks don't requite builddir write permissions (PR #2415)
- treat files/directories of unpacked sources equally in
- enhancements
- enhance test and install step of
CMakePythonPackageeasyblock (PR #2318) - allow for Perl modules being part of other, already installed Perl modules (PR #2386)
- enhance Python easyblock: install pip2 when available, tweak defaults, create unversioned pip symlink (PR #2388)
- enhance BWA easyblock to copy includes and libraries (PR #2417)
- enhance test and install step of
- changes
- (none)
- new software
- bug fixes
- easyconfigs
- bug fixes
- come up with good solution for clash between
libnlandlibnl-3inlibfabric(cfr. issue #11939)- see also https://www.infradead.org/~tgr/libnl
- do we need to implement an easyblock for
libfabricthat can produce easy to understand error messages? libibverbs.solinks tolibnl-3.so, so includinglibnl-3as a proper EasyBuild dependency is not an option...- just require
libnl3-develas OS dependency? - prevent that
libfabricis built on top oflibnlby using configure option to disable that? - enhanced sanity check to capture early on that
libfabriclinks to bothlibnlandlibnl-3?
- add patches for PyTorch 1.7.1 avoiding failures on POWER and A100 (PR #12753)
- improve check for multi-variant dependencies per generation of easyconfigs (PR #12687)
- come up with good solution for clash between
- enhancements
- (nothing major)
- new software
- FlexiBLAS (PR #12476)
- software updates
- Python 3.9.5 with
GCCcore/10.3.0(PR #12755) - imkl 2021.1.1 (PR #12777)
- blocked by framework PR #3665
- Python 3.9.5 with
- bug fixes
- framework
2021a update of common toolchains
- outlook to component versions
foss/2021a- GCC 10.3 + binutils 2.36.1 (done, see PR #12521)
- OpenMPI 4.1.1 (done, see PR #12566)
- needs tweak to
libfabricto resolve issue Simon ran into? - looks related to issue #11939
- needs tweak to
- FlexiBLAS 3.0.4 + OpenBLAS 0.3.15
intel/2021a
- we should detect direct linking to OpenBLAS rather than FlexiBLAS in sanity check
- TODO (in
develop):- define a
foss/2021.04toolchain that's a candidate forfoss/2021a, using FlexiBLAS with OpenBLAS backend - evaluate by building applications like CP2K, SciPy-bundle, etc. on top
- define a
- collapsing
fossandfosscudatoolchains- see https://github.com/easybuilders/easybuild-easyconfigs/issues/12484
- we have a good way of handling this via an OpenMPI "plugin"
- to be installed via
gompi, on top of UCX+CUDA - Mikael is planning to look into tackling via UCX instead via their module system (with hardcoded stuff currently)
- introduce
$EBUCXPLUGINSenvironment variable to make it more dynamic - would be better to also supporting other MPI libraries in top of UCX like Intel MPI
- introduce
- to be installed via
fosscudawould be a supertoolchain offoss- what about
intelcuda?- do the same thing just for symmetry, unclear whether Intel MPI actually supports this functionality to leverage CUDA
- we won't really have a
fosscudatoolchain anymore- the OpenMPI CUDA plugin will just be a different dependency
- MPI+CUDA aware installations could be indicated via a
versionsuffix - or another hierarchy level (cfr. ComputeCanada)
Q&A
- (none)