Expand description
GPU kernel scheduling simulation.
Simulates the kernel dispatch pipeline found in modern GPU compute stacks. Key concepts modelled:
- Kernel dependency graph – a directed acyclic graph where edges encode “must finish before” relationships between kernels.
- Launch ordering – topological ordering of the DAG that respects all dependencies, choosing lexicographic tie-breaking for determinism.
- Occupancy estimation – computes theoretical occupancy (0.0–1.0) from active warps vs the SM warp limit.
- Warp utilisation – tracks active vs stalled warps per kernel to produce a utilisation metric.
All structures are pure-Rust, CPU-side simulations that mirror GPU scheduler semantics without requiring actual GPU hardware.
Structs§
- Kernel
Scheduler - Kernel dependency graph and launch-order scheduler.
- Kernel
Spec - Specification for a single compute kernel.
- Occupancy
Estimate - Occupancy estimate for a single kernel on a given SM configuration.
- Warp
Stats - Per-kernel warp utilisation statistics gathered after (simulated) execution.
Enums§
- Scheduler
Error - Errors returned by kernel scheduler operations.