-
Notifications
You must be signed in to change notification settings - Fork 144
Conference call notes 20220216
Kenneth Hoste edited this page Feb 16, 2022
·
6 revisions
(back to Conference calls)
Notes on the 191st EasyBuild conference call, Wednesday 16 Feb 2022 (16:00 UTC)
Alphabetical list of attendees (16):
- Sebastian Achilles (JSC, Germany)
- Erica Bianco (HPCNow!)
- Simon Branford (Univ. of Birmingham, UK)
- Alex Domingo (VUB, Belgium)
- Em Dragowsky (CWRU, US)
- Jasper Grimm (University of York, UK)
- Kenneth Hoste (HPC-UGent, Belgium)
- Adam Huffman (Big Data Institute, Oxford, UK)
- Kurt Lust (Univ. of Antwerpen - LUMI)
- Alan O'Cais (CECAM)
- Mikael Öhman (Chalmers University of Technology, Sweden)
- Bart Oldeman (ComputeCanada)
- Jurij Pečar (EMBL, Germany)
- Jörg Saßmannshausen
- Åke Sandgren (Umeå University, Sweden)
- Fotis Georgatos (EPFL, Switzerland)
- overview of recent developments
- broader testing (different OSs)
- updates on OpenMPI + CUDA, OpenMPI 5.x (?)
- Q&A
- release timeline
- latest release: EasyBuild v4.5.3 (11 Feb 2022)
- ETA next release: end of March'22?
- recent changes
-
framework
- bug fixes
- enhancements
-
changes
- ...
- easyblocks
-
easyconfigs
- ~125 easyconfig PRs merged since last conf call!
-
bug fixes
- update TALYS sources to (hopefully) ensure constant checksums (PR #14797)
- consistently apply patch for mapDamage 2.2.1 to use external seqtk (PR #14961)
- fix download URL in UDUNITS v2.2.28 easyconfigs (PR #14954)
- add missing graphite2 + HarfBuzz dependencies to Qt5 v5.15.2 (PR #14802)
- add additional valid checksums for
norm
andoptmatch
to recent R easyconfigs (PR # + PR #14993) - avoid pollution in the tmp directory when running the AlphaFold tests (PR #14989)
-
enhancements
- ...
-
(noteworthy) new software
- see also overview at https://github.com/easybuilders/easybuild-easyconfigs/issues?q=is%3Amerged+label%3Anew
- mujoco-py (PR #14776)
- PyTorch-Lightning (PR #14926)
- noteworthy software updates
- changes
- ...
-
framework
-
reported bugs / bug fixes
- stop relying on distutils (will no longer be available in Python 3.12) (issue #3963)
-
enhancements
- extend framework to enable modules to ship RPATH wrappers (issue #3918)
- add a "
clone_into
" field to git_config source specification (PR #3949) - drop into shell with full environment in case of failure (issue #3950)
- allow tweaking of easyconfigs from different toolchains (PR #3669)
- avoid uploading test reports when no easyconfigs are (re)built (PR #3957)
- add support for customizing '
*
' in output of --dry-run for (build) dependencies (PR #3962)
-
changes
- enable static analysis for python2.7 (PR #3725)
-
reported bugs / bug fixes
-
easyblocks
- bug fixes
- set
$NINJAFLAGS
to make sure Ninja doesn't use all visible cores when building Qt5 ([PR #2338[(https://github.com/easybuilders/easybuild-easyblocks/pull/2338))- so be done more generally in EasyBuild framework instead?
- perhaps only when
Ninja
is included as a build dependency?
- make sure TensorFlow doesn't see the
nvptx-none
dir when searching for gcc include dir (PR #2682) - make OpenSSL aware of host CA certs (issue #2674)
- set
- enhancements
-
updates
- update NEURON easyblock to use CMakeMake for recent versions (PR #2304)
- update IPP easyblock to support versions >= 2021.2 (PR #2672)
- update Clang-AOMP easyblock to add support for ROCm v5.0 (PR #2681)
- add fix_shebang to install_step of PythonPackage easyblock so that we can fix shebangs when installing extensions (PR #2680)
- new software
- ...
-
changes
- ...
- bug fixes
-
easyconfigs
- bug fixes
- R-4.1.2-foss-2021b.eb install failing (issue #15005)
- includes some suggested changes w.r.t. PROJ + NLopt that we should apply?
- R-4.1.2-foss-2021b.eb install failing (issue #15005)
- enhancements
- ...
-
new software
- see https://github.com/easybuilders/easybuild-easyconfigs/labels/new
- MPItrampoline (WIP) (PR #14607)
- Alan: using MPItrampoline as a toolchain component to replace OpenMPI should be relatively
- actually allowing switching to a different MPI library is a bit more complex, definitely needs a custom easyblock to install MPItrampoline wrapper libraries
- Mikael: building software that queries for CUDA support in OpenMPI on top of MPItrampoline is probably not going to work out (for example LAMMPS)
- unclear whether using MPItrampoline as a toolchain component will work well enough to be used in a common toolchain... maybe only opt-in where it makes sense?
- OpenAI-Gym (PR #14779)
- noteworthy software updates
- bug fixes
-
framework
- EasyBuild v4.5.2 was crashing hard on SLES-based OSs (fixed in EasyBuild v4.5.3)
- We should have caught this prior to the release of EasyBuild v4.5.2...
- Current testing is too focused on RHEL derivates (mainly CentOS 7 + Rocky Linux 8 currently)
- We should start using container images to test (selected?) contributions in more OS configurations
- Different distros + versions (CentOS, Rocky, Ubuntu, openSUSE, ...)
- Standard vs minimal vs fat configurations
-
standard
:g++
and other common packages installed in OS -
minimal
: only the bare minimum required by EasyBuild:python(3)
,module
,tar
,gzip
,bzip2
,patch
,make
, ... -
fat
: also packages that are often available in the OS, and are known to cause trouble sometimes (Boost
,cmake
, ...)
-
- This blows up the matrix of test configurations up a lot, so we have to make choices...
- on
generoso
(Rocky Linux 8): ~1.3TB of disk space used for ~5.1k software installations (excl. sources) - only use
standard
configuration for building compilers, otherwise useminimal
? - focus on CentOS 7 + Rocky 8 (all contributions)
- make testing with other OSs opt-in, or avoid blocking PRs in case of problems that are not easy to fix?
- on
- new repository: https://github.com/easybuilders/easybuild-containers
- starting point for testing EasyBuild in container images
-
Dockerfile
for different OSs - Docker images are built automatically through GitHub Actions
- can be consumed using Singularity, for example:
singularity shell docker://ghcr.io/easybuilders/opensuse-15.4
- only bare minimum of packages is installed: Python + Lmod
- more stuff definitely needs to be added:
tar
,patch
,make
, etc.
- TODO:
- set up container recipes for
standard
vsminimal
vsfat
- maybe generate container recipes to facilitate maintenance?
- set up container recipes for
-
foss
+ CUDA + UCX-CUDA apparently doesn't fully work as expected... - see easyconfigs issue #14801
- see upstream issue "
Specific OSU benchmarks segfault when non-CUDA aware OpenMPI 4.1.1 compiled with CUDA-aware UCX
" @ https://github.com/open-mpi/ompi/issues/9906 - Åke: working proof-of-concept patched OpenMPI @ https://github.com/easybuilders/easybuild-easyconfigs/pull/14919
- feedback wanted!
- this is just a starting point, also need
OpenMPI-CUDA
(will need a custom easyblock)
- Alexandre: support for skipping failing (tests for) extensions
- big hammer:
--skip-failing-exts
- would be useful for
R
: try installing all extensions, don't give up if one or more fail
- would be useful for
-
TensorFlow
andPyTorch
easyblocks should be made aware of--ignore-test-failure
- big hammer: