Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

feat: add CUDA graph capture modes

Open
#1,429 0 comments 0 reactions 0 assignees View on GitHub

Maintainers usually reply within 2 days

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
25/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
rust
Domain
backend

Research direction

The original work adds capture modes in cuda-async/src/cuda_graph.rs and exercises them in cuda-async/tests/cuda_graph.rs, but its pull request was closed after the repository moved and the branch conflicts with the new main. Read the "Transplanting a cutile-rs pull request" section in AGENTS.md to replay the work, then resolve those conflicts and run the listed cuda-async checks and tests. Done means the capture modes and GPU-gated tests are integrated in NVIDIA/cuda-rust.

Written by the indexing model from the issue text.

Description

cutile-rs post-migration-pr

Tracks pull request NVlabs/cutile-rs#254 (https://github.com/NVlabs/cutile-rs/pull/254) by @honeyspoon, opened 2026-09-01: feat: add CUDA graph capture modes. As of 2026-10-07 the branch conflicts with cutile-rs main in: cuda-async/src/cuda_graph.rs, cuda-async/tests/cuda_graph.rs.

@honeyspoon: that repository has moved here and is being archived, so the pull request is closed there, not rejected. If you want to continue the work, please recreate it against NVIDIA/cuda-rust. AGENTS.md in NVIDIA/cuda-rust has a "Transplanting a cutile-rs pull request" section that lets an agent do the replay (it fetches pull/254/head from NVlabs/cutile-rs, keeps your authorship and sign-off, and maps the moved paths).


Original description:

Why

cuda-async always begins stream capture in relaxed mode. Callers that need CUDA to detect interfering work from the current thread or process currently have to bypass the graph API.

What changed

  • Add CaptureMode::{Global, ThreadLocal, Relaxed}.
  • Add explicit-mode variants for operation and scoped graph capture.
  • Re-export CaptureMode from the prelude.
  • Keep existing capture methods unchanged, with relaxed mode as their default.
  • Exercise both capture paths with every mode in the GPU-gated graph tests.

This does not change graph instantiation, upload, replay, or ownership behavior.

Validation

  • cargo fmt --all -- --check
  • cargo check -p cuda-async --all-targets
  • cargo test -p cuda-async --test cuda_graph --no-run
  • cargo test -p cuda-async --doc
  • full workspace Clippy, compile-only, and CPU suites passed before splitting the independent changes
Dominant language
Rust
Stars
3.8k
Forks
325
Avg merge
6d 8h
Merged PRs (30d)
66

Getting set up

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from NVIDIA/cuda-rust

All issues in NVIDIA/cuda-rust

Similar issues

More Rust issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.