Skip to content

Add a native Rust provider for CUB block load and store - #12088

Draft
tpn wants to merge 3 commits into
NVIDIA:mainfrom
tpn:codex/cuda-coop-rust-r01
Draft

tpn wants to merge 3 commits into
NVIDIA:mainfrom
tpn:codex/cuda-coop-rust-r01

Conversation

@tpn

@tpn tpn commented Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Rust kernel compilation needs CUB specializations whose scratch requirements come from the same native compilation. This adds a host-only Rust provider for i32 Direct and Transpose block Load/Store, returning LTO-IR, stable symbols and exact storage metadata.

The compatibility update selects Rust 1.99.1 for workspace checks while retaining the provider’s Rust 1.85 minimum. The provider implementation and native test cases are unchanged. Focused owning diff.

Host tests, strict Clippy/rustdoc, formatting, the Rust guide and provider MSRV checks pass. All 16 original native specializations pass with deterministic repeated compilation, exact scratch layouts and the existing rejection cases. This host-only provider does not launch GPU kernels.

Create a host-only Cargo workspace that specializes selected CUB forms
through NVRTC and reports exact scratch layouts with their LTO output.
Bind specialization identities to source, headers and toolkit bytes.
Include a runnable provider example, Rust guide and CPU checks.

Signed-off-by: Trent Nelson <trent@trent.me>
@copy-pr-bot

copy-pr-bot Bot commented Oct 20, 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.

@github-project-automation github-project-automation Bot moved this to Todo in CCCL Oct 20, 2026
@cccl-authenticator-app cccl-authenticator-app Bot moved this from Todo to In Progress in CCCL Oct 20, 2026
Install the pinned toolchain without updating rustup itself.

Signed-off-by: Trent Nelson <trent@trent.me>
Keep the owning implementation and tests unchanged while applying
its scoped compiler, lock and documentation compatibility updates.

Signed-off-by: Trent Nelson <trent@trent.me>

This branch has not been deployed

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

Labels

None yet

Projects

Status: In Progress

Development

Successfully merging this pull request may close these issues.

1 participant