Expand description
Measurement: bench plans (plan.v1), the PTX runner (CUDA driver API
via dlopen — builds anywhere, times only where a driver exists), and
interval statistics. Every timing carries warmup, repeats, median, a
95% CI, and the outlier rule; overlapping intervals are reported as
indistinguishable, never ranked (docs/BENCHMARKING.md).
Re-exports§
pub use plan::ArgSpec;pub use plan::BenchPlan;pub use plan::BenchSpec;pub use plan::Candidate;pub use plan::PlanError;pub use run::CandidateResult;pub use run::Results;pub use run::run_plan;pub use stats::Summary;pub use stats::indistinguishable;pub use stats::summarize;
Modules§
- cuda
- Minimal CUDA driver API surface, loaded at runtime with dlopen so the crate builds (and its tests run) on machines with no CUDA at all — including CI and the Mac. Only the box can actually produce a timing.
- plan
- Bench plans (
plan.v1): everything the runner needs, self-contained — candidate configs, PTX paths, launch geometry, and the argument layout matching cuda-oxide’s PTX parameter lowering (each slice becomes aptr, lenpair of.paramslots; scalars are single slots). - run
- Plan execution: resumable, checkpointed after every candidate (the box dies — idle guard, dead-man switch, spot reclaim — so the harness is resumable or it is broken, docs/ARCHITECTURE.md), with a CPU heartbeat so a GPU-bound sweep never looks idle to the 30-minute CPU alarm.
- stats
- Interval statistics (docs/BENCHMARKING.md): a benchmark that reports a mean and no interval is not evidence. Median with a distribution-free 95% CI (order statistics), Tukey-fence outlier rejection, and an overlap test — configurations whose intervals overlap are indistinguishable, never ranked.