Skip to content

symlink CUPTI files to standard locations in CUDA installation#3791

Merged
boegel merged 2 commits intoeasybuilders:developfrom
lexming:cuda-cupti
Jul 3, 2025
Merged

symlink CUPTI files to standard locations in CUDA installation#3791
boegel merged 2 commits intoeasybuilders:developfrom
lexming:cuda-cupti

Conversation

@lexming
Copy link
Copy Markdown
Contributor

@lexming lexming commented Jun 20, 2025

Needed by easybuilders/easybuild-easyconfigs#22921

This PR adds symlinks of all files under $CUDA_ROOT/extras/CUPTI into the standard locations of the CUDA installation. Symlinks use relative paths to keep the whole installation transferable.

Part of the outcome in $CUDA_ROOT/include:

[...]
0644  13k  cufft.h
0644  20k  cufftw.h
0644  11k  cufftXt.h
0644  29k  cufile.h
0777    -  cupti.h -> ../../../extras/CUPTI/include/cupti.h
0777    -  cupti_activity.h -> ../../../extras/CUPTI/include/cupti_activity.h
0777    -  cupti_activity_deprecated.h -> ../../../extras/CUPTI/include/cupti_activity_deprecated.h
0777    -  cupti_callbacks.h -> ../../../extras/CUPTI/include/cupti_callbacks.h
0777    -  cupti_checkpoint.h -> ../../../extras/CUPTI/include/cupti_checkpoint.h
0777    -  cupti_common.h -> ../../../extras/CUPTI/include/cupti_common.h
0777    -  cupti_driver_cbid.h -> ../../../extras/CUPTI/include/cupti_driver_cbid.h
[...]

@lexming lexming added the change label Jun 20, 2025
@lexming
Copy link
Copy Markdown
Contributor Author

lexming commented Jun 20, 2025

@boegelbot please test @ jsc-zen3
EB_ARGS="CUDA-12.6.0.eb"

@boegelbot
Copy link
Copy Markdown

@lexming: 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=3791 EB_ARGS="CUDA-12.6.0.eb" EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3791 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

Details

- notification for comment with ID 2991292283 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 CUDA-12.6.0.eb

Build succeeded for 1 out of 1 (1 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/5a26fa79999af68eb1d9819ab3979efa for a full test report.

@Flamefire
Copy link
Copy Markdown
Contributor

Test report by @Flamefire

Overview of tested easyconfigs (in order)

  • SUCCESS CUDA-12.6.0.eb

Build succeeded for 1 out of 1 (1 easyconfigs in total)
n1071 - Linux RHEL 8.9 (Ootpa), x86_64, Intel(R) Xeon(R) Platinum 8470 (sapphirerapids), Python 3.9.18
See https://gist.github.com/Flamefire/9753d0b2a00f3c701b38adde01f956d8 for a full test report.

@Flamefire
Copy link
Copy Markdown
Contributor

Test report by @Flamefire

Overview of tested easyconfigs (in order)

  • SUCCESS CUDA-12.6.0.eb

Build succeeded for 1 out of 1 (1 easyconfigs in total)
i7008 - Linux Rocky Linux 8.9 (Green Obsidian), x86_64, AMD EPYC 7702 64-Core Processor (zen2), Python 3.9.18
See https://gist.github.com/Flamefire/538feb43a7cdb992fcf6bedf20bef76d for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator

Thyre commented Jun 20, 2025

@boegelbot please test @ jsc-zen3
EB_ARGS="CUDA-12.8.0.eb Score-P-9.0-gompi-2025a-CUDA-12.8.0.eb"

@boegelbot
Copy link
Copy Markdown

@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=3791 EB_ARGS="CUDA-12.8.0.eb Score-P-9.0-gompi-2025a-CUDA-12.8.0.eb" EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3791 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

Details

- notification for comment with ID 2992647978 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 CUDA-12.8.0.eb
  • SUCCESS Score-P-9.0-gompi-2025a-CUDA-12.8.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/e7891eb9990687272d6b47d075ce4c20 for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator

Thyre commented Jun 24, 2025

Test report by @Thyre

Overview of tested easyconfigs (in order)

  • SUCCESS CUDA-12.6.0.eb
  • SUCCESS libunwind-1.8.1-GCCcore-13.3.0.eb
  • SUCCESS UCX-1.16.0-GCCcore-13.3.0.eb
  • SUCCESS UCX-CUDA-1.16.0-GCCcore-13.3.0-CUDA-12.6.0.eb
  • SUCCESS PDT-3.25.2-GCCcore-13.3.0.eb
  • SUCCESS Score-P-8.4-gompi-2024a-CUDA-12.6.0.eb

Build succeeded for 6 out of 6 (2 easyconfigs in total)
ZAM054 - Linux Zorin OS 17, x86_64, 12th Gen Intel(R) Core(TM) i7-1260P, 1 x NVIDIA NVIDIA GeForce MX550, 565.57.01, Python 3.10.12
See https://gist.github.com/Thyre/f93b3c74811db62008aa8f26a0b64423 for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator

Thyre commented Jun 24, 2025

Doesn't seem to break anything in Score-P, where v8.4 has a very naive check for CUPTI, and v9.0 has an improved check.
So from my side, this looks good.

@boegel boegel added enhancement and removed change labels Jul 2, 2025
@boegel boegel modified the milestones: release after 5.1.1, 5.1.1 Jul 2, 2025
Comment thread easybuild/easyblocks/c/cuda.py Outdated
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 Jul 3, 2025

Test report by @boegel

Overview of tested easyconfigs (in order)

  • SUCCESS CUDA-11.3.1.eb
  • SUCCESS CUDA-12.1.1.eb
  • SUCCESS CUDA-12.4.0.eb
  • SUCCESS CUDA-12.9.0.eb

Build succeeded for 4 out of 4 (4 easyconfigs in total)
node3305.joltik.os - Linux RHEL 9.4, x86_64, Intel(R) Xeon(R) Gold 6242 CPU @ 2.80GHz (cascadelake), 1 x NVIDIA Tesla V100-SXM2-32GB, 570.133.20, Python 3.9.18
See https://gist.github.com/boegel/5520cedcaafecb91b215ccf635f65fa7 for a full test report.

@boegel boegel merged commit 1ef40de into easybuilders:develop Jul 3, 2025
17 checks passed
@lexming lexming deleted the cuda-cupti branch July 9, 2025 09:11
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.

5 participants