Skip to content

Commit

Permalink
Merge pull request #20799 from easybuilders/4.9.x
Browse files Browse the repository at this point in the history
release EasyBuild v4.9.2
  • Loading branch information
migueldiascosta authored Jun 11, 2024
2 parents 78ff6e9 + 25ebc49 commit d25a161
Show file tree
Hide file tree
Showing 720 changed files with 42,248 additions and 680 deletions.
122 changes: 121 additions & 1 deletion RELEASE_NOTES
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,130 @@ For more detailed information, please see the git log.

These release notes can also be consulted at https://docs.easybuild.io/en/latest/Release_notes.html.

The latest version of easybuild-easyconfig provides 19,487 easyconfig files, for 3,470 different software packages,
The latest version of easybuild-easyconfig provides 19,985 easyconfig files, for 3,552 different software packages,
incl. 40 different (compiler) toolchains.


v4.9.2 (12 June 2024)
---------------------

update/bugfix release

- added easyconfigs for foss/2024.05 toolchain (candidate for foss/2024a) (#20646)
- added example easyconfig files for 82 new software packages:
- AEDT (#20357), amdahl (#20346), AMGX (#20255), assembly-stats (#20281), Bio-FeatureIO (#20461),
bitshuffle (#20661), Cassiopeia (#20289), CCCL (#20255), charm-gems (#20327), CheckM2 (#20399),
chromVARmotifs (#20402), cmph (#20278), COMEBin (#20717), Compass (#20500), ctffind5 (#20669), currentNe (#20791),
CVX (#20231), deepfold (#20247), dotNET-Core (#20256), EasyMocap (#20446), ensmallen (#20485), EVcouplings (#20744),
Faiss (#19669), FDMNES (#20321), gnupg-bundle (#20406), grpcio (#20191), hatch-jupyter-builder (#20606),
hevea (#20597), HiGHS (#20186), hmmcopy_utils (#20472), HOMER (#20590), ICON (#20573), jiter (#20746),
LangChain (#20746), langchain-anthropic (#20746), libabigail (#20539), libbraiding (#20655), libhomfly (#20482),
libsupermesh (#20470), LIBSVM-MATLAB (#20752), Lightning (#19964), lil-aretomo (#20696), makefun (#20619),
MetalWalls (#20403), MICOM (#20186), ml-collections (#20247), ml_dtypes (#20707), mlpack (#20485), MOFA2 (#20538),
mumott (#20719), nvitop (#20512), ocamlbuild (#20552), optiSLang (#20320), orthAgogue (#20278), pdf2docx (#20416),
planarity (#20753), plantri (#20467), plmc (#20744), PortAudio (#20307), premailer (#20348), ProteinMPNN (#20705),
PRRTE (#20698), PSM2 (#20496), PyAEDT (#20357), pybind11-stubgen (#20518), PyEXR (#19983), pyGAM (#20385),
PyHMMER (#20544), pyseer (#20502), PyVista (#20649), qmflows (#20384), SciTools-Iris (#20767), SCReadCounts (#20455),
SDL2_gfx (#20466), subunit (#20412), TF-COMB (#20666), tiktoken (#20336), TorchIO (#20648), t-SNE-CUDA (#19669),
VAMPIRE-ASM (#20368), wfdb (#20521), WGDgc (#20367)
- added additional easyconfigs for various supported software packages, including:
- 4ti2 1.6.10, AFNI 24.0.02, Autoconf 2.72, Autotools 20231222, adjustText 1.1.1, aiohttp 3.9.5, alevin-fry 0.9.0,
alsa-lib 1.2.9, atropos 1.1.32, autopep8 2.2.0, BCFtools 1.19, BLIS 1.0, BWA 0.7.18, Boost 1.85.0, bcrypt 4.1.3,
binutils 2.42, bokeh 3.4.1, CGAL 5.6.1, CREST 3.0.1, CellRanger-ARC 2.0.2, CellRanger 8.0.1, CellRank 2.0.2,
Clang 17.0.6, CoCoALib 0.99850, Cython 3.0.10, cURL 8.7.1, cffi 1.16.0, code-server 4.89.1,
configurable-http-proxy 4.6.1, coverage 7.4.4, cpio 2.15, cppyy 3.1.2, cysignals 1.11.4, Doxygen 1.11.0,
dask-labextension 7.0.0, dask 2024.5.1, deal.II 9.5.2, dorado 0.5.3, dotNET-Core 8.0.203, E-ANTIC 2.0.2,
ECL 24.5.10, ESPResSo 4.2.2, eclib 20240408, expat 2.6.2, FLTK 1.3.9, FMM3D 1.0.4, FlexiBLAS 3.4.4, f90wrap 0.2.13,
fgbio 2.2.1, fontconfig 2.15.0, freetype-py 2.4.0, GAMESS-US 20220930-R2 + 20230930-R2, GCC 13.3.0 + 14.1.0,
GDB 14.2, GDRCopy 2.4.1, GOATOOLS 1.4.5, GTDB-Tk 2.4.0, Giza 1.4.1, gc 8.2.6, gcloud 472.0.0, gemmi 0.6.5,
gettext 0.22.5, giac 1.9.0-99, git 2.45.1, gmsh 4.12.2, gsutil 5.29, HDDM 0.9.9, HTSlib 1.19.1, HyPhy 2.5.60,
h5py 3.11.0, hwloc 2.10.0, ICU 75.1, IOR 4.0.0, imagecodecs 2024.1.1, imgaug 0.4.1, ipympl 0.9.4,
Jupyter-bundle 20240522, JupyterHub 4.1.5, JupyterLab 4.2.0, JupyterNotebook 7.2.0, jupyter-matlab-proxy 0.12.2,
jupyter-resource-usage 1.0.2, jupyter-rsession-proxy 2.2.0, jupyter-server-proxy 4.1.2, jupyter-server 2.14.0,
Kalign 3.4.0, KrakenUniq 1.0.4, kallisto 0.50.1, LAPACK 3.12.0, libarchive 3.7.4, libde265 1.0.15, libdeflate 1.20,
libdwarf 0.9.2, libfabric 1.21.0, libffi 3.4.5, libgcrypt 1.10.3, libgpg-error 1.48, libheif 1.17.6, libidn2 2.3.7,
libnsl 2.0.1, libpciaccess 0.18.1, libpng 1.6.43, libuv 1.48.0, libxml2 2.12.7, line_profiler 4.1.2, MATSim 15.0,
MDTraj 1.9.9, Mako 1.3.5, Meson 1.4.0, MetaMorpheus 1.0.5, Molpro 2024.1.0, MuJoCo 3.1.4, matlab-proxy 0.18.1,
mold 2.31.0, mpmath 1.3.0, NASM 2.16.03, NanoPlot 1.42.0, Nextflow 24.04.2, Ninja 1.12.1, nanoget 1.19.1,
napari 0.4.19.post1, nauty 2.8.8, ncurses 6.5, nghttp2 1.58.0, nghttp3 1.3.0, nglview 3.1.2, ngtcp2 1.2.0,
nodejs 20.13.1, numactl 2.0.18, nvtop 3.1.0, OCaml 5.1.1, OSU-Micro-Benchmarks 7.4, OpenBLAS 0.3.27, OpenMPI 5.0.3,
PARI-GP 2.15.5, PCRE2 10.43, PMIx 5.0.2, Perl 5.38.2, PhyML 3.3.20220408, PnetCDF 1.13.0, PyAMG 5.1.0,
PyQtGraph 0.13.7, PyTorch-Geometric 2.5.0, PyTorch-bundle 2.1.2, PycURL 7.45.3, Pysam 0.22.0, Python 3.12.3,
p11-kit 0.25.3, p4est 2.8.6, parallel 20240322, pauvre 0.2.3, petsc4py 3.20.3, pkgconf 2.2.0, plc 3.10, polars 0.20.2,
poppler 24.04.0, psutil 5.9.8, py3Dmol 2.1.0, pybedtools 0.9.1, pygame 2.5.2, pyiron 0.5.1, pyro-ppl 1.9.0,
python-mujoco 3.1.4, ROOT 6.30.06, RPostgreSQL 0.7-6, RStudio-Server 2023.12.1+402, Rtree 1.2.0, Rust 1.78.0,
SAMtools 1.19.2, SCOTCH 7.0.4, SDL2_image 2.8.2, SDL2_mixer 2.8.0, SDL2_ttf 2.22.0, SQLite 3.45.3, SWIG 4.2.1,
SentencePiece 0.2.0, Seurat 5.1.0, SeuratDisk 20231104, SimNIBS 4.0.1, Singular 4.4.0, Spack 0.21.2, Squidpy 1.4.1,
SymEngine-python 0.11.0, SymEngine 0.11.2, sbt 1.6.2, scikit-build-core 0.9.3, scikit-learn 1.4.2, TOBIAS 0.16.1,
Tcl 8.6.14, TensorFlow 2.15.1, Transformers 4.39.3, texlive 20230313, tmux 3.4, tokenizers 0.15.2, 0.2.5.20231120,
tornado 6.4, UCC 1.3.0, UCX 1.16.0, util-linux 2.40, VSCode 1.88.1, Valgrind 3.23.0, VisPy 0.14.1, wget 1.24.5,
XZ 5.4.5, xorg-macros 1.20.1, xprop 1.2.7, xtb 6.7.0, xxd 9.1.0307, yaml-cpp 0.8.0, zarr 2.17.1, zfp 1.0.1,
zlib-ng 2.1.6, zlib 1.3.1, zstd 1.5.6
- minor enhancements, including:
- add missing (optional) dependency pyproject-metadata to scikit-build-core (#20391)
- add hatch-requirements-txt extension to hatchling easyconfigs (#20389)
- install pkg-config files for ncurses 6.4 when using GCCcore toolchain (#20405)
- use regular 'configure' instead of wrapper script for recent UCX easyconfigs (#20428)
- add RISC-V support to UCX 1.15.0 (#20429), UCC 1.2.0 (#20432), BLIS 0.9.0 (#20468), PAPI 7.1.0 (20659)
- add extensions to R-bundle-CRAN v2023.12: cmna (#20445), rhandsontable (#20614), XBRL (#20506)
- add checksum for RISC-V version to easyconfig for Java 21.0.2 (#20495)
- remove 'TORCHVISION_INCLUDE' from PyTorch-bundle easyconfigs, now handled by custom easyblock for torchvision (#20504)
- add dependencies required for GUI in Cellpose 2.2.2 easyconfigs (#20620)
- add 'build_info_msg' about kernel modules to GDRCopy (#20641)
- build both static and shared libs for Brotli 1.1.0 (#20757)
- various bug fixes, including:
- add missing dependencies for funannotate (#17690)
- fix path to SuiteSparse include/lib in easyconfig for CVXopt v1.3.1 (#20232)
- fix Highway 1.0.3 on some systems by disabling 'AVX3_DL' (#20298)
- replace incorrect scikit-bio 0.5.9 with scikit-bio 0.6.0 as dependency for scCODA (#20300)
- add alternate checksum to OpenMolcas v23.06 (#20301)
- change arrow-R dependency of Bioconductor v3.18 to v14.0.1 (which depends on required matching Arrow v14.0.1) (#20324)
- fix hardcoded '/bin/mv' path in Rhdf5lib extension included in R-bundle-Bioconductor v3.16 + v3.18 (#20378)
- remove dependency on HDF5 in recent Bioconductor easyconfigs (#20379)
- make sure that libjpeg-turbo libraries are installed in 'lib' subdirectory (#20386)
- add patch for Libint 2.7.2 to fix compiler error with glibc >= 2.34 (#20396)
- use 'bash' rather than 'sh' to run PLINK-2.00a3.7 tests (#20404)
- add patch to fix 'UNPACK-OPAL-VALUE: UNSUPPORTED TYPE 33 FOR KEY' error in OpenMPI 4.1.5 (#20422)
- add patch to increase compatibility with AVX512 platforms for bwa-mem2 v2.2.1 (#20434)
- add patch for GROMACS 2024.1 to fix filesystem race in tests (#20439)
- demote poetry to build dependency for nanocompore (#20453)
- add patch to fix CVE-2024-27322 in R v3.6.x (#20464), v4.0.x (#20463), and v4.1.x + v4.2.x + v4.3.x (#20462)
- disable test that fetches from the web for torchtext extension in PyTorch-bundle v2.1.2 (#20484)
- fix sanity check paths for JupyterLab 4.0.5 (#20514)
- fix detection of CC/CXX compilers for 'wmake' in OpenFOAM v2306 + v2312 (#20517)
- use the included gmxapi for GROMACS 2024.1 (#20522)
- add new checksum for signal_1.8-0 to R-bundle-CRAN-2023.12 (#20527)
- fix test in Cwd extension of Perl-bundle-CPAN 5.36.1 (#20536)
- fix patch name in easyconfig for Perl-bundle-CPAN 5.36.1 + add also use it for Perl-bundle-CPAN 5.38.0 (#20540)
- fix cwd_enoent test in Perl (#20541)
- move dependency on BeasutifulSoup in IPython v8.14.0 to jupyter-server (#20547)
- remove dependency on BeasutifulSoup from IPython v8.17.2 (#20548)
- add alternative checksum for source tarball of MONAI 1.3.0 (#20618)
- add cpio as build dependency to recent BLAST+ versions (#20674)
- add --disable-htmlpages to recent FFmpeg easyconfigs (#20686)
- remove duplicate crates from easyconfig for timm-0.9.7 (#20687)
- add missing HDF5 dependency in recent Armadillo easyconfigs (>= 11.4.3) (#20710)
- add patches for failing LAPACK tests and RISC-V test segfaults to OpenBLAS 0.3.27 (#20745)
- move all easyconfigs for libavif to GCCcore toolchain + fix dependencies (#20747)
- make sure mummerplot can use gnuplot if available for recent MUMmer (#20749)
- prevent configure script of recent BLAST+ versions from prepending system paths to $PATH (#20751)
- fix fastparquet v2023.4.0 using CargoPythonBundle easyblock (#20775)
- remove --with-64 from configopts for recent BLAST+ versions (#20784)
- add patch to fix build of pdsh 2.34 with Slurm 23.x (#20795)
- other changes:
- move 'build' from extensions to dependencies in easyconfig for napari 0.4.18 (#20433)
- update version of fsspec extension in easyconfig for Squidpy 1.4.1 to be compatible with s3fs provided via PyTorch-bundle (#20477)
- add commented out PSM2 dependency, relevant for x86_64 systems with OmniPath, to recent libfabric easyconfigs (#20501, #20585, #20794)
- replace SQLAlchemy extension with regular dependency in easyconfig for Optuna v3.5.0 (#20510)
- replace SQLAlchemy extension in JupyterHub v4.0.2 easyconfig with regular dependency (#20511)
- bump Cython to v3.0.8 in Cartopy v0.22.0 easyconfig for foss/2023a toolchain, to avoid dependency version conflict with sckit-learn v1.4.2, which requires Cython >= v3.0.8 (#20525)
- change dependency on hatchling of BeautifulSoup v4.12.2 to a build dependency (#20546)
- bump async-timeout to 4.0.3 in aiohttp 3.8.5 (#20553)
- stick to gfbf/2023a as toolchain for ipympl v0.9.3 (#20586)
- rename tornado-timeouts.patch to tornado-6.1_increase-default-timeouts.patch + add missing authorship (#20587)
- remove easyconfigs for CellBender v0.3.1, since this version has been redacted due to a serious bug (#20722)


v4.9.1 (5 April 2024)
---------------------

Expand Down
30 changes: 30 additions & 0 deletions easybuild/easyconfigs/0/4ti2/4ti2-1.6.10-GCC-13.2.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
easyblock = 'ConfigureMake'

name = '4ti2'
version = '1.6.10'

homepage = 'https://4ti2.github.io/'
description = """A software package for algebraic, geometric and combinatorial problems on linear spaces"""

toolchain = {'name': 'GCC', 'version': '13.2.0'}

github_account = '4ti2'
source_urls = [GITHUB_SOURCE]
sources = ['Release_%s.tar.gz' % '_'.join(version.split('.'))]
checksums = ['2f1bce3203da65b651d68cbd0ace0f89a16d1f436cf5f24e22bc15ec22df936a']

dependencies = [
('GMP', '6.3.0'),
('GLPK', '5.0'),
]

builddependencies = [('Autotools', '20220317')]

preconfigopts = './autogen.sh && '

sanity_check_paths = {
'files': ['bin/%s' % x for x in ['4ti2gmp', '4ti2int32', '4ti2int64']],
'dirs': ['include/4ti2', 'lib', 'share']
}

moduleclass = 'math'
16 changes: 16 additions & 0 deletions easybuild/easyconfigs/a/AEDT/AEDT-2024R1.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name = 'AEDT'
version = '2024R1'

homepage = 'https://www.ansys.com/products/electronics'
description = """The Ansys Electronics Desktop (AEDT) is a platform that enables
true electronics system design. AEDT provides access to the Ansys gold-standard
electromagnetics simulation solutions such as Ansys HFSS, Ansys Maxwell, Ansys Q3D
Extractor, Ansys SIwave, and Ansys Icepak using electrical CAD (ECAD) and mechanical
CAD (MCAD) workflows."""

toolchain = SYSTEM

sources = ['ELECTRONICS_%(version)s_LINX64.tgz']
checksums = ['7b131adf981ebca1e2f4fe8e607e50323167b69e77180a0ab61b2759d57abca5']

moduleclass = 'phys'
67 changes: 67 additions & 0 deletions easybuild/easyconfigs/a/AFNI/AFNI-24.0.02-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,67 @@
# Updated to version 24.0.02
# Author: J. Sassmannshausen (Imperial College London/UK)

easyblock = 'CMakeMake'

name = 'AFNI'
version = '24.0.02'

homepage = 'http://afni.nimh.nih.gov/'
description = """AFNI is a set of C programs for processing, analyzing, and displaying functional MRI (FMRI) data -
a technique for mapping human brain activity."""

toolchain = {'name': 'foss', 'version': '2023a'}
toolchainopts = {'openmp': True, 'pic': True}

source_urls = ['https://github.com/afni/afni/archive/']
sources = ['AFNI_%(version)s.tar.gz']
checksums = ['2915ed5bf98712abe3373bfc285f946fdee6cf1367e23ba80575dd6eedb3529a']

builddependencies = [
('CMake', '3.26.3'),
]

dependencies = [
('tcsh', '6.24.10'),
('Python', '3.11.3'),
('X11', '20230603'),
('motif', '2.3.8'),
('R', '4.3.2'),
('PyQt5', '5.15.10'),
('expat', '2.5.0'),
('libpng', '1.6.39'),
('libjpeg-turbo', '2.1.5.1'),
('GSL', '2.7'),
('GLib', '2.77.1'),
('zlib', '1.2.13'),
('freeglut', '3.4.0'),
('Pillow', '10.0.0'),
('matplotlib', '3.7.2'),
('SciPy-bundle', '2023.07'),
('Xvfb', '21.1.8'),
('FFmpeg', '6.0'), # required for running the program
]

# Make sure stuff does not get installed in .local
configopts = '-DSTANDARD_PYTHON_INSTALL=OFF '

# Changing permissions of some files
postinstallcmds = ['chmod a+x %(installdir)s/bin/afni_system_check.py ;']
postinstallcmds += ['chmod a+x %(installdir)s/bin/uber_subject.py ; ']
postinstallcmds += ['chmod a+x %(installdir)s/bin/init_user_dotfiles.py ; ']
# Copying apparently missing files over
postinstallcmds += ['cp -f %(start_dir)s/src/discoraj/ClusterExplorer/ClustExp_HistTable.py %(installdir)s/bin ; ']
postinstallcmds += ['cp -f %(start_dir)s/src/discoraj/ClusterExplorer/ClustExp_StatParse.py %(installdir)s/bin ; ']
postinstallcmds += ['cp -rf %(start_dir)s/src/scripts_for_r %(installdir)s/bin ; ']
postinstallcmds += ['cp -rf %(start_dir)s/src/R_scripts %(installdir)s/bin/scripts_for_r ; ']

sanity_check_commands = ["afni -help"]

sanity_check_paths = {
'files': ['bin/afni', 'lib/libgts.%s' % SHLIB_EXT, 'lib/libnifti2.%s' % SHLIB_EXT],
'dirs': ['include', 'share'],
}

modextrapaths = {'PATH': ['bin/scripts_for_r']}

moduleclass = 'bio'
114 changes: 114 additions & 0 deletions easybuild/easyconfigs/a/AMGX/AMGX-2.4.0-foss-2023a-CUDA-12.1.1.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,114 @@
easyblock = 'CMakeMake'

name = 'AMGX'
version = '2.4.0'
versionsuffix = '-CUDA-%(cudaver)s'

homepage = 'https://github.com/NVIDIA/AMGX'

description = """Distributed multigrid linear solver library on GPU"""
toolchain = {'name': 'foss', 'version': '2023a'}
toolchainopts = {'openmp': True}

github_account = 'NVIDIA'
source_urls = [GITHUB_SOURCE]
sources = ['v%(version)s.tar.gz']
patches = [
'AMGX-%(version)s_external-thrust.patch',
'AMGX-%(version)s_fix-openmp-linking.patch',
]
checksums = [
{'v2.4.0.tar.gz': 'b030b8c2e58c4c9987444e5d28fd61e1c5dcd65d484a290d6a18ae0bc5c0e9db'},
{'AMGX-2.4.0_external-thrust.patch': '90e4be09615a26bd7ebce68ced63d9d3b52141f7b480e8cedb17b05003656e16'},
{'AMGX-2.4.0_fix-openmp-linking.patch': '10046d5d9fff48cb4902797525d43963855c4834f262bdc3c341bbc2cb1f6f76'},
]

builddependencies = [
('CMake', '3.26.3'),
]

dependencies = [
('CUDA', '12.1.1', '', SYSTEM),
('UCX-CUDA', '1.14.1', versionsuffix),
('magma', '2.7.2', versionsuffix),
('CCCL', '2.3.0', versionsuffix),
]

cuda_compute_capabilities = ['7.0', '8.0', '9.0'] # AMGX defaults for CUDA 12

configopts = '-DCUDA_ARCH="%(cuda_cc_cmake)s" '

# Can't run all tests (55 failing); many fail due to mixed precision not being supported
# some fail due to missing external data files, many unknown issues
# All tests can be attempted with "amgx_tests_launcher --all"
local_tests = [
'AggregatesCoarseGeneratorTest',
'AggregatesCoarseningFactor',
'AggregatesDeterminism',
'AggregatesDiagonalOutside',
'AmgLevelsReuse',
'CAPIFailure',
'CAPIVersionCheck',
'ClassicalStrengthAffinityTest',
'ClassicalStrengthTest',
'ConfigStringParsing',
'CsrMultiplyTests_Poisson27_100_100',
'CsrMultiplyTests_Poisson27_10_10',
'CsrMultiplyTests_Poisson5_100_100',
'CsrMultiplyTests_Poisson5_10_1',
'CsrMultiplyTests_Poisson7_100_100',
'CsrMultiplyTests_Poisson7_10_10',
'CsrMultiplyTests_Poisson9_100_100',
'CsrMultiplyTests_Poisson9_10_10',
'CsrSparsityILU1Tests_Poisson27_100_100',
'CsrSparsityILU1Tests_Poisson27_10_10',
'CsrSparsityILU1Tests_Poisson5_100_100',
'CsrSparsityILU1Tests_Poisson5_10_10',
'CsrSparsityILU1Tests_Poisson7_100_100',
'CsrSparsityILU1Tests_Poisson7_10_10',
'CsrSparsityILU1Tests_Poisson9_100_100',
'CsrSparsityILU1Tests_Poisson9_10_10',
'CsrSparsityTests_Poisson27_100_100',
'CsrSparsityTests_Poisson27_10_10',
'CsrSparsityTests_Poisson5_100_100',
'CsrSparsityTests_Poisson5_10_10',
'CsrSparsityTests_Poisson7_100_100',
'CsrSparsityTests_Poisson7_10_10',
'CsrSparsityTests_Poisson9_100_100',
'CsrSparsityTests_Poisson9_10_10',
'DenseLUSolverTest_Factorization_Id_256',
'DenseLUSolverTest_Factorization_Id_32',
'DenseLUSolverTest_Solve_Id_256',
'DenseLUSolverTest_Solve_Id_32',
'DenseLUSolverTest_Solve_Poisson3D',
'FactoriesTest',
'FGMRESConvergencePoisson',
'GenericSpMVTest',
'IDRConvergencePoisson',
'IDRmsyncConvergencePoisson',
'LargeMatricesSupport',
'LowDegDeterminism',
'MatrixTests',
'MatrixVectorMultiplyTests',
'MinMaxColoringTest',
'Nested_AMG_equivalence',
'NestedSolvers',
'NormTests',
'ObjectDestructionSequence',
'PermuteTests',
'RandomMatrix',
'SmootherBlockPoissonTest',
'TemplateConfigTest',
'TemplateTest',
'truncateCountTest',
'VectorTests',
]

runtest = "amgx_tests_launcher && src/amgx_tests_launcher " + ' '.join(local_tests)

sanity_check_paths = {
'files': ['include/amgx_c.h', 'lib/libamgx.a', 'lib/libamgxsh.%s' % SHLIB_EXT],
'dirs': [],
}

moduleclass = 'lib'
13 changes: 13 additions & 0 deletions easybuild/easyconfigs/a/AMGX/AMGX-2.4.0_external-thrust.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
Forces AMGX to use external dependencies, avoiding needing the git submodule
the entire (deprecated) thrust library and all its dependencies.
author: [email protected]
--- CMakeLists.txt.orig 2024-03-30 01:54:34.469780980 +0100
+++ CMakeLists.txt 2024-03-30 01:54:46.491884432 +0100
@@ -251,7 +251,6 @@
ENDIF()

# We depend on a specific version of thrust now so include the submodule
-add_subdirectory("thrust")
find_package(Thrust REQUIRED CONFIG)
thrust_create_target(Thrust)

15 changes: 15 additions & 0 deletions easybuild/easyconfigs/a/AMGX/AMGX-2.4.0_fix-openmp-linking.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
Adds missing link option necessary for openmp linking.
The target_link_libraries used for amgx are not sufficient as CMake haven't
sorted this out yet, thus manually adding the flag for GCC.
author: [email protected]
--- CMakeLists.txt.orig 2024-03-30 03:27:22.354168764 +0100
+++ CMakeLists.txt 2024-03-30 03:28:00.397486779 +0100
@@ -291,6 +291,8 @@
ELSE (WIN32)
target_link_libraries(amgx CUDA::cublas CUDA::cusparse CUDA::cusolver CUDA::nvToolsExt m pthread)
target_link_libraries(amgxsh CUDA::cublas CUDA::cusparse CUDA::cusolver CUDA::nvToolsExt m pthread)
+ target_link_options(amgx INTERFACE "-fopenmp")
+ target_link_options(amgxsh INTERFACE "-fopenmp")
ENDIF(WIN32)

if(MPI_FOUND)
Loading

0 comments on commit d25a161

Please sign in to comment.