Skip to content

[WIP] Initial attempt at CUDA 13 support / drop CUDA 11 #370

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

Draft
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

gmarkall
Copy link
Contributor

@gmarkall gmarkall commented Aug 4, 2025

Initial draft of support / test on CI.

Copy link

copy-pr-bot bot commented Aug 4, 2025

Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually.

Contributors can view more details about this message here.

@gmarkall
Copy link
Contributor Author

gmarkall commented Aug 4, 2025

/ok to test

@gmarkall
Copy link
Contributor Author

gmarkall commented Aug 4, 2025

/ok to test

@brandon-b-miller
Copy link
Contributor

Can't comment on the exact line but we should remove NUMBA_CUDA_ENABLE_MINOR_VERSION_COMPATIBILITY docs/source/reference/envvars.rst

@gmarkall gmarkall added the 2 - In Progress Currently a work in progress label Aug 5, 2025
@gmarkall
Copy link
Contributor Author

gmarkall commented Aug 7, 2025

/ok to test

Copy link
Contributor

@bdice bdice left a comment

Choose a reason for hiding this comment

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

This'll be a near-term need for RAPIDS since we have to adopt numba-cuda to get driver 580 to work. I recognize this is a draft, just leaving a couple comments that might help get this closer.

Conda users can install the CUDA Toolkit into a conda environment.

For CUDA 12::
Conda users can install the CUDA Toolkit into a conda environment::

$ conda install -c conda-forge numba-cuda "cuda-version>=12.0"
Copy link
Contributor

Choose a reason for hiding this comment

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

This will allow cuda-version 13.0 as written.

Suggested change
$ conda install -c conda-forge numba-cuda "cuda-version>=12.0"
$ conda install -c conda-forge numba-cuda "cuda-version=12"


$ pip install numba-cuda[cu12]
$ conda install -c conda-forge numba-cuda "cuda-version>=13.0"
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
$ conda install -c conda-forge numba-cuda "cuda-version>=13.0"
$ conda install -c conda-forge numba-cuda "cuda-version=13"

numba_include = f"{os.path.join(numba_cuda_path, 'include', '11')}"
else:
numba_include = f"{os.path.join(numba_cuda_path, 'include', '12')}"
numba_include = f"{os.path.join(numba_cuda_path, 'include', '12')}"
Copy link
Contributor

Choose a reason for hiding this comment

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

Might need additional logic for CUDA 13.

cu13 = [
"cuda-bindings==13.0.*",
"cuda-core==0.3.*",
"cuda-python==13.0.*", # supports all CTK 12.x
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
"cuda-python==13.0.*", # supports all CTK 12.x
"cuda-python==13.0.*", # supports all CTK 13.x

Comment on lines +37 to +40
"nvidia-cuda-nvcc=13.*", # for libNVVM
"nvidia-cuda-runtime=13.*",
"nvidia-cuda-nvrtc=13.*",
"nvidia-nvjitlink=13.*"
Copy link
Contributor

Choose a reason for hiding this comment

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

I think CI is failing because of incompatible dependency specifiers.

 configuration error: `project.optional-dependencies.cu13[3]` must be pep508
Suggested change
"nvidia-cuda-nvcc=13.*", # for libNVVM
"nvidia-cuda-runtime=13.*",
"nvidia-cuda-nvrtc=13.*",
"nvidia-nvjitlink=13.*"
"nvidia-cuda-nvcc==13.*", # for libNVVM
"nvidia-cuda-runtime==13.*",
"nvidia-cuda-nvrtc==13.*",
"nvidia-nvjitlink==13.*"

test-cu12 = [
"numba-cuda[test]",
"nvidia-curand-cu12",
]
test-cu13 = [
"numba-cuda[test]",
"nvidia-curand=10.4.*",
Copy link
Contributor

Choose a reason for hiding this comment

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

Suggested change
"nvidia-curand=10.4.*",
"nvidia-curand==10.4.*",

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2 - In Progress Currently a work in progress
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants