Skip to content

Commit

Permalink
Merge branch '2023.06-software.eessi.io' of github.com:EESSI/software…
Browse files Browse the repository at this point in the history
…-layer into multiple_cvmfs_repos_eessi_container
  • Loading branch information
bedroge committed Jul 4, 2024
2 parents e25cd1e + 8fa7a20 commit ac6984b
Show file tree
Hide file tree
Showing 15 changed files with 71 additions and 17 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/test-software.eessi.io.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
check_missing:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_eessi_container_script.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
eessi_container_script:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/test_licenses.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- name: Check out software-layer repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
python: [3.6, 3.7, 3.8, 3.9, '3.10']
python: [3.7, 3.8, 3.9, '3.10']
fail-fast: false
steps:
- name: checkout
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests_archdetect.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
proc_cpuinfo:
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/tests_init.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,10 +5,10 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
strategy:
matrix:
python: [3.6, 3.7, 3.8, 3.9, '3.10']
python: [3.7, 3.8, 3.9, '3.10']
fail-fast: false
steps:
- name: checkout
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests_readme.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- name: Check out software-layer repository
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/tests_scripts.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ permissions:
contents: read # to fetch code (actions/checkout)
jobs:
build:
runs-on: ubuntu-20.04
runs-on: ubuntu-latest
steps:
- name: checkout
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
easyconfigs:
- OpenMPI-4.1.5-GCC-12.3.0.eb
- foss-2023a.eb
- SciPy-bundle-2023.07-gfbf-2023a.eb
- ESPResSo-4.2.2-foss-2023a.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
easyconfigs:
- OpenBLAS-0.3.24-GCC-13.2.0.eb:
options:
# see https://github.com/easybuilders/easybuild-easyconfigs/pull/20820
from-commit: 1fc885b35dacdeb2feef4af207a2daa2502bae08
- foss-2023b.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
easyconfigs:
- BCFtools-1.18-GCC-12.3.0.eb
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
easyconfigs:
- IPython-8.17.2-GCCcore-13.2.0.eb
- dlb-3.4-gompi-2023b.eb
Original file line number Diff line number Diff line change
Expand Up @@ -2,3 +2,4 @@ easyconfigs:
- ESPResSo-4.2.2-foss-2023a.eb
- TensorFlow-2.13.0-foss-2023a.eb
- R-4.3.2-gfbf-2023a.eb
- ParaView-5.11.2-foss-2023a.eb
44 changes: 37 additions & 7 deletions eb_hooks.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
CPU_TARGET_NEOVERSE_N1 = 'aarch64/neoverse_n1'
CPU_TARGET_NEOVERSE_V1 = 'aarch64/neoverse_v1'
CPU_TARGET_AARCH64_GENERIC = 'aarch64/generic'
CPU_TARGET_A64FX = 'aarch64/a64fx'

EESSI_RPATH_OVERRIDE_ATTR = 'orig_rpath_override_dirs'

Expand Down Expand Up @@ -335,6 +336,24 @@ def pre_configure_hook(self, *args, **kwargs):
PRE_CONFIGURE_HOOKS[self.name](self, *args, **kwargs)


def pre_configure_hook_BLIS_a64fx(self, *args, **kwargs):
"""
Pre-configure hook for BLIS when building for A64FX:
- add -DCACHE_SECTOR_SIZE_READONLY to $CFLAGS for BLIS 0.9.0, cfr. https://github.com/flame/blis/issues/800
"""
if self.name == 'BLIS':
cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR')
if self.version == '0.9.0' and cpu_target == CPU_TARGET_A64FX:
# last argument of BLIS' configure command is configuration target (usually 'auto' for auto-detect),
# specifying of variables should be done before that
config_opts = self.cfg['configopts'].split(' ')
cflags_var = 'CFLAGS="$CFLAGS -DCACHE_SECTOR_SIZE_READONLY"'
config_target = config_opts[-1]
self.cfg['configopts'] = ' '.join(config_opts[:-1] + [cflags_var, config_target])
else:
raise EasyBuildError("BLIS-specific hook triggered for non-BLIS easyconfig?!")


def pre_configure_hook_gromacs(self, *args, **kwargs):
"""
Pre-configure hook for GROMACS:
Expand Down Expand Up @@ -469,20 +488,30 @@ def pre_test_hook_ignore_failing_tests_FFTWMPI(self, *args, **kwargs):
def pre_test_hook_ignore_failing_tests_SciPybundle(self, *args, **kwargs):
"""
Pre-test hook for SciPy-bundle: skip failing tests for selected SciPy-bundle versions
In version 2021.10, 2 failing tests in scipy 1.6.3:
In version 2021.10 on neoverse_v1, 2 failing tests in scipy 1.6.3:
FAILED optimize/tests/test_linprog.py::TestLinprogIPSparse::test_bug_6139 - A...
FAILED optimize/tests/test_linprog.py::TestLinprogIPSparsePresolve::test_bug_6139
= 2 failed, 30554 passed, 2064 skipped, 10992 deselected, 76 xfailed, 7 xpassed, 40 warnings in 380.27s (0:06:20) =
In versions 2023.02, 2023.07, and 2023.11, 2 failing tests in scipy (versions 1.10.1, 1.11.1, 1.11.4):
In versions 2023.02 + 2023.07 + 2023.11 on neoverse_v1, 2 failing tests in scipy (versions 1.10.1, 1.11.1, 1.11.4):
FAILED scipy/spatial/tests/test_distance.py::TestPdist::test_pdist_correlation_iris
FAILED scipy/spatial/tests/test_distance.py::TestPdist::test_pdist_correlation_iris_float32
= 2 failed, 54409 passed, 3016 skipped, 223 xfailed, 13 xpassed, 10917 warnings in 892.04s (0:14:52) =
In previous versions we were not as strict yet on the numpy/SciPy tests
In version 2023.07 on a64fx, 4 failing tests in scipy 1.11.1:
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPSparse::test_bug_6139
FAILED scipy/optimize/tests/test_linprog.py::TestLinprogIPSparsePresolve::test_bug_6139
FAILED scipy/spatial/tests/test_distance.py::TestPdist::test_pdist_correlation_iris
FAILED scipy/spatial/tests/test_distance.py::TestPdist::test_pdist_correlation_iris_float32
= 4 failed, 54407 passed, 3016 skipped, 223 xfailed, 13 xpassed, 10917 warnings in 6068.43s (1:41:08) =
(in previous versions we were not as strict yet on the numpy/SciPy tests)
"""
cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR')
scipy_bundle_versions = ('2021.10', '2023.02', '2023.07', '2023.11')
if self.name == 'SciPy-bundle' and self.version in scipy_bundle_versions and cpu_target == CPU_TARGET_NEOVERSE_V1:
self.cfg['testopts'] = "|| echo ignoring failing tests"
scipy_bundle_versions_nv1 = ('2021.10', '2023.02', '2023.07', '2023.11')
scipy_bundle_versions_a64fx = ('2023.07', '2023.11')
if self.name == 'SciPy-bundle':
if cpu_target == CPU_TARGET_NEOVERSE_V1 and self.version in scipy_bundle_versions_nv1:
self.cfg['testopts'] = "|| echo ignoring failing tests"
elif cpu_target == CPU_TARGET_A64FX and self.version in scipy_bundle_versions_a64fx:
self.cfg['testopts'] = "|| echo ignoring failing tests"

def pre_test_hook_ignore_failing_tests_netCDF(self, *args, **kwargs):
"""
Expand Down Expand Up @@ -680,12 +709,13 @@ def inject_gpu_property(ec):
}

PRE_CONFIGURE_HOOKS = {
'at-spi2-core': pre_configure_hook_atspi2core_filter_ld_library_path,
'BLIS': pre_configure_hook_BLIS_a64fx,
'GROMACS': pre_configure_hook_gromacs,
'libfabric': pre_configure_hook_libfabric_disable_psm3_x86_64_generic,
'MetaBAT': pre_configure_hook_metabat_filtered_zlib_dep,
'OpenBLAS': pre_configure_hook_openblas_optarch_generic,
'WRF': pre_configure_hook_wrf_aarch64,
'at-spi2-core': pre_configure_hook_atspi2core_filter_ld_library_path,
}

PRE_TEST_HOOKS = {
Expand Down
7 changes: 7 additions & 0 deletions eessi-2023.06-known-issues.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,10 @@
- aarch64/a64x:
- SciPy-bundle-2023.07-gfbf-2023a:
- issue: https://github.com/EESSI/software-layer/issues/318
- info: "4 failing tests (vs 54407 passed) in scipy test suite"
- SciPy-bundle-2023.11-gfbf-2023b:
- issue: https://github.com/EESSI/software-layer/issues/318
- info: "3 failing tests (vs 54875 passed) in scipy test suite"
- aarch64/generic:
- PyTorch-2.1.2-foss-2023a:
- issue: https://github.com/EESSI/software-layer/issues/461
Expand Down

0 comments on commit ac6984b

Please sign in to comment.