Skip to content

{lang}[foss/2025b] numba-cuda v0.20.0 w/ CUDA 12.9.1#24081

Merged
Micket merged 3 commits intoeasybuilders:developfrom
Thyre:20251001164945_new_pr_numba-cuda0200
Oct 15, 2025
Merged

{lang}[foss/2025b] numba-cuda v0.20.0 w/ CUDA 12.9.1#24081
Micket merged 3 commits intoeasybuilders:developfrom
Thyre:20251001164945_new_pr_numba-cuda0200

Conversation

@Thyre
Copy link
Copy Markdown
Collaborator

@Thyre Thyre commented Oct 1, 2025

(created using eb --new-pr)

Requires:


This EasyConfig adds modern CUDA support to the numba installation. The CUDA module in numba itself is pretty much dead, and will not properly work with the latest CUDA & NVIDIA drivers anymore. Instead, users are advised to use the numba-cuda package instead.

Installing numba-cuda has several additional dependencies. In addition, numba-cuda tries to override numba.cuda with a .pth file. While this typically works in a venv or a user/site-wide installation, this breaks with EasyBuild due to .pth files being ignored with PYTHONPATH. See here for more information.

To get this to work, we add a sitecustomize.py file in the installation directory which adds it to the site dirs. This lets Python pick up the .pth file again. The functionality is checked in the sanity check.


The test step will fail one test on systems where not much GPU memory is present. I can confirm that <4GB is certainly not enough, maybe even more is needed.

@Thyre Thyre added new 2025b issues & PRs related to 2025b common toolchains labels Oct 1, 2025
@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 1, 2025

Expected failure due to insufficient VRAM


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

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 1, 2025

Test report by @Thyre
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN, 1 x NVIDIA NVIDIA GH200 480GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Thyre/bdff0781fbe1e9f2180719d5ddb3d2c4 for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 2, 2025

With --ignore-test-failure to ignore the single failing test (see above)


Test report by @Thyre
SUCCESS
Build succeeded (with --ignore-test-failure) for 1 out of 1 (1 easyconfigs in total)
ZAM054 - Linux Zorin OS 17, x86_64, 12th Gen Intel(R) Core(TM) i7-1260P, 1 x NVIDIA NVIDIA GeForce MX550, 580.65.06, Python 3.10.12
See https://gist.github.com/Thyre/501ea2bd33d3765cb637ad2e001d29bc for a full test report.

@Micket Micket added this to the next release (5.2.0?) milestone Oct 3, 2025
@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 4, 2025

@boegelbot please test @ jsc-zen3-a100

@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=24081 EB_ARGS= EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24081 --ntasks=8 --partition=jsczen3g --gres=gpu:1 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

Details

- notification for comment with ID 3368314279 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 1 out of 1 (1 easyconfigs in total)
jsczen3g1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.6, x86_64, AMD EPYC-Milan Processor (zen3), 1 x NVIDIA NVIDIA A100 80GB PCIe, 580.82.07, Python 3.9.21
See https://gist.github.com/boegelbot/6653d47197271fb6e70b19dae62bda8c for a full test report.

@Micket
Copy link
Copy Markdown
Contributor

Micket commented Oct 4, 2025

Test report by @Micket
FAILED
Build succeeded for 1 out of 2 (1 easyconfigs in total)
vera-r07-05 - Linux Rocky Linux 9.6, x86_64, Intel(R) Xeon(R) Gold 6338 CPU @ 2.00GHz, 1 x NVIDIA NVIDIA A100-SXM4-40GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Micket/ed51175aab965af2a016e005ea63c4b0 for a full test report.

Comment thread easybuild/easyconfigs/n/numba-cuda/numba-cuda-0.20.0-foss-2025b-CUDA-12.9.1.eb Outdated
@Thyre Thyre marked this pull request as draft October 10, 2025 17:12
@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 10, 2025

Test report by @Thyre
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
FAILED
Build succeeded for 0 out of 1 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Thyre/a81ee17f646a89abd6ce30735d25c0ac for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 10, 2025

Hm, the test worked. Now we're failing the sanity check...
The EasyBlock PR also fails the CI.


Test report by @Thyre
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
FAILED
Build succeeded for 0 out of 1 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Thyre/6a9c903d7a1a94413fa53596126e1e1c for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 10, 2025

Argh, PythonBundle implements exactly the same code as PythonPackage, so the code to check for .pth files isn't run because it's using the PythonBundle one.

Need to adapt the PR a bit more...

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 10, 2025

--module-only test


Test report by @Thyre
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Thyre/9290d454455d559aa48bff791b152135 for a full test report.

@Thyre Thyre marked this pull request as ready for review October 10, 2025 18:14
@Thyre Thyre requested a review from Micket October 10, 2025 18:14
@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 10, 2025

@boegelbot please test @ jsc-zen3-a100
EB_ARGS="--include-easyblocks-from-pr=3953"

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 10, 2025

Test report by @Thyre
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Thyre/810d4e49b1ccc25036b1035bf984e81c for a full test report.

@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=24081 EB_ARGS="--include-easyblocks-from-pr=3953" EB_CONTAINER= EB_REPO=easybuild-easyconfigs EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_24081 --ntasks=8 --partition=jsczen3g --gres=gpu:1 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

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

Test results coming soon (I hope)...

Details

- notification for comment with ID 3391640683 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
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jsczen3g1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.6, x86_64, AMD EPYC-Milan Processor (zen3), 1 x NVIDIA NVIDIA A100 80GB PCIe, 580.82.07, Python 3.9.21
See https://gist.github.com/boegelbot/5d20c64b3e2c145b73ca6ecf70731e65 for a full test report.

@Thyre
Copy link
Copy Markdown
Collaborator Author

Thyre commented Oct 13, 2025

Test report by @Thyre
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
jrc0900.jureca - Linux Rocky Linux 9.6, AArch64, ARM UNKNOWN (neoverse_v2), 1 x NVIDIA NVIDIA GH200 480GB, 580.65.06, Python 3.9.21
See https://gist.github.com/Thyre/69d75b36a45e5e09df439eafa0177824 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
Copy link
Copy Markdown
Contributor

Micket commented Oct 14, 2025

Test report by @Micket
Using easyblocks from PR(s) easybuilders/easybuild-easyblocks#3953
SUCCESS
Build succeeded for 1 out of 1 (1 easyconfigs in total)
vera-r07-03 - Linux Rocky Linux 9.6, x86_64, Intel(R) Xeon(R) Gold 6338 CPU @ 2.00GHz, 1 x NVIDIA NVIDIA A40, 580.65.06, Python 3.9.21
See https://gist.github.com/Micket/11ad660a0241a060cd5f280209dfe73b for a full test report.

@Micket Micket merged commit 890803b into easybuilders:develop Oct 15, 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 ready-to-review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants