Skip to content

{ai,math}[GCCcore/13.3.0,gompi/2024a] KaHIP v3.17, GKlib-METIS v5.1.1#24656

Open
gkaf89 wants to merge 5 commits intoeasybuilders:developfrom
gkaf89:20251121224419_new_pr_KaHIP317
Open

{ai,math}[GCCcore/13.3.0,gompi/2024a] KaHIP v3.17, GKlib-METIS v5.1.1#24656
gkaf89 wants to merge 5 commits intoeasybuilders:developfrom
gkaf89:20251121224419_new_pr_KaHIP317

Conversation

@gkaf89
Copy link
Contributor

@gkaf89 gkaf89 commented Nov 21, 2025

(created using eb --new-pr)

@github-actions github-actions bot added 2024a issues & PRs related to 2024a common toolchains update labels Nov 21, 2025
@github-actions
Copy link

github-actions bot commented Nov 21, 2025

Updated software GKlib-METIS-5.1.1-GCCcore-13.3.0.eb

Diff against GKlib-METIS-5.1.1-GCC-13.3.0.eb

easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-13.3.0.eb

diff --git a/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-13.3.0.eb b/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCCcore-13.3.0.eb
index dfdcbc6feb..a1edd9d530 100644
--- a/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-13.3.0.eb
+++ b/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCCcore-13.3.0.eb
@@ -1,8 +1,4 @@
-# This is needed to install newer versions of DGL.
-# The main reason is that the specific version of METIS used in DGL needs is as a
-# third party software and newer versions of DGL don't have that included any more.
 # Author: J. Sassmannshausen (Imperial College Londoni/UK)
-# Update:Petr Král (INUITS)
 
 easyblock = 'CMakeMake'
 
@@ -13,8 +9,7 @@ homepage = 'https://github.com/KarypisLab/GKlib'
 description = """A library of various helper routines and frameworks used by
 many of the lab's software"""
 
-toolchain = {'name': 'GCC', 'version': '13.3.0'}
-toolchainopts = {'openmp': True, 'pic': True}
+toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
 
 sources = [
     {
@@ -27,19 +22,18 @@ checksums = ['52aa0d383d42360f4faa0ae9537ba2ca348eeab4db5f2dfd6343192d0ff4b833']
 
 builddependencies = [
     ('CMake', '3.29.3'),
+    ('binutils', '2.42'),
 ]
 
 dependencies = [
     ('Python', '3.12.3'),
 ]
 
-configopts = ['-DBUILD_SHARED_LIBS=ON ', '-DBUILD_SHARED_LIBS=OFF ']
-
 sanity_check_commands = ['gkgraph -help']
 
 sanity_check_paths = {
-    'files': ['bin/gkgraph', f'lib/libGKlib.{SHLIB_EXT}', 'lib/libGKlib.a'],
-    'dirs': ['include'],
+    'files': ['bin/gkgraph'],
+    'dirs': ['lib', 'include'],
 }
 
 moduleclass = 'ai'
Diff against GKlib-METIS-5.1.1-GCC-14.3.0.eb

easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-14.3.0.eb

diff --git a/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-14.3.0.eb b/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCCcore-13.3.0.eb
index 5b27ce47fb..a1edd9d530 100644
--- a/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-14.3.0.eb
+++ b/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCCcore-13.3.0.eb
@@ -1,6 +1,3 @@
-# This is needed to install newer versions of DGL.
-# The main reason is that the specific version of METIS used in DGL needs is as a
-# third party software and newer versions of DGL don't have that included any more.
 # Author: J. Sassmannshausen (Imperial College Londoni/UK)
 
 easyblock = 'CMakeMake'
@@ -12,8 +9,7 @@ homepage = 'https://github.com/KarypisLab/GKlib'
 description = """A library of various helper routines and frameworks used by
 many of the lab's software"""
 
-toolchain = {'name': 'GCC', 'version': '14.3.0'}
-toolchainopts = {'openmp': True}
+toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
 
 sources = [
     {
@@ -25,20 +21,19 @@ sources = [
 checksums = ['52aa0d383d42360f4faa0ae9537ba2ca348eeab4db5f2dfd6343192d0ff4b833']
 
 builddependencies = [
-    ('CMake', '3.31.8'),
+    ('CMake', '3.29.3'),
+    ('binutils', '2.42'),
 ]
 
 dependencies = [
-    ('Python', '3.13.5'),
+    ('Python', '3.12.3'),
 ]
 
-configopts = ['-DBUILD_SHARED_LIBS=ON ', '-DBUILD_SHARED_LIBS=OFF ']
-
 sanity_check_commands = ['gkgraph -help']
 
 sanity_check_paths = {
-    'files': ['bin/gkgraph', f'lib/libGKlib.{SHLIB_EXT}', 'lib/libGKlib.a'],
-    'dirs': ['include'],
+    'files': ['bin/gkgraph'],
+    'dirs': ['lib', 'include'],
 }
 
 moduleclass = 'ai'
Diff against GKlib-METIS-5.1.1-GCC-14.2.0.eb

easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-14.2.0.eb

diff --git a/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-14.2.0.eb b/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCCcore-13.3.0.eb
index a273855b6c..a1edd9d530 100644
--- a/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCC-14.2.0.eb
+++ b/easybuild/easyconfigs/g/GKlib-METIS/GKlib-METIS-5.1.1-GCCcore-13.3.0.eb
@@ -1,6 +1,3 @@
-# This is needed to install newer versions of DGL.
-# The main reason is that the specific version of METIS used in DGL needs is as a
-# third party software and newer versions of DGL don't have that included any more.
 # Author: J. Sassmannshausen (Imperial College Londoni/UK)
 
 easyblock = 'CMakeMake'
@@ -12,8 +9,7 @@ homepage = 'https://github.com/KarypisLab/GKlib'
 description = """A library of various helper routines and frameworks used by
 many of the lab's software"""
 
-toolchain = {'name': 'GCC', 'version': '14.2.0'}
-toolchainopts = {'openmp': True, 'pic': True}
+toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
 
 sources = [
     {
@@ -25,20 +21,19 @@ sources = [
 checksums = ['52aa0d383d42360f4faa0ae9537ba2ca348eeab4db5f2dfd6343192d0ff4b833']
 
 builddependencies = [
-    ('CMake', '3.31.3'),
+    ('CMake', '3.29.3'),
+    ('binutils', '2.42'),
 ]
 
 dependencies = [
-    ('Python', '3.13.1'),
+    ('Python', '3.12.3'),
 ]
 
-configopts = ['-DBUILD_SHARED_LIBS=ON ', '-DBUILD_SHARED_LIBS=OFF ']
-
 sanity_check_commands = ['gkgraph -help']
 
 sanity_check_paths = {
-    'files': ['bin/gkgraph', f'lib/libGKlib.{SHLIB_EXT}', 'lib/libGKlib.a'],
-    'dirs': ['include'],
+    'files': ['bin/gkgraph'],
+    'dirs': ['lib', 'include'],
 }
 
 moduleclass = 'ai'

Updated software KaHIP-3.17-gompi-2024a.eb

Diff against KaHIP-3.19-gompi-2024a.eb

easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2024a.eb

diff --git a/easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2024a.eb b/easybuild/easyconfigs/k/KaHIP/KaHIP-3.17-gompi-2024a.eb
index 02911ccae1..7912cc3f79 100644
--- a/easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2024a.eb
+++ b/easybuild/easyconfigs/k/KaHIP/KaHIP-3.17-gompi-2024a.eb
@@ -1,11 +1,10 @@
 # METIS support added
 # Author: J. Saßmannshausen (Imperial College London/UK)
-# Update: Petr Král (INUITS)
 
 easyblock = 'CMakeMake'
 
 name = 'KaHIP'
-version = '3.19'
+version = '3.17'
 
 homepage = 'https://kahip.github.io/'
 description = """The graph partitioning framework KaHIP --
@@ -16,10 +15,9 @@ toolchainopts = {'pic': True}
 
 source_urls = ['https://github.com/KaHIP/KaHIP/archive/refs/tags']
 sources = ['v%(version)s.tar.gz']
-checksums = ['ab128104d198061b4dcad76f760aca240b96de781c1b586235ee4f12fd6829c6']
+checksums = ['ced8745d30ed60c178c55f14f4c17d657c3b91f9efdd876284b2552bb4e2bb8e']
 
 builddependencies = [
-    ('binutils', '2.42'),
     ('CMake', '3.29.3'),
 ]
 
Diff against KaHIP-3.19-gompi-2025a.eb

easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2025a.eb

diff --git a/easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2025a.eb b/easybuild/easyconfigs/k/KaHIP/KaHIP-3.17-gompi-2024a.eb
index 3a4e2623ad..7912cc3f79 100644
--- a/easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2025a.eb
+++ b/easybuild/easyconfigs/k/KaHIP/KaHIP-3.17-gompi-2024a.eb
@@ -4,22 +4,21 @@
 easyblock = 'CMakeMake'
 
 name = 'KaHIP'
-version = '3.19'
+version = '3.17'
 
 homepage = 'https://kahip.github.io/'
 description = """The graph partitioning framework KaHIP --
 Karlsruhe High Quality Partitioning."""
 
-toolchain = {'name': 'gompi', 'version': '2025a'}
+toolchain = {'name': 'gompi', 'version': '2024a'}
 toolchainopts = {'pic': True}
 
 source_urls = ['https://github.com/KaHIP/KaHIP/archive/refs/tags']
 sources = ['v%(version)s.tar.gz']
-checksums = ['ab128104d198061b4dcad76f760aca240b96de781c1b586235ee4f12fd6829c6']
+checksums = ['ced8745d30ed60c178c55f14f4c17d657c3b91f9efdd876284b2552bb4e2bb8e']
 
 builddependencies = [
-    ('binutils', '2.42'),
-    ('CMake', '3.31.3'),
+    ('CMake', '3.29.3'),
 ]
 
 dependencies = [
Diff against KaHIP-3.19-gompi-2025b.eb

easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2025b.eb

diff --git a/easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2025b.eb b/easybuild/easyconfigs/k/KaHIP/KaHIP-3.17-gompi-2024a.eb
index 0255620044..7912cc3f79 100644
--- a/easybuild/easyconfigs/k/KaHIP/KaHIP-3.19-gompi-2025b.eb
+++ b/easybuild/easyconfigs/k/KaHIP/KaHIP-3.17-gompi-2024a.eb
@@ -4,28 +4,27 @@
 easyblock = 'CMakeMake'
 
 name = 'KaHIP'
-version = '3.19'
+version = '3.17'
 
 homepage = 'https://kahip.github.io/'
 description = """The graph partitioning framework KaHIP --
 Karlsruhe High Quality Partitioning."""
 
-toolchain = {'name': 'gompi', 'version': '2025b'}
+toolchain = {'name': 'gompi', 'version': '2024a'}
 toolchainopts = {'pic': True}
 
 source_urls = ['https://github.com/KaHIP/KaHIP/archive/refs/tags']
 sources = ['v%(version)s.tar.gz']
-checksums = ['ab128104d198061b4dcad76f760aca240b96de781c1b586235ee4f12fd6829c6']
+checksums = ['ced8745d30ed60c178c55f14f4c17d657c3b91f9efdd876284b2552bb4e2bb8e']
 
 builddependencies = [
-    ('binutils', '2.44'),
-    ('CMake', '3.31.8'),
+    ('CMake', '3.29.3'),
 ]
 
 dependencies = [
     ('GKlib-METIS', '5.1.1'),
     ('METIS', '5.1.0'),
-    ('gperftools', '2.17.2'),
+    ('gperftools', '2.16'),
 ]
 
 configopts = '-DUSE_TCMALLOC=ON '

@smoors
Copy link
Contributor

smoors commented Nov 22, 2025

@gkaf89 comparing this with GKlib-METIS-5.1.1-GCCcore-13.3.0.eb, i see it has toolchainopts = {'openmp': True} and configopts = ['-DBUILD_SHARED_LIBS=ON ', '-DBUILD_SHARED_LIBS=OFF '].

shouldn't you add those too?

@jfgrimm
Copy link
Member

jfgrimm commented Nov 25, 2025

Test report by @jfgrimm
SUCCESS
Build succeeded for 3 out of 3 (2 easyconfigs in total)
node092.viking2.yor.alces.network - Linux Rocky Linux 8.10, x86_64, AMD EPYC 7643 48-Core Processor, Python 3.6.8
See https://gist.github.com/jfgrimm/9ae2f79b9ddbe254d1ffb04c2f735030 for a full test report.

description = """A library of various helper routines and frameworks used by
many of the lab's software"""

toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I really think we should re-enable openmp. As a result, we'll need to move this back to GCC instead of GCCcore (since it won't be compatible with e.g. intel toolchain)

Suggested change
toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
toolchain = {'name': 'GCC', 'version': '13.3.0'}
toolchainopts = {'openmp': True}


builddependencies = [
('CMake', '3.29.3'),
('binutils', '2.42'),
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not needed when at GCC level

Suggested change
('binutils', '2.42'),

dependencies = [
('Python', '3.12.3'),
]

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

re-instate configopts to build the shared library as well

Suggested change
configopts = ['-DBUILD_SHARED_LIBS=ON ', '-DBUILD_SHARED_LIBS=OFF ']

sanity_check_commands = ['gkgraph -help']

sanity_check_paths = {
'files': ['bin/gkgraph'],
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also check for presence of libraries

Suggested change
'files': ['bin/gkgraph'],
'files': ['bin/gkgraph', f'lib/libGKlib.{SHLIB_EXT}', 'lib/libGKlib.a'],

@jfgrimm jfgrimm added this to the 5.x milestone Nov 25, 2025
The gompi toolchain already contains binutils

Co-authored-by: Jasper Grimm <65227842+jfgrimm@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2024a issues & PRs related to 2024a common toolchains update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants