Skip to content

ptx-schedule: classify grid dependency control sites - #1214

Open
uurl wants to merge 1 commit into
NVlabs:mainfrom
uurl:feat/ptx-schedule-grid-dependency-sites
Open

ptx-schedule: classify grid dependency control sites#1214
uurl wants to merge 1 commit into
NVlabs:mainfrom
uurl:feat/ptx-schedule-grid-dependency-sites

Conversation

@uurl

@uurl uurl commented Aug 31, 2026

Copy link
Copy Markdown
Contributor

Closes #1207

Summary

Classify programmatic dependent launch control instructions as schedule-sensitive sites in ptx-schedule.

This adds a dedicated SiteKind::GridDependency for:

  • griddepcontrol.launch_dependents
  • griddepcontrol.wait

These instructions order execution and memory visibility between dependent grids, so schedule perturbation should be able to target them directly.

Why a separate site kind

griddepcontrol.* represents grid-to-grid ordering and is distinct from the asynchronous proxy pipeline currently modeled by SiteKind::AsyncProxy.

Keeping it separate also avoids folding grid-level dependency semantics into thread/CTA barriers or memory fences.

Tests

Added coverage that verifies:

  • both backend-emitted griddepcontrol spellings are discovered;
  • both are classified as SiteKind::GridDependency;
  • grid dependency sites can be selected and perturbed with nanosleep.u32.

Validation:

cargo fmt --all --check
cargo test -p ptx-schedule grid_dependency
cargo test -p ptx-schedule
cargo clippy -p ptx-schedule --all-targets -- -D warnings
RUSTDOCFLAGS="-D warnings" cargo doc --no-deps -p ptx-schedule

All checks pass.

Signed-off-by: Raul Estrada <raulestradaa@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ptx-schedule: griddepcontrol.wait / launch_dependents are unclassified ordering instructions

1 participant