From bedde01af5a1ff09a4510f1969a874e6009ae131 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 14 Nov 2025 09:02:08 +0100 Subject: [PATCH 1/9] use max 8 cores for GROMACS on a64fx --- eb_hooks.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/eb_hooks.py b/eb_hooks.py index e2fadf33..b9572e65 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -1713,6 +1713,9 @@ def set_maximum(parallel, max_value): # Deucalion has 32GB HBM for 48 cores per node CPU_TARGET_A64FX: (divide_by_factor, 4), # software-specific limits + 'GROMACS': { + CPU_TARGET_A64FX: (set_maximum, 8), + }, 'libxc': { '*': (divide_by_factor, 2), CPU_TARGET_A64FX: (set_maximum, 12), From 934178ba5c2eabdf10a409d6294b1635e0225aa8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 14 Nov 2025 09:03:31 +0100 Subject: [PATCH 2/9] add easystack for testing purposes --- .../2023.06/eessi-2023.06-eb-4.9.4-2023b.yml | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml new file mode 100644 index 00000000..1e66ae28 --- /dev/null +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml @@ -0,0 +1,13 @@ +easystacks: + - GROMACS-2024.1-foss-2023b.eb: + options: + # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 + from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 + - GROMACS-2024.3-foss-2023b.eb: + options: + # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 + from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 + - GROMACS-2024.4-foss-2023b.eb: + options: + # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 + from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 From bd92ff5cf8207a89ce9ff457ea96e3fd9fa49c38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 14 Nov 2025 09:11:20 +0100 Subject: [PATCH 3/9] easystacks -> easyconfigs --- .../software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-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.4-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml index 1e66ae28..a90bacc3 100644 --- a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml @@ -1,4 +1,4 @@ -easystacks: +easyconfigs: - GROMACS-2024.1-foss-2023b.eb: options: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 From e541327da6edca44767ae85586edfb91b15a016f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 14 Nov 2025 12:09:11 +0100 Subject: [PATCH 4/9] reverse order --- .../2023.06/eessi-2023.06-eb-4.9.4-2023b.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml index a90bacc3..873bdff9 100644 --- a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml @@ -1,5 +1,5 @@ easyconfigs: - - GROMACS-2024.1-foss-2023b.eb: + - GROMACS-2024.4-foss-2023b.eb: options: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 @@ -7,7 +7,7 @@ easyconfigs: options: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 - - GROMACS-2024.4-foss-2023b.eb: + - GROMACS-2024.1-foss-2023b.eb: options: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 From 4c4d20fa69b4909f709bbd1c40c8192d6649c1fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Fri, 14 Nov 2025 15:42:42 +0100 Subject: [PATCH 5/9] try with EB 5.1.2 --- ...023.06-eb-4.9.4-2023b.yml => eessi-2023.06-eb-5.1.2-2023b.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename easystacks/software.eessi.io/2023.06/{eessi-2023.06-eb-4.9.4-2023b.yml => eessi-2023.06-eb-5.1.2-2023b.yml} (100%) diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml similarity index 100% rename from easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-4.9.4-2023b.yml rename to easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml From c60339f791cfd60705cfcc97f95eb704c5b9004f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Mon, 17 Nov 2025 13:10:17 +0100 Subject: [PATCH 6/9] try 2024.2 --- .../2023.06/eessi-2023.06-eb-5.1.2-2023b.yml | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml index 873bdff9..e890d169 100644 --- a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml @@ -1,13 +1,7 @@ easyconfigs: - - GROMACS-2024.4-foss-2023b.eb: - options: - # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 - from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 - - GROMACS-2024.3-foss-2023b.eb: - options: - # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 - from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 - GROMACS-2024.1-foss-2023b.eb: options: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 + try-software-version: 2024.2 + ignore-checksums: True From 2085d1eb834133d4195652cb671524e7999afe0e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Mon, 17 Nov 2025 16:09:30 +0100 Subject: [PATCH 7/9] try standard 2024.1 --- .../software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml | 2 -- 1 file changed, 2 deletions(-) diff --git a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml index e890d169..832cce11 100644 --- a/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml +++ b/easystacks/software.eessi.io/2023.06/eessi-2023.06-eb-5.1.2-2023b.yml @@ -3,5 +3,3 @@ easyconfigs: options: # see https://github.com/easybuilders/easybuild-easyconfigs/pull/24548 from-commit: 2a45a80a9b50adc8954150a1101c81e692598b98 - try-software-version: 2024.2 - ignore-checksums: True From 897bd0d8b3c113b107ca5bb24429e6eed3e05041 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Mon, 17 Nov 2025 16:10:26 +0100 Subject: [PATCH 8/9] apply existing GROMACS workaround to A64FX as well --- eb_hooks.py | 1 + 1 file changed, 1 insertion(+) diff --git a/eb_hooks.py b/eb_hooks.py index b9572e65..c3a98302 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -892,6 +892,7 @@ def pre_configure_hook_gromacs(self, *args, **kwargs): if self.name == 'GROMACS': cpu_target = get_eessi_envvar('EESSI_SOFTWARE_SUBDIR') if ( + (LooseVersion(self.version) <= LooseVersion('2024.1') and cpu_target == CPU_TARGET_A64FX) or (LooseVersion(self.version) <= LooseVersion('2024.1') and cpu_target == CPU_TARGET_NEOVERSE_V1) or (LooseVersion(self.version) <= LooseVersion('2024.4') and cpu_target == CPU_TARGET_NVIDIA_GRACE) ): From abaca340d010a47b6130cc9184c36e1d1b9645b5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bob=20Dr=C3=B6ge?= Date: Mon, 17 Nov 2025 19:57:49 +0100 Subject: [PATCH 9/9] Try without the 8-core limit Removed GROMACS CPU target limit from eb_hooks.py. --- eb_hooks.py | 3 --- 1 file changed, 3 deletions(-) diff --git a/eb_hooks.py b/eb_hooks.py index c3a98302..d04f831f 100644 --- a/eb_hooks.py +++ b/eb_hooks.py @@ -1714,9 +1714,6 @@ def set_maximum(parallel, max_value): # Deucalion has 32GB HBM for 48 cores per node CPU_TARGET_A64FX: (divide_by_factor, 4), # software-specific limits - 'GROMACS': { - CPU_TARGET_A64FX: (set_maximum, 8), - }, 'libxc': { '*': (divide_by_factor, 2), CPU_TARGET_A64FX: (set_maximum, 12),