RoboWBC NVIDIA Comparison
This page is generated automatically in CI from the normalized RoboWBC-vs-official benchmark artifacts. It keeps the matched-path comparison package visible on GitHub Pages without requiring readers to reconstruct the Markdown summary locally.
Rows stay honest: if a future rerun loses models, prerequisites, or an executable upstream seam, the page surfaces the blocked artifact instead of approximating a nearby path.
Cases8
Matched ok pairs8
Blocked or missing rows0
Providercpu
RoboWBC commitf1b940ac0f78c77252c18eb69b8d9f2f6effd3b5
Official upstream commitbc38f6d0ce6cab4589e025037ad0bfbab7ba73d8
Host fingerprint: runnervmeorf1 | Linux 6.17.0-1010-azure | x86_64 | AMD EPYC 9V74 80-Core Processor
Case Matrix
| Case | RoboWBC | Official NVIDIA | p50 ratio | Why it matters | Artifacts |
|---|---|---|---|---|---|
gear_sonic_velocity/cold_start_tick
First velocity tick after reset; forces a fresh planner path.
|
p50 109.094 ms; p95 110.612 ms; hz n/a | p50 104.508 ms; p95 105.389 ms; hz n/a | 1.04x | If this row regresses, RoboWBC still pays a measurable planner cold-start tax before any DX win can matter. |
RoboWBC JSON Official JSON |
gear_sonic_velocity/warm_steady_state_tick
Velocity interpolation tick after an initial plan; planner stays idle.
|
p50 3.386 ms; p95 3.511 ms; hz n/a | p50 1.122 us; p95 1.503 us; hz n/a | 3017.58x | This is the steady-state path most likely to dominate the average control budget for locomotion. |
RoboWBC JSON Official JSON |
gear_sonic_velocity/replan_tick
Velocity tick that crosses the replan boundary and executes planner_sonic.onnx.
|
p50 3.159 ms; p95 3.264 ms; hz n/a | p50 103.969 ms; p95 105.310 ms; hz n/a | 0.03x | If replan ticks miss parity, the planner path needs attention before stronger NVIDIA comparison claims. |
RoboWBC JSON Official JSON |
gear_sonic_tracking/standing_placeholder_tick
Encoder plus decoder standing-placeholder tracking tick with planner loaded but idle.
|
p50 3.070 ms; p95 3.148 ms; hz n/a | p50 3.023 ms; p95 3.197 ms; hz n/a | 1.02x | A tracking-path miss suggests the motion-reference contract is the real optimization target, not the planner path. |
RoboWBC JSON Official JSON |
decoupled_wbc/walk_predict
GR00T G1 history contract with a movement command that routes to the walk checkpoint.
|
p50 59.662 us; p95 59.866 us; hz n/a | p50 293.537 us; p95 340.694 us; hz n/a | 0.20x | This row captures the locomotion path people hit while actually moving, not the standing fallback. |
RoboWBC JSON Official JSON |
decoupled_wbc/balance_predict
GR00T G1 history contract with a near-zero command that routes to the balance checkpoint.
|
p50 59.936 us; p95 60.138 us; hz n/a | p50 291.428 us; p95 324.602 us; hz n/a | 0.21x | This row makes the command-magnitude model switch explicit instead of hiding it behind one average number. |
RoboWBC JSON Official JSON |
gear_sonic/end_to_end_cli_loop
RoboWBC CLI loop running configs/sonic_g1.toml through the synthetic transport with a JSON report.
|
p50 3.726 ms; p95 4.153 ms; hz 48.632 Hz | p50 1.126 us; p95 105.738 ms; hz 26.911 Hz | 3308.94x | This row answers the operator-facing question: can the whole deployment loop hold the target frequency, not just one inference call? |
RoboWBC JSON Official JSON |
decoupled_wbc/end_to_end_cli_loop
RoboWBC CLI loop running configs/decoupled_g1.toml through the synthetic transport with a JSON report.
|
p50 268.500 us; p95 353.372 us; hz 49.720 Hz | p50 422.506 us; p95 568.290 us; hz 49.805 Hz | 0.64x | If the loop holds up here, the comparison story can move beyond one policy tick and toward deployable control loops. |
RoboWBC JSON Official JSON |
Rerun Commands
python3 scripts/bench_robowbc_compare.py --all
python3 scripts/bench_nvidia_official.py --all
python3 scripts/render_nvidia_benchmark_summary.py --output artifacts/benchmarks/nvidia/SUMMARY.md --html-output /tmp/robowbc-site/benchmarks/nvidia/index.html
# or build the full static site bundle:
python3 scripts/build_site.py --output-dir /tmp/robowbc-site