From 3d43781830578a34384ee54541662e8b698a9590 Mon Sep 17 00:00:00 2001 From: lara Date: Thu, 19 Sep 2024 09:31:14 +0200 Subject: [PATCH 1/7] {2023} --- .../2023.06/eessi-2023.06-eb-4.9.3-2023b.yml | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml new file mode 100644 index 0000000000..382241b98e --- /dev/null +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml @@ -0,0 +1,5 @@ +easyconfigs: + - LAMMPS-29Aug2024-foss-2023b-kokkos.eb: + # see https://github.com/easybuilders/easybuild-easyconfigs/pull/21436 + options: + from-pr: 21436 From 8adaaafbe93a89a60702e97c08afa17903c9452d Mon Sep 17 00:00:00 2001 From: lara Date: Thu, 19 Sep 2024 09:49:44 +0200 Subject: [PATCH 2/7] update hook for v29Aug2024 --- eb_hooks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eb_hooks.py b/eb_hooks.py index b3e457cfe3..f25aacfc9c 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -301,7 +301,7 @@ def parse_hook_lammps_remove_deps_for_CI_aarch64(ec, *args, **kwargs): """ Remove x86_64 specific dependencies for the CI to pass on aarch64 """ - if ec.name == 'LAMMPS' and ec.version in ('2Aug2023_update2',): + if ec.name == 'LAMMPS' and ec.version in ('2Aug2023_update2', '29Aug2024'): if os.getenv('EESSI_CPU_FAMILY') == 'aarch64': # ScaFaCoS and tbb are not compatible with aarch64/* CPU targets, # so remove them as dependencies for LAMMPS (they're optional); From 09bfb97a4d29f62b901316c9dd08dc6a422bc519 Mon Sep 17 00:00:00 2001 From: lara Date: Thu, 19 Sep 2024 11:09:34 +0200 Subject: [PATCH 3/7] update missing installations hook --- eb_hooks.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/eb_hooks.py b/eb_hooks.py index f25aacfc9c..d999c735c3 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -297,9 +297,9 @@ def parse_hook_ucx_eprefix(ec, eprefix): raise EasyBuildError("UCX-specific hook triggered for non-UCX easyconfig?!") -def parse_hook_lammps_remove_deps_for_CI_aarch64(ec, *args, **kwargs): +def parse_hook_lammps_remove_deps_for_aarch64(ec, *args, **kwargs): """ - Remove x86_64 specific dependencies for the CI to pass on aarch64 + Remove x86_64 specific dependencies for the CI and missing installations to pass on aarch64 """ if ec.name == 'LAMMPS' and ec.version in ('2Aug2023_update2', '29Aug2024'): if os.getenv('EESSI_CPU_FAMILY') == 'aarch64': @@ -309,7 +309,7 @@ def parse_hook_lammps_remove_deps_for_CI_aarch64(ec, *args, **kwargs): # https://github.com/easybuilders/easybuild-easyconfigs/pull/19000; # we need this hook because we check for missing installations for all CPU targets # on an x86_64 VM in GitHub Actions (so condition based on ARCH in LAMMPS easyconfig is always true) - ec['dependencies'] = [dep for dep in ec['dependencies'] if dep[0] not in ('ScaFaCoS', 'tbb')] + ec['dependencies'] = [dep for dep in ec['dependencies'] if dep[0] not in ('ScaFaCoS', 'tbb',)] else: raise EasyBuildError("LAMMPS-specific hook triggered for non-LAMMPS easyconfig?!") @@ -776,7 +776,7 @@ def inject_gpu_property(ec): 'CGAL': parse_hook_cgal_toolchainopts_precise, 'fontconfig': parse_hook_fontconfig_add_fonts, 'grpcio': parse_hook_grpcio_zlib, - 'LAMMPS': parse_hook_lammps_remove_deps_for_CI_aarch64, + 'LAMMPS': parse_hook_lammps_remove_deps_for_aarch64, 'CP2K': parse_hook_CP2K_remove_deps_for_aarch64, 'OpenBLAS': parse_hook_openblas_relax_lapack_tests_num_errors, 'pybind11': parse_hook_pybind11_replace_catch2, From db91170bf73112ff98e92c818a857cfa4b9a6c93 Mon Sep 17 00:00:00 2001 From: lara Date: Thu, 19 Sep 2024 12:01:44 +0200 Subject: [PATCH 4/7] use --from-commit --- .../software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml index 382241b98e..b3c903161a 100644 --- a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.3-2023b.yml @@ -2,4 +2,4 @@ easyconfigs: - LAMMPS-29Aug2024-foss-2023b-kokkos.eb: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/21436 options: - from-pr: 21436 + from-commit: 9dc24e57880a8adb06ae10557c5315e66671a533 From 0e19946274fbedce25bd7b05d6ee627daccff410 Mon Sep 17 00:00:00 2001 From: lara Date: Fri, 27 Sep 2024 15:30:20 +0200 Subject: [PATCH 5/7] update eb_hook so that EasyBuildError is not not trigered for unlisted LAMMPS versions --- eb_hooks.py | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/eb_hooks.py b/eb_hooks.py index d999c735c3..f7d19235c4 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -301,15 +301,16 @@ def parse_hook_lammps_remove_deps_for_aarch64(ec, *args, **kwargs): """ Remove x86_64 specific dependencies for the CI and missing installations to pass on aarch64 """ - if ec.name == 'LAMMPS' and ec.version in ('2Aug2023_update2', '29Aug2024'): - if os.getenv('EESSI_CPU_FAMILY') == 'aarch64': - # ScaFaCoS and tbb are not compatible with aarch64/* CPU targets, - # so remove them as dependencies for LAMMPS (they're optional); - # see also https://github.com/easybuilders/easybuild-easyconfigs/pull/19164 + - # https://github.com/easybuilders/easybuild-easyconfigs/pull/19000; - # we need this hook because we check for missing installations for all CPU targets - # on an x86_64 VM in GitHub Actions (so condition based on ARCH in LAMMPS easyconfig is always true) - ec['dependencies'] = [dep for dep in ec['dependencies'] if dep[0] not in ('ScaFaCoS', 'tbb',)] + if ec.name == 'LAMMPS': + if ec.version in ('2Aug2023_update2', '29Aug2024'): + if os.getenv('EESSI_CPU_FAMILY') == 'aarch64': + # ScaFaCoS and tbb are not compatible with aarch64/* CPU targets, + # so remove them as dependencies for LAMMPS (they're optional); + # see also https://github.com/easybuilders/easybuild-easyconfigs/pull/19164 + + # https://github.com/easybuilders/easybuild-easyconfigs/pull/19000; + # we need this hook because we check for missing installations for all CPU targets + # on an x86_64 VM in GitHub Actions (so condition based on ARCH in LAMMPS easyconfig is always true) + ec['dependencies'] = [dep for dep in ec['dependencies'] if dep[0] not in ('ScaFaCoS', 'tbb',)] else: raise EasyBuildError("LAMMPS-specific hook triggered for non-LAMMPS easyconfig?!") From aa5fade441cf052a65fe197f56d4da0b72279668 Mon Sep 17 00:00:00 2001 From: Lara Ramona Peeters <49882639+laraPPr@users.noreply.github.com> Date: Fri, 27 Sep 2024 18:24:56 +0200 Subject: [PATCH 6/7] set kokkos hoop for zen4 Zen4 nodes in Azure are not detected as `zen4` by archspec --- eb_hooks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eb_hooks.py b/eb_hooks.py index f7d19235c4..8a357a8cde 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -525,7 +525,7 @@ def pre_configure_hook_LAMMPS_zen4(self, *args, **kwargs): cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR') if self.name == 'LAMMPS': - if self.version == '2Aug2023_update2': + if ec.version in ('2Aug2023_update2', '29Aug2024'): if get_cpu_architecture() == X86_64: if cpu_target == CPU_TARGET_ZEN4: # There is no support for ZEN4 in LAMMPS yet so falling back to ZEN3 From abbbf35db63271508a60dd003c2cfe94b2f691ce Mon Sep 17 00:00:00 2001 From: Lara Ramona Peeters <49882639+laraPPr@users.noreply.github.com> Date: Fri, 27 Sep 2024 19:32:17 +0200 Subject: [PATCH 7/7] fix hook --- eb_hooks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/eb_hooks.py b/eb_hooks.py index 8a357a8cde..4d13523e40 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -525,7 +525,7 @@ def pre_configure_hook_LAMMPS_zen4(self, *args, **kwargs): cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR') if self.name == 'LAMMPS': - if ec.version in ('2Aug2023_update2', '29Aug2024'): + if self.version in ('2Aug2023_update2', '29Aug2024'): if get_cpu_architecture() == X86_64: if cpu_target == CPU_TARGET_ZEN4: # There is no support for ZEN4 in LAMMPS yet so falling back to ZEN3