Skip to content

CI: CUDA 13.4 prerelease toolkit install and wheel builds - #2432

Draft
Andy-Jost wants to merge 20 commits into
NVIDIA:mainfrom
Andy-Jost:ajost/ci-ctk-13.4-prerelease
Draft

CI: CUDA 13.4 prerelease toolkit install and wheel builds#2432
Andy-Jost wants to merge 20 commits into
NVIDIA:mainfrom
Andy-Jost:ajost/ci-ctk-13.4-prerelease

Conversation

@Andy-Jost

Copy link
Copy Markdown
Contributor

Summary

Teach CI how to install CUDA 13.4 Developer Preview and build wheels through the ordinary pipeline on all four platform combinations (Linux/Windows × x86_64/ARM64).

CUDA 13.4 preview is not published via the usual redistrib_*.json manifest:

  • Linux — Debian packages from packages.nvidia.com
  • Windows — local .exe installers (~3.6 GB each), extracted with 7-Zip into the existing mini-CTK layout

Key changes:

  • Add a prerelease channel to fetch_ctk, selected via cuda.build.channel in ci/versions.yml
  • Fold prerelease builds into the regular ci.yml matrix (all supported Python versions on Linux; Windows x86_64 re-enabled)
  • Add prepare-windows-ctk to warm the shared CTK cache before the Windows matrix
  • Add a Windows ARM64 canary build (windows-11-arm, Python 3.12, current-ctk-only)
  • Defer GPU runtime testing on Windows for prerelease; wheel builds are the goal for now

Related to #2431 (Mike is keeping that PR for his own iteration). This branch is for Andy's CI testing, especially Windows and ARM64.

Expected CI behavior

Job Expected result
fetch_ctk on all platforms Should succeed (toolkit download + setup)
Linux wheel builds May fail at compile until 13.4 bindings land (#2423)
Windows wheel builds Same compile dependency; installer extraction is the new unknown
Windows GPU tests Skipped for prerelease channel
Windows ARM64 canary Runs only when cuda.build.channel == prerelease

Test plan

  • Unit tests for fetch_ctk_redistrib.py preview installer resolution
  • Pre-commit / YAML lint locally
  • Verify Linux fetch_ctk succeeds in CI
  • Verify Windows installer download + 7-Zip extraction in CI
  • Confirm wheel compile succeeds once Prepare for CTK 13.4 #2423 merges

@github-actions github-actions Bot added the CI/CD CI/CD infrastructure label Jul 27, 2026
@Andy-Jost

Copy link
Copy Markdown
Contributor Author

/ok to test

mdboom and others added 4 commits July 27, 2026 16:35
Windows preview toolkits ship as local installers rather than redistributable
archives, so teach fetch-ctk to download and extract them and re-enable
Windows wheel builds in the ordinary CI matrix, including a win-arm64 canary.
The local preview installer bundles per-component archives rather than a
flat CUDAToolkit tree, so extract the needed component directories with 7-Zip
and merge them into the layout fetch_ctk expects.
Use a single 7-Zip pass, merge directly into the cache staging dir via a
separate work directory, and drop prerelease-only unit tests that CI already
exercises end to end.
@Andy-Jost
Andy-Jost force-pushed the ajost/ci-ctk-13.4-prerelease branch from eaba910 to 1ff67b7 Compare July 27, 2026 21:36
@github-actions github-actions Bot added cuda.bindings Everything related to the cuda.bindings module cuda.core Everything related to the cuda.core module cuda.pathfinder Everything related to the cuda.pathfinder module labels Jul 27, 2026
@Andy-Jost
Andy-Jost marked this pull request as draft July 27, 2026 21:37
@copy-pr-bot

copy-pr-bot Bot commented Jul 27, 2026

Copy link
Copy Markdown
Contributor

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.

Merge component libs into lib/x64 or lib/arm64 so cuda_bindings can find
cudart_static.lib, and bump the prerelease cache key to drop stale flat-lib entries.
@Andy-Jost

Copy link
Copy Markdown
Contributor Author

/ok to test

Stale Windows prerelease caches were purged manually; the lib/x64 merge fix
remains in fetch_ctk_redistrib.py.
@Andy-Jost

Copy link
Copy Markdown
Contributor Author

/ok to test

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

CI/CD CI/CD infrastructure cuda.bindings Everything related to the cuda.bindings module cuda.core Everything related to the cuda.core module cuda.pathfinder Everything related to the cuda.pathfinder module

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants