-
-
Notifications
You must be signed in to change notification settings - Fork 29
Upgrade to CUDA 13.0 #323
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
base: main
Are you sure you want to change the base?
Upgrade to CUDA 13.0 #323
Conversation
CUDA 13.0 requires architecture `sm_75` or higher, and renamed `sm_101` to `sm_110`. To build for these, maintainers will need to modify their existing list of specified architectures (e.g. `CMAKE_CUDA_ARCHITECTURES`, `TORCH_CUDA_ARCH_LIST`, etc.) for their package. Since CUDA 12.8, the conda-forge nvcc package now sets `CUDAARCHS` and `TORCH_CUDA_ARCH_LIST` in its activation script to a string containing all of the supported real architectures plus the virtual architecture of the latest. Recipes for packages who use these variables to control their build but do not want to build for all supported architectures will need to override these variables in their build script. ref: https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#new-features > [[!IMPORTANT]] > Remember to update any CUDA 11/12 specific selector syntax in the recipe to include > CUDA 13. For example `# [(cuda_compiler_version or "None").startswith("12")]` > might be replaced with `# [cuda_compiler_version != "None"]`.
|
Hi! This is the friendly automated conda-forge-linting service. I just wanted to let you know that I linted all conda-recipes in your PR ( I do have some suggestions for making it better though... For recipe/meta.yaml:
This message was generated by GitHub Actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/17671381198. Examine the logs at this URL for more detail. |
mostly just indentation change
|
|
This will also need at least |
Crazy, because CUDA itself has an upper bound on the allowed clang versions, so that'll mean we'll need another CUDA 13.{x>0} to become available with clang 22 next year. What I'm taking away from this, is that CUDA 13 was just not really tested sufficiently with clang on linux? Any thoughts @conda-forge/cuda? |
|
I might be missing some context here, so apologies in advance if this is information you already know. The most recent CUDA release, 13.0, has support for the following compilers: https://docs.nvidia.com/cuda/cuda-installation-guide-linux/index.html#id61
We enforce the GCC bounds in conda-forge here: https://github.com/conda-forge/cuda-nvcc-impl-feedstock/blob/8022b1c0e056b6d70679c65904e683fd1cc23cc8/recipe/meta.yaml#L1 Maybe we need to do the same for clang, to align with that table of supported compilers? Would that help or hurt in this scenario? It seems like LLVM 21 was released on August 26, after the release of CUDA 13.0 (it is probably not supported for timeline reasons). https://github.com/llvm/llvm-project/releases/tag/llvmorg-21.1.0 It seems like LLVM 22 isn't released yet. Where is the requirement for clang 22 coming from? |
This is coming from device code compilation. |
It doesn't make a difference. CUDA 12.9 actually does compile with |
did you mean "doesn't like to use GCC anymore"? |
It does not like either. In 0.7.1, it forced me to use |
Yes, If you are using clang-cuda you will need to wait for clang-22 to be released as that will be the first release to handle the removal of long deprecated headers that occured in CUDA 13. The table that @bdice is accurate if you intended to use |
(Upstream here): This isn't quite accurate. JAX only supports |
|
Thanks for the info @bdice & @hawkinsp! We're don't have a 100% vanilla build (e.g. utilizing our own abseil, cross-compilation setup, toolchain injection into bazel etc.), which might be the reason @xhochy ran into additional issues with
Also, I don't mind building a complete toolchain from upstream main into the |
|
I got some error while building with |
Can't miss the chance to quote some of my absolute favourite etymology [my bold, italics in original]:
😊 |
This PR has been triggered in an effort to update cuda130.
Notes and instructions for merging this PR:
Please note that if you close this PR we presume that the feedstock has been rebuilt, so if you are going to perform the rebuild yourself don't close this PR until the your rebuild has been merged.
Here are some more details about this specific migrator:
If this PR was opened in error or needs to be updated please add the
bot-rerunlabel to this PR. The bot will close this PR and schedule another one. If you do not have permissions to add this label, you can use the phrase@conda-forge-admin, please rerun botin a PR comment to have theconda-forge-adminadd it for you.This PR was created by the regro-cf-autotick-bot. The regro-cf-autotick-bot is a service to automatically track the dependency graph, migrate packages, and propose package version updates for conda-forge. Feel free to drop us a line if there are any issues! This PR was generated by https://github.com/regro/cf-scripts/actions/runs/17661131741 - please use this URL for debugging.