Skip to content

Add option to impi easyblock to rebuild Fortran 2008 bindings#3678

Merged
boegel merged 7 commits intoeasybuilders:developfrom
Thyre:intel-mpi-rebuild-fortran-bindings
Apr 9, 2025
Merged

Add option to impi easyblock to rebuild Fortran 2008 bindings#3678
boegel merged 7 commits intoeasybuilders:developfrom
Thyre:intel-mpi-rebuild-fortran-bindings

Conversation

@Thyre
Copy link
Copy Markdown
Collaborator

@Thyre Thyre commented Mar 28, 2025

The Fortran 2008 bindings shiped with Intel MPI can cause
compilation failures when using CLASS(*) arguments.
This bug is known, and a solution for this given in the following
thread:

https://community.intel.com/t5/Intel-MPI-Library/MPI-f08-with-polymorphic-argument-CLASS/m-p/1590421

However, this bug is not yet included in Intel MPI releases to
preserve backwards compatibility. Instead, one needs to
rebuild the bindings themselves and replace them.
Add an option for this, and leave it disabled by default.
EasyConfigs can then decide if they want to rebuild these modules,
or preserve the backwards compatibility.

Thyre added 2 commits March 28, 2025 14:58
The Fortran 2008 bindings shiped with Intel MPI can cause
compilation failures when using `CLASS(*)` arguments.
This bug is known, and a solution for this given in the following
thread:

https://community.intel.com/t5/Intel-MPI-Library/MPI-f08-with-polymorphic-argument-CLASS/m-p/1590421

However, this bug is not yet included in Intel MPI releases to
preserve backwards compatibility. Instead, one needs to
rebuild the bindings themselves and replace them.
Add an option for this, and leave it disabled by default.
EasyConfigs can then decide if they want to rebuild these modules,
or preserve the backwards compatibility.

Signed-off-by: Jan André Reuter <j.reuter@fz-juelich.de>
Signed-off-by: Jan André Reuter <j.reuter@fz-juelich.de>
Comment thread easybuild/easyblocks/i/impi.py Outdated
Signed-off-by: Jan André Reuter <j.reuter@fz-juelich.de>
Comment thread easybuild/easyblocks/i/impi.py Outdated
@boegel boegel added this to the release after 5.0.0 milestone Apr 9, 2025
Comment thread easybuild/easyblocks/i/impi.py Outdated
move code to rebuild Fortran 2008 bindings to separate method in impi easyblock + use variables for paths used multiple times
@boegel boegel changed the title impi: Add option to rebuild Fortran 2008 bindings Add option to impi easyblock to rebuild Fortran 2008 bindings Apr 9, 2025
Copy link
Copy Markdown
Member

@boegel boegel left a comment

Choose a reason for hiding this comment

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

lgtm

@boegel
Copy link
Copy Markdown
Member

boegel commented Apr 9, 2025

@boegelbot please test @ jsc-zen3
EB_ARGS="--installpath /tmp/$USER impi-2021.2.0-intel-compilers-2021.2.0.eb impi-2021.13.0-intel-compilers-2024.2.0.eb"

@boegelbot
Copy link
Copy Markdown

@boegel: 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=3678 EB_ARGS="--installpath /tmp/$USER impi-2021.2.0-intel-compilers-2021.2.0.eb impi-2021.13.0-intel-compilers-2024.2.0.eb" EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3678 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

Details

- notification for comment with ID 2790614807 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

Test report by @boegelbot

Overview of tested easyconfigs (in order)

  • SUCCESS impi-2021.2.0-intel-compilers-2021.2.0.eb
  • SUCCESS impi-2021.13.0-intel-compilers-2024.2.0.eb

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

@boegel boegel merged commit a0c7a36 into easybuilders:develop Apr 9, 2025
17 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants