-
Notifications
You must be signed in to change notification settings - Fork 144
Conference call notes 20231122
Kenneth Hoste edited this page Dec 6, 2023
·
2 revisions
(back to Conference calls)
Notes on the 234th EasyBuild conference call, Wednesday 22 Nov 2023 (16:00 UTC)
List of attendees (12):
- Simon Branford (Univ. of Birmingham, UK)
- Jasper Grimm (University of York, UK)
- Thomas Hoffman (EMBL, Heidelberg, Germany)
- Kenneth Hoste (HPC-UGent, Belgium)
- Adam Huffman (Big Data Institute, Oxford, UK)
- Kurt Lust (UAntwerpen, Belgium + LUMI User Support Team)
- Sébastien Moretti (SIB, Switzerland)
- Mikael Öhman (Chalmers University of Technology, Sweden)
- Bart Oldeman (Digital Research Alliance of Canada)
- Jure Peĉar (EMBL, Heidelberg, Germany)
- Jörg Saßmannshausen (Imperial College London, UK)
- Lars Viklund (Umeå University, Sweden)
- overview of recent developments
- 2023b update of common toolchains
- Q&A
- 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)
- easyblocks (merged PRs)
-
easyconfigs (merged PRs)
-
~75 easyconfig PRs were merged since last conf call
-
bug fixes
- patches for GCC 12.x
- add patch to work around potential crash in PyTorch 1.13.1 caused by GCC 12 compiler bug (PR #19133)
- only use ScaFaCos as dependency for LAMMPS 23Jun2022 on x86_64 (PR #19164)
- add pkgconf build dependency to libGLU (PR #19186)
- sidestep some build issues with CUDA-Samples 12.1 (PR #19189)
- make Pillow easyconfigs aware of sysroot template (PR #19226 + PR #19267)
- fix possible error/crash in NCCL on x86 due to cpuid (PR #19231)
- reduce timestep to fix sanity check commands in LAMMPS 23Jun2022 (PR #19246)
- replace format tag with explicit extension name in Optuna v3.0.3 (PR #19256)
- enhance easyconfigs for gnuplot 5.4.x to make sure that Lua dependency is always used (PR #19261)
- avoid indirect dependency on old CMake version built with
GCCcore/10.2.0
via Catch2 build dependency using system toolchain in recent pybind11 easyconfigs (PR #19270) - use existing patch in pybind11 2.6.2 and 2.7.1 to fix failing test due to extra whitespace (PR #19279)
- json-fortran creates Fortran modules, so must be at compiler level (PR #19283)
- see also easyconfigs issue #19287 + framework issue #4203
- Odd issue with
JULIA_DEPOT_PATH
makes ResistanceGA unusable (issue #19281)
-
enhancements
- ensuring Fortran modules do not end up at GCCcore (issue #19287)
- see also framework issue #4203
- ensuring Fortran modules do not end up at GCCcore (issue #19287)
-
(noteworthy) new software
- waLBerla v6.1 (PR #18932)
-
noteworthy software updates
- ...
-
changes
- ...
-
EasyBuild 5.0 (to
5.0.x
branch)- ...
-
-
docs (merged PRs)
- work-in-progress
-
docs (open PRs + issues)
- project board to perform yearly review cycle of all documentation pages: https://github.com/orgs/easybuilders/projects/17/views/1
- update common toolchains (PR #229)
- restructure documentation on EasyBuild v5.0 (PR #230)
- introduce role-focused landing pages (PR #231)
-
framework (open PRs + issues)
-
reported bugs / bug fixes
- 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)
- fix
LIBBLAS_MT
for FlexiBLAS, ensure-lpthread
is included (PR #4379) - eliminate duplicate multideps from generated module files (PR #4386)
- relax major version match regex in
find_related_easyconfigs
(PR #4385)
-
enhancements
- ...
-
changes
- drop load storm safe guard for Environment Modules v4.2.4+ (PR #4373)
-
EasyBuild 5.0 (to
5.0.x
branch)- deprecate failure to resolve a template value (PR #3285)
-
reported bugs / bug fixes
-
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
, ...
-
easyconfigs PR #18789 is a big step towards merging this, but there are other easyconfigs that needs to be tested first, like
- fix extension filter for Perl packages (PR #2699)
- enhancements
- updates
- new easyblocks
-
changes
- ...
-
EasyBuild 5.0 (to
5.0.x
branch)- enable
download_dep_fail
,use_pip
,sanity_pip_check
by default inPythonPackage
easyblock (PR #3022)- needs some tests to make sure nothing is horribly broken (but should be fine)
- follow-up is needed in easyconfigs, to:
- clean up easyconfigs in
5.0.x
branch that now setuse_pip
& co toTrue
- explicitly set
use_pip
& co toFalse
in (non-archived) easyconfig that currently don't specify them at all (which should be a minimal set of easyconfigs)
- clean up easyconfigs in
- update
ConfigureMake
easyblock to error out on unknown configure args (PR #3025)
- enable
- bug reports/fixes
-
easyconfigs (open PRs + issues)
- bug fixes/reports
- fix build of Rust 1.70.0 by disabling download of pre-built LLVM (PR #19264)
- patch setup.py for grpcio extension in TensorFlow 2.13.0 easyconfigs to take into account alternate sysroot (PR #19268)
- move cmake options to easyblock and support customizing cmake_options for SuiteSparse-7.1.0 (PR #19177)
- enhancements
- add test for duplicate
$PYTHONPATH
inmodextrapaths
(PR #19061)
- add test for duplicate
-
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) - PYTorch v2.1.0 w/
foss/2022b
(PR #19087) - R-bundle-CRAN v2023.11 w/
foss/2023a
(PR #19170)- requires R v4.3.2 with
gfbf/2023a
(PR #19185) - R should ideally have a minimal set of extensions, maybe only
devtools
and what it requires- is
shiny
really required bydevtools
?probably notyes it is :man-facepalming:
- is
- requires R v4.3.2 with
- PETSc 3.19.4 w/
- changes
- ...
-
EasyBuild 5.0 (to
5.0.x
branch)- ...
- closed PRs
- dead end for TensorFlow v2.13.0 w/ CUDA 12.1.1
w/
foss/2023a
(PR #19182)
- dead end for TensorFlow v2.13.0 w/ CUDA 12.1.1
w/
- bug fixes/reports
-
docs (open PRs + issues)
-
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 forfoss/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 forintel/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)
- keep an eye out for need for
CargoPythonBundle
- keep an eye out for need for
- 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)
- latest NCCL does not support GCC 13.x yet, but next patch release should
- CUDA 12.3.0 should support GCC 13.2.0
- releasing 2023b implies deprecating 2020b
- that means no more need for Intel license server to test PRs... \o/
-
https://community.intel.com/t5/Blogs/Tech-Innovation/Tools/Deprecation-of-The-Intel-Fortran-Compiler-Classic-ifort/post/1541699
- Jörg is attending Intel oneAPI workshop on Mon 27 Nov'23
- questions welcome!
- ifort is deprecated in 2024.x releases, will be removed in first 2025 release
- changes needed in intel-compilers/impi/imkl easyblocks:
- "latest" symlink changed from 2024.0.0 to 2024.0: can either
- resolve symlink; we already do that for tbb
- check for 2024 with LooseVersion, then
'.'.join(version.split('.')[:2])
- use 2024.0 as version in the easyconfigs, or
- use "latest" directly
Note: Intel's example modules/setvars scripts resolve the symlink using https://wiki.tcl-lang.org/page/file+normalize and
pwd -P
, respectively.
- same goes for latest Intel MPI 2021.11 (?) and latest Intel MKL (2024.0.0?)
- other option could be to reinstate
2024.0.0
symlink tolatest
?
- all compiler binaries in bin (no more bin/intel64)
- remove sanity check for icc/icpc
- compiler/2023.2.1/linux -> compiler/2024.0/
- "tools" and "interfaces" moved to "share/mkl" for MKL
- MPI module files moved to "include/mpi"
- need to use mpiicx instead of mpiicc in MPI test
- makefile for FFTW-MPI interfaces needs to use mpiicx or mpicc -cc=icx instead of mpiicc
- may not be needed, EB sets I_MPI_CC=icx already, but reported on Slack.
- review optional aliases for mpicc and friends, dead symlinks, etc.
- "latest" symlink changed from 2024.0.0 to 2024.0: can either
- framework: use oneapi: true by default for 2024+ (incl. Fortran?) ifx wasn't ready for prime time in 2023, particularly for complex numbers (see LAPACK tests e.g. https://github.com/Reference-LAPACK/lapack/pull/898)
- Intel removes older compilers from download
- changes needed in intel-compilers/impi/imkl easyblocks:
- Jörg is attending Intel oneAPI workshop on Mon 27 Nov'23
- (Bart) for OpenFOAM(.com):
- CGAL depends on GMP/MPFR (but deps are missing)
- easyconfigs test suite should be updated to signal need for
CargoPythonPackage
(orCargoPythonBundle
)- Rust (build) dep + easyblock that derives from
PythonBundle
- Rust (build) dep + easyblock that derives from
- Jure: any experiences with building SYCL software?
- GROMACS is starting to get support for SYCL
- hipSYCL (renamed, now
openSYCLAdaptiveCpp) is being recommended for GROMACS - we have (old) hipSYCL easyconfigs
- other option is Intel oneAPI (which has builtin support for SYCL)
- there be dragons here due to mixing of compilers
- see also AdaptiveCpp easyconfig used in LUMI
- Jörg may be contributing things related to Intel Xe GPUs soon
- Codeplay's commercial products supports Intel Xe, NVIDIA, AMD GPUs
- Jure: experiences with EPYC Bergamo
- sambamba genomic tool crashes, which works fine on Genoa
- floating-point exception
- implemented in D language
- D compiler is crashing when running it on Bergamo
- D language runtime is doing CPU ID detection, which has a bug...
- probably related to cache size?
- building D compiler from source requires a working D compiler...
- see https://issues.dlang.org/show_bug.cgi?id=24254
- AMD Datacenter Launch event on 6 Dec'23