Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enhance AOCC EasyBlock to work with LLVM 16 and newer #3458

Merged

Conversation

Thyre
Copy link
Contributor

@Thyre Thyre commented Sep 23, 2024

Enhances the AOCC EasyBlock so that internal LLVM versions newer than LLVM 16 map to the correct resource dir. In addition, update the list of AOCC to LLVM versions to the most up-to-date one, helping when writing AOCC EasyConfigs.

This PR is an alternative to #3437, where the version was mapped during the __init__ call of the EasyBlock, which could fail if the mapping table is used and did not represent the actual version.

Enhances the AOCC EasyBlock so that internal LLVM versions newer than
LLVM 16 map to the correct resource dir. In addition, update the list of
AOCC to LLVM versions to the most up-to-date one, helping when writing
AOCC EasyConfigs.

Signed-off-by: Jan André Reuter <j.reuter@fz-juelich.de>
@Thyre Thyre force-pushed the thyre-aocc-enhance-easyblock-for-llvm-16 branch from 267f336 to c581677 Compare September 23, 2024 15:14
@Thyre
Copy link
Contributor Author

Thyre commented Sep 23, 2024

Tested with easybuilders/easybuild-easyconfigs#21343, see easybuilders/easybuild-easyconfigs#21343 (comment)

If I manage to build GCCcore/12.2.0, I'll continue testing. My system GCC causes quite some issues when trying to build a GCCcore lower than GCC 13, probably due to NVPTX.

@Thyre
Copy link
Contributor Author

Thyre commented Sep 23, 2024

Test report by @Thyre

Overview of tested easyconfigs (in order)

  • SUCCESS AOCC-4.0.0-GCCcore-12.2.0.eb

Build succeeded for 1 out of 1 (1 easyconfigs in total)
Linux - Linux EndeavourOS UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor, 1 x NVIDIA NVIDIA GeForce RTX 3070, 560.35.03, Python 3.12.6
See https://gist.github.com/Thyre/da860d0b57ab4c087d74c3d86a8ec1c1 for a full test report.

Note: My GCCcore/12.2.0 is built without NVPTX, but this should not affect installing AOCC.

Copy link
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
Member

boegel commented Sep 25, 2024

@boegelbot please test @ jsc-zen3
EB_ARGS="AOCC-3.1.0-GCCcore-10.3.0.eb AOCC-3.2.0-GCCcore-11.3.0.eb AOCC-4.0.0-GCCcore-12.3.0.eb"

@boegel
Copy link
Member

boegel commented Sep 25, 2024

Test report by @boegel

Overview of tested easyconfigs (in order)

  • SUCCESS AOCC-3.1.0-GCCcore-10.3.0.eb
  • SUCCESS AOCC-3.2.0-GCCcore-11.3.0.eb
  • SUCCESS AOCC-4.0.0-GCCcore-12.3.0.eb

Build succeeded for 3 out of 3 (3 easyconfigs in total)
node3123.skitty.os - Linux RHEL 8.8, x86_64, Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz, Python 3.6.8
See https://gist.github.com/boegel/889948aa7238086e7268ca1c3e24de8e for a full test report.

@boegelbot
Copy link

@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=3458 EB_ARGS="AOCC-3.1.0-GCCcore-10.3.0.eb AOCC-3.2.0-GCCcore-11.3.0.eb AOCC-4.0.0-GCCcore-12.3.0.eb" EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3458 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

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

Test report by @boegelbot

Overview of tested easyconfigs (in order)

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants