What problem does it solve?
It automates the tedious process of verifying whether cuDF code changes cause performance regressions or improvements by running identical NVBench benchmarks on both a target branch (WIP or PR) and the main branch, then producing a structured comparison report.
Core Features & Use Cases
- Automated A/B Benchmarking: Builds and runs the same libcudf NVBench benchmarks on a target branch and on main, with identical benchmark and axis options on both sides.
- PR and WIP Support: Checks out a cuDF PR via the gh CLI or benchmarks current uncommitted changes, handling stashing, merging with main, and restoring the original git state afterward.
- Structured Comparison Report: Uses nvbench_compare.py with a 5% threshold to generate a COMPARISON.md report including hardware details, branch SHAs, axis coverage, and per-suite metric tables.
- Use Case: A cuDF contributor modifies a CUDA kernel and wants to confirm no regression before opening a PR; the skill runs the affected benchmark suites on both branches and summarizes meaningful timing deltas.
Quick Start
Compare the libcudf benchmark performance of my current branch against main and summarize any regressions.