Skip to content

{lib}[gompi/2025b] SIONfwd v1.0.1, SIONlib v1.7.7#24103

Merged
Micket merged 3 commits intoeasybuilders:developfrom
Thyre:20251002231533_new_pr_SIONfwd101
Oct 2, 2025
Merged

{lib}[gompi/2025b] SIONfwd v1.0.1, SIONlib v1.7.7#24103
Micket merged 3 commits intoeasybuilders:developfrom
Thyre:20251002231533_new_pr_SIONfwd101

Conversation

@Thyre
Copy link
Copy Markdown
Collaborator

@Thyre Thyre commented Oct 2, 2025

(created using eb --new-pr)

…-2025b.eb and patches: SIONlib-1.7.7_better-support-aarch64.patch
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Oct 2, 2025

Updated software SIONlib-1.7.7-gompi-2025b.eb

Diff against SIONlib-1.7.7-GCCcore-14.3.0-tools.eb

easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-14.3.0-tools.eb

diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-14.3.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-gompi-2025b.eb
index 63b203a5fd..30f7d402d2 100644
--- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-14.3.0-tools.eb
+++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-gompi-2025b.eb
@@ -1,56 +1,45 @@
-# #
-# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
-#
-# Copyright:: Copyright 2016-2019 Juelich Supercomputing Centre, Germany
-# Authors::   Markus Geimer <[email protected]>
-# Modified 2017 by Andreas Henkel <[email protected]>
-# License::   3-clause BSD
-# #
-
-easyblock = 'ConfigureMake'
-
-name = 'SIONlib'
-version = '1.7.7'
-# Provide a stripped-down version with renamed symbols for tools,
-# see description for further details
-versionsuffix = '-tools'
-
-homepage = 'https://www.fz-juelich.de/en/ias/jsc/services/user-support/software-tools/sionlib'
-description = """
- SIONlib is a scalable I/O library for parallel access to task-local files.
- The library not only supports writing and reading binary data to or from
- several thousands of processors into a single or a small number of physical
- files, but also provides global open and close functions to access SIONlib
- files in parallel. This package provides a stripped-down installation of
- SIONlib for use with performance tools (e.g., Score-P), with renamed symbols
- to avoid conflicts when an application using SIONlib itself is linked against
- a tool requiring a different SIONlib version.
+easyblock = "ConfigureMake"
+name = "SIONlib"
+version = "1.7.7"
+
+homepage = 'http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html'
+description = """SIONlib is a scalable I/O library for the parallel access to
+task-local files. The library not only supports writing and reading
+binary data to or from from several thousands of processors into a
+single or a small number of physical files but also provides for
+global open and close functions to access SIONlib file in
+parallel. SIONlib provides different interfaces: parallel access using
+MPI, OpenMP, or their combination and sequential access for
+post-processing utilities.
 """
 
-toolchain = {'name': 'GCCcore', 'version': '14.3.0'}
+toolchain = {'name': 'gompi', 'version': '2025b'}
 
-source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl']
-sources = ['%(namelower)s-%(version)sl.tar.gz']
-# 1.7.7 was rereleased with code changes. Old checksum was:
-# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c
-checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc']
+source_urls = ['http://apps.fz-juelich.de/jsc/sionlib/download.php?version=%(version)s']
+sources = ['sionlib-%(version)s.tar.gz']
 
-builddependencies = [
-    ('binutils', '2.44'),
+checksums = [
+    {'sionlib-1.7.7.tar.gz': 'df98389f973501925d70d2c224bc50e39637bd76d522c25a8abd3d96d1c8adbc'},
 ]
 
-# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it
-if ARCH != 'x86_64':
-    preconfigopts = 'sed -i "s|PFLAG  = -m\\$(PREC)|PFLAG  = |" mf/Makefile.defs.linux-gomp* && '
+if ARCH == 'aarch64':
+    patches = ['SIONlib-1.7.7_better-support-aarch64.patch']
+    checksums += [
+        {'SIONlib-1.7.7_better-support-aarch64.patch':
+         '78baf4d8dd93f63a2b6ce81a1ba1917dd927b8691f119b34862f49813382e460'}
+    ]
 
-configopts = '--disable-cxx --disable-fortran --disable-ompi '
+dependencies = [('SIONfwd', '1.0.1')]
+builddependencies = [('pkgconf', '2.4.3')]
 
-# Comment it out if you have Xeon Phi:
-configopts += '--disable-mic '
+configopts = '--disable-mic --compiler=gnu --mpi=openmpi --disable-cxx '
+configopts += '--enable-sionfwd="$EBROOTSIONFWD" CFLAGS="$CFLAGS -fPIC" '
 
 sanity_check_paths = {
-    'files': ['bin/sionconfig'] +
-             ['lib/lib%s_64.a' % x for x in ['lsioncom', 'lsiongen', 'lsionser']],
+    'files': [
+        "bin/sionconfig",
+        ("lib64/libsioncom_64.a", "lib/libsionmpi_64.a", "lib64/libsionmpi_64.a"),
+    ],
     'dirs': []
 }
 
Diff against SIONlib-1.7.7-GCCcore-14.2.0-tools.eb

easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-14.2.0-tools.eb

diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-14.2.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-gompi-2025b.eb
index d80e6bde70..30f7d402d2 100644
--- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-14.2.0-tools.eb
+++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-gompi-2025b.eb
@@ -1,56 +1,45 @@
-# #
-# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
-#
-# Copyright:: Copyright 2016-2019 Juelich Supercomputing Centre, Germany
-# Authors::   Markus Geimer <[email protected]>
-# Modified 2017 by Andreas Henkel <[email protected]>
-# License::   3-clause BSD
-# #
-
-easyblock = 'ConfigureMake'
-
-name = 'SIONlib'
-version = '1.7.7'
-# Provide a stripped-down version with renamed symbols for tools,
-# see description for further details
-versionsuffix = '-tools'
-
-homepage = 'https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html'
-description = """
- SIONlib is a scalable I/O library for parallel access to task-local files.
- The library not only supports writing and reading binary data to or from
- several thousands of processors into a single or a small number of physical
- files, but also provides global open and close functions to access SIONlib
- files in parallel. This package provides a stripped-down installation of
- SIONlib for use with performance tools (e.g., Score-P), with renamed symbols
- to avoid conflicts when an application using SIONlib itself is linked against
- a tool requiring a different SIONlib version.
+easyblock = "ConfigureMake"
+name = "SIONlib"
+version = "1.7.7"
+
+homepage = 'http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html'
+description = """SIONlib is a scalable I/O library for the parallel access to
+task-local files. The library not only supports writing and reading
+binary data to or from from several thousands of processors into a
+single or a small number of physical files but also provides for
+global open and close functions to access SIONlib file in
+parallel. SIONlib provides different interfaces: parallel access using
+MPI, OpenMP, or their combination and sequential access for
+post-processing utilities.
 """
 
-toolchain = {'name': 'GCCcore', 'version': '14.2.0'}
+toolchain = {'name': 'gompi', 'version': '2025b'}
 
-source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl']
-sources = ['%(namelower)s-%(version)sl.tar.gz']
-# 1.7.7 was rereleased with code changes. Old checksum was:
-# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c
-checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc']
+source_urls = ['http://apps.fz-juelich.de/jsc/sionlib/download.php?version=%(version)s']
+sources = ['sionlib-%(version)s.tar.gz']
 
-builddependencies = [
-    ('binutils', '2.42'),
+checksums = [
+    {'sionlib-1.7.7.tar.gz': 'df98389f973501925d70d2c224bc50e39637bd76d522c25a8abd3d96d1c8adbc'},
 ]
 
-# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it
-if ARCH != 'x86_64':
-    preconfigopts = 'sed -i "s|PFLAG  = -m\\$(PREC)|PFLAG  = |" mf/Makefile.defs.linux-gomp* && '
+if ARCH == 'aarch64':
+    patches = ['SIONlib-1.7.7_better-support-aarch64.patch']
+    checksums += [
+        {'SIONlib-1.7.7_better-support-aarch64.patch':
+         '78baf4d8dd93f63a2b6ce81a1ba1917dd927b8691f119b34862f49813382e460'}
+    ]
 
-configopts = '--disable-cxx --disable-fortran --disable-ompi '
+dependencies = [('SIONfwd', '1.0.1')]
+builddependencies = [('pkgconf', '2.4.3')]
 
-# Comment it out if you have Xeon Phi:
-configopts += '--disable-mic '
+configopts = '--disable-mic --compiler=gnu --mpi=openmpi --disable-cxx '
+configopts += '--enable-sionfwd="$EBROOTSIONFWD" CFLAGS="$CFLAGS -fPIC" '
 
 sanity_check_paths = {
-    'files': ['bin/sionconfig'] +
-             ['lib/lib%s_64.a' % x for x in ['lsioncom', 'lsiongen', 'lsionser']],
+    'files': [
+        "bin/sionconfig",
+        ("lib64/libsioncom_64.a", "lib/libsionmpi_64.a", "lib64/libsionmpi_64.a"),
+    ],
     'dirs': []
 }
 
Diff against SIONlib-1.7.7-GCCcore-13.3.0-tools.eb

easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb

diff --git a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-gompi-2025b.eb
index ff0762c0c4..30f7d402d2 100644
--- a/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-GCCcore-13.3.0-tools.eb
+++ b/easybuild/easyconfigs/s/SIONlib/SIONlib-1.7.7-gompi-2025b.eb
@@ -1,56 +1,45 @@
-# #
-# This is an easyconfig file for EasyBuild, see https://github.com/easybuilders/easybuild
-#
-# Copyright:: Copyright 2016-2019 Juelich Supercomputing Centre, Germany
-# Authors::   Markus Geimer <[email protected]>
-# Modified 2017 by Andreas Henkel <[email protected]>
-# License::   3-clause BSD
-# #
-
-easyblock = 'ConfigureMake'
-
-name = 'SIONlib'
-version = '1.7.7'
-# Provide a stripped-down version with renamed symbols for tools,
-# see description for further details
-versionsuffix = '-tools'
-
-homepage = 'https://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html'
-description = """
- SIONlib is a scalable I/O library for parallel access to task-local files.
- The library not only supports writing and reading binary data to or from
- several thousands of processors into a single or a small number of physical
- files, but also provides global open and close functions to access SIONlib
- files in parallel. This package provides a stripped-down installation of
- SIONlib for use with performance tools (e.g., Score-P), with renamed symbols
- to avoid conflicts when an application using SIONlib itself is linked against
- a tool requiring a different SIONlib version.
+easyblock = "ConfigureMake"
+name = "SIONlib"
+version = "1.7.7"
+
+homepage = 'http://www.fz-juelich.de/ias/jsc/EN/Expertise/Support/Software/SIONlib/_node.html'
+description = """SIONlib is a scalable I/O library for the parallel access to
+task-local files. The library not only supports writing and reading
+binary data to or from from several thousands of processors into a
+single or a small number of physical files but also provides for
+global open and close functions to access SIONlib file in
+parallel. SIONlib provides different interfaces: parallel access using
+MPI, OpenMP, or their combination and sequential access for
+post-processing utilities.
 """
 
-toolchain = {'name': 'GCCcore', 'version': '13.3.0'}
+toolchain = {'name': 'gompi', 'version': '2025b'}
 
-source_urls = ['https://apps.fz-juelich.de/jsc/%(namelower)s/download.php?version=%(version)sl']
-sources = ['%(namelower)s-%(version)sl.tar.gz']
-# 1.7.7 was rereleased with code changes. Old checksum was:
-# 3b5072d8a32a9e9858d85dfe4dc01e7cfdbf54cdaa60660e760b634ee08d8a4c
-checksums = ['e37c42975b47dead4649d34fbcaf5a95d2257240039756a0d7f3c1ff312aebcc']
+source_urls = ['http://apps.fz-juelich.de/jsc/sionlib/download.php?version=%(version)s']
+sources = ['sionlib-%(version)s.tar.gz']
 
-builddependencies = [
-    ('binutils', '2.42'),
+checksums = [
+    {'sionlib-1.7.7.tar.gz': 'df98389f973501925d70d2c224bc50e39637bd76d522c25a8abd3d96d1c8adbc'},
 ]
 
-# remove -m64 flag from PFLAG variable in Makefiles for CPU architectures that don't support it
-if ARCH != 'x86_64':
-    preconfigopts = 'sed -i "s|PFLAG  = -m\\$(PREC)|PFLAG  = |" mf/Makefile.defs.linux-gomp* && '
+if ARCH == 'aarch64':
+    patches = ['SIONlib-1.7.7_better-support-aarch64.patch']
+    checksums += [
+        {'SIONlib-1.7.7_better-support-aarch64.patch':
+         '78baf4d8dd93f63a2b6ce81a1ba1917dd927b8691f119b34862f49813382e460'}
+    ]
 
-configopts = '--disable-cxx --disable-fortran --disable-ompi '
+dependencies = [('SIONfwd', '1.0.1')]
+builddependencies = [('pkgconf', '2.4.3')]
 
-# Comment it out if you have Xeon Phi:
-configopts += '--disable-mic '
+configopts = '--disable-mic --compiler=gnu --mpi=openmpi --disable-cxx '
+configopts += '--enable-sionfwd="$EBROOTSIONFWD" CFLAGS="$CFLAGS -fPIC" '
 
 sanity_check_paths = {
-    'files': ['bin/sionconfig'] +
-             ['lib/lib%s_64.a' % x for x in ['lsioncom', 'lsiongen', 'lsionser']],
+    'files': [
+        "bin/sionconfig",
+        ("lib64/libsioncom_64.a", "lib/libsionmpi_64.a", "lib64/libsionmpi_64.a"),
+    ],
     'dirs': []
 }
 

@Micket
Copy link
Copy Markdown
Contributor

Micket commented Oct 2, 2025

Test report by @Micket
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in total)
vera-icelake-build - Linux Rocky Linux 9.6, x86_64, Intel(R) Xeon(R) Silver 4316 CPU @ 2.30GHz, Python 3.9.21
See https://gist.github.com/Micket/9f421d9a6aefe15f8002bcdd472ff3dd for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 2, 2025

Test report by @Thyre
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in total)
Linux - Linux Arch Linux UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor (zen4), 1 x AMD Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] (device id: 0x7550, gfx: gfx1201, driver: 6.16.8-arch3-1), 1 x AMD Raphael (device id: 0x164e, gfx: gfx1036, driver: 6.16.8-arch3-1), Python 3.13.7
See https://gist.github.com/Thyre/ced456cfe18d089d664c04b25552d072 for a full test report.

@Thyre Thyre added the 2025b issues & PRs related to 2025b common toolchains label Oct 2, 2025
@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 2, 2025

Test report by @Thyre
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in total)
jpbl-s02-03 - Linux RHEL 9.5, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 570.133.20, Python 3.9.21
See https://gist.github.com/Thyre/391d53220da0ab30598396ccc61ce41a for a full test report.

@Micket Micket added this to the next release (5.2.0?) milestone Oct 2, 2025
@Micket Micket enabled auto-merge October 2, 2025 21:19
auto-merge was automatically disabled October 2, 2025 21:32

Head branch was pushed to by a user without write access

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 2, 2025

Test report by @Thyre
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in total)
Linux - Linux Arch Linux UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor (zen4), 1 x AMD Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] (device id: 0x7550, gfx: gfx1201, driver:6.16.8-arch3-1), 1 x AMD Raphael (device id: 0x164e, gfx: gfx1036, driver: 6.16.8-arch3-1), Python 3.13.7
See https://gist.github.com/Thyre/819d5ad8d5406db028195491c3459ad5 for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 2, 2025

Test report by @Thyre
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in total)
jpbl-s02-03 - Linux RHEL 9.5, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 570.133.20, Python 3.9.21
See https://gist.github.com/Thyre/49400dfcb6e0adadc5ef083c9abbb8e3 for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 2, 2025

@boegelbot please test @ jsc-zen3

@boegelbot
Copy link
Copy Markdown
Collaborator

@Thyre: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=24103 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24103 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 8138

Test results coming soon (I hope)...

Details

- notification for comment with ID 3363207780 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link
Copy Markdown
Collaborator

Test report by @boegelbot
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.6, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/32d6a30b25f6bc7244063929f3bfe4d0 for a full test report.

Copy link
Copy Markdown
Contributor

@Micket Micket left a comment

Choose a reason for hiding this comment

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

lgtm

@Micket Micket merged commit e1de3c1 into easybuilders:develop Oct 2, 2025
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2025b issues & PRs related to 2025b common toolchains new update

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants