Skip to content

Add Rust cooperative Run Length Decode - #12247

Draft
tpn wants to merge 13 commits into
NVIDIA:mainfrom
tpn:codex/cuda-coop-rust-run-length-decode
Draft

tpn wants to merge 13 commits into
NVIDIA:mainfrom
tpn:codex/cuda-coop-rust-run-length-decode

Conversation

@tpn

@tpn tpn commented Oct 24, 2026 •

Copy link
Copy Markdown
Contributor

Add Run Length Decode windows and checked destination writes. Typed run lengths, fresh decoded payloads and scratch completion preserve the CUB operation contracts.

Builds on #12246. The owning comparison isolates this review unit; the GitHub diff against main is cumulative.

Validation on the reconstructed layer: formatting, host tests, clippy and docs, native provider coverage and standalone public examples on CUDA 13.3 / sm_120. Historical broader diagnostics, sanitizer and profile evidence retains its original source attribution.

This PR remains draft.

@copy-pr-bot

copy-pr-bot Bot commented Oct 24, 2026

Copy link
Copy Markdown
Contributor

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

tpn added 13 commits October 24, 2026 17:38
Provide the Rust payload, group and scratch contracts, native CUB
provider and Oxide integration with complete Block and Warp I/O.

Signed-off-by: Trent Nelson <[email protected]>
Expose Block and Warp scans with explicit payload validity,
prefix registration and native provider integration.

Signed-off-by: Trent Nelson <[email protected]>
Avoid copying inactive batch output lanes while preserving active
results and add focused coverage for narrow output batches.

Signed-off-by: Trent Nelson <[email protected]>
Provide scalar and payload reductions with validity-aware results.
Include checked stateless and uniform i32 capture callbacks at their
first public consumer, together with the native callback ABI.

Signed-off-by: Trent Nelson <[email protected]>
Preserve the batch dimension and per-batch output validity while using
the CUB output-copy guard. Include the provider shape correction.

Signed-off-by: Trent Nelson <[email protected]>
Expose complete Block and Warp exchange operations and Block shifts
with explicit layout, output validity and scratch completion.

Signed-off-by: Trent Nelson <[email protected]>
Provide neighboring-item transforms and head/tail flags with typed
neighbor controls, payload validity and explicit scratch completion.

Signed-off-by: Trent Nelson <[email protected]>
Expose Block histogram algorithms with typed bin controls and fresh
output ownership through the shared native provider.

Signed-off-by: Trent Nelson <[email protected]>
Group complete radix key, pair and rank operations with their
validity, layout, bit-range and scratch contracts.

Signed-off-by: Trent Nelson <[email protected]>
Provide Block and Warp key and pair sorting with partial inputs.
Include the supported stateless full-input i32 Block comparator at
its owning family and retain the checked callback ABI.

Signed-off-by: Trent Nelson <[email protected]>
Provide minimum and maximum key and pair selection with full and
partial input contracts, typed controls and explicit completion.

Signed-off-by: Trent Nelson <[email protected]>
Provide windowed and output-directed decoding with typed run lengths,
fresh decoded payloads and explicit scratch completion.

Signed-off-by: Trent Nelson <[email protected]>
@tpn
tpn force-pushed the codex/cuda-coop-rust-run-length-decode branch from 4c5794c to 9d5615e Compare October 25, 2026 01:33
@copy-pr-bot

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

@tpn tpn changed the title [Rust] Add Block Run Length Decode Add Rust cooperative Run Length Decode Oct 25, 2026

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