Body
Description
The documentation reports 16.61 ms warm P50 E2E latency for GROOT N1.7 FP8 on an RTX 5090 using a 2-view base checkpoint:
https://github.com/flashrt-project/FlashRT/blob/main/USAGE.md#groot-n17-rtx
The result appears to come from commit:
1dd5717
I have not been able to reproduce this number. More importantly, the repository does not appear to include the exact benchmark fixture, timing script, or complete environment used for the 16.61 ms
result.
Environment
- GPU: NVIDIA GeForce RTX 5090
- Compute capability: SM120
- Driver: 595.84
- CUDA toolkit: 12.8.61
- PyTorch: 2.11.0+cu128
- cuBLASLt: 12.9.2.10
- Build target: sm_120a
- Precision: FP8
- Batch size: 1
- Denoising steps: 4
- Action horizon: T=40
The GPU was operating at approximately 2.9 GHz with no observed power or thermal throttling.
Results
Using a real 2-view LIBERO input generated through the GROOT N1.7 preprocessing path:
- pixel_features: (512, 1024)
- grid_thw: (2, 3)
- llm_input_embeds: (1, 156, 2048)
Measured warm P50 latency:
Measurement P50
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━
Backbone CUDA graph 9.77 ms
────────────────────────────── ──────────
Action CUDA graph 11.15 ms
────────────────────────────── ──────────
Two graph replays 20.92 ms
────────────────────────────── ──────────
Full infer(..., aux=aux) API 21.24 ms
────────────────────────────── ──────────
Documented result 16.61 ms
This leaves a gap of approximately 4.6 ms / 28% versus the documented result.
I also tested with cuBLASLt 12.8.3 instead of 12.9.2, but the result was effectively unchanged.
Missing reproduction details
Could you please provide the following?
-
Exact checkpoint repository and revision/hash.
-
The exact 2-view aux fixture, or a script for generating it.
-
Shapes of all tensors in the fixture, especially:
pixel_features
grid_thw
llm_input_embeds
visual_pos_masks
rope_cos / rope_sin
-
Exact prompt, normalized state, and initial noise used.
-
Complete benchmark script or command.
-
Number of warmup and timed iterations.
-
Whether latency was measured using CUDA events or wall-clock timing.
-
Whether the timed call was exactly:
model.infer(
state_normalized,
initial_noise=initial_noise,
aux=aux,
use_dit_graph=True,
)
-
CUDA, PyTorch, cuBLAS/cuBLASLt, driver, and compiler versions.
-
GPU power limit and clock configuration.
-
Expected backbone and action-graph latency breakdown.
Ideally, a self-contained script such as:
benchmarks/groot_n17_rtx_latency.py
together with a downloadable fixture or fixture-generation script would make the 16.61 ms result independently reproducible.
Thanks!
Body
Description
The documentation reports 16.61 ms warm P50 E2E latency for GROOT N1.7 FP8 on an RTX 5090 using a 2-view base checkpoint:
https://github.com/flashrt-project/FlashRT/blob/main/USAGE.md#groot-n17-rtx
The result appears to come from commit:
1dd5717
I have not been able to reproduce this number. More importantly, the repository does not appear to include the exact benchmark fixture, timing script, or complete environment used for the 16.61 ms
result.
Environment
The GPU was operating at approximately 2.9 GHz with no observed power or thermal throttling.
Results
Using a real 2-view LIBERO input generated through the GROOT N1.7 preprocessing path:
Measured warm P50 latency:
Measurement P50
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ━━━━━━━━━━
Backbone CUDA graph 9.77 ms
────────────────────────────── ──────────
Action CUDA graph 11.15 ms
────────────────────────────── ──────────
Two graph replays 20.92 ms
────────────────────────────── ──────────
Full infer(..., aux=aux) API 21.24 ms
────────────────────────────── ──────────
Documented result 16.61 ms
This leaves a gap of approximately 4.6 ms / 28% versus the documented result.
I also tested with cuBLASLt 12.8.3 instead of 12.9.2, but the result was effectively unchanged.
Missing reproduction details
Could you please provide the following?
Exact checkpoint repository and revision/hash.
The exact 2-view
auxfixture, or a script for generating it.Shapes of all tensors in the fixture, especially:
pixel_featuresgrid_thwllm_input_embedsvisual_pos_masksrope_cos/rope_sinExact prompt, normalized state, and initial noise used.
Complete benchmark script or command.
Number of warmup and timed iterations.
Whether latency was measured using CUDA events or wall-clock timing.
Whether the timed call was exactly:
CUDA, PyTorch, cuBLAS/cuBLASLt, driver, and compiler versions.
GPU power limit and clock configuration.
Expected backbone and action-graph latency breakdown.
Ideally, a self-contained script such as:
benchmarks/groot_n17_rtx_latency.py
together with a downloadable fixture or fixture-generation script would make the 16.61 ms result independently reproducible.
Thanks!