Performance overview
GR00T-N1.6-3B inference timing with 4 denoising steps: | Device | Mode | Data Processing | Backbone | Action Head | E2E | Frequency | |--------|------|-----------------|----------|-------------|-----|-----------|| | RTX 5090 | PyTorch Eager | 2 ms | 18 ms | 38 ms | 58 ms | 17.3 Hz | | RTX 5090 | torch.compile | 2 ms | 18 ms | 16 ms | 37 ms | 27.3 Hz | | RTX 5090 | TensorRT | 2 ms | 18 ms | 11 ms | 31 ms | 32.1 Hz | | H100 | PyTorch Eager | 4 ms | 23 ms | 49 ms | 77 ms | 13.0 Hz | | H100 | torch.compile | 4 ms | 23 ms | 11 ms | 38 ms | 26.3 Hz | | H100 | TensorRT | 4 ms | 22 ms | 10 ms | 36 ms | 27.9 Hz | | RTX 4090 | PyTorch Eager | 2 ms | 25 ms | 55 ms | 82 ms | 12.2 Hz | | RTX 4090 | torch.compile | 2 ms | 25 ms | 17 ms | 44 ms | 22.8 Hz | | RTX 4090 | TensorRT | 2 ms | 24 ms | 16 ms | 43 ms | 23.3 Hz | | Thor | PyTorch Eager | 5 ms | 38 ms | 74 ms | 117 ms | 8.6 Hz | | Thor | torch.compile | 5 ms | 39 ms | 61 ms | 105 ms | 9.5 Hz | | Thor | TensorRT | 5 ms | 38 ms | 49 ms | 92 ms | 10.9 Hz | | Orin | PyTorch Eager | 6 ms | 93 ms | 202 ms | 300 ms | 3.3 Hz | | Orin | torch.compile | 6 ms | 93 ms | 101 ms | 199 ms | 5.0 Hz | | Orin | TensorRT | 6 ms | 95 ms | 72 ms | 173 ms | 5.8 Hz |The backbone (Vision Encoder + Language Model) timing is the same across all modes. Only the Action Head (DiT) is optimized with torch.compile or TensorRT, which is why you see significant speedups in the Action Head column while the Backbone column remains constant.
Speedup comparison
Speedup vs PyTorch Eager mode:PyTorch mode (default)
Run inference without optimization:Installation
torch.compile optimization
PyTorch’s built-in compiler optimizes the action head (DiT) for faster inference:The first inference call will be slower due to compilation. Subsequent calls will benefit from optimized kernels.
Performance characteristics
- RTX 5090: 1.58x faster E2E, 2.32x faster action head
- H100: 2.02x faster E2E, 4.60x faster action head
- RTX 4090: 1.87x faster E2E, 3.26x faster action head
- Orin: 1.50x faster E2E, 2.00x faster action head
TensorRT optimization
TensorRT provides the fastest inference by optimizing and compiling the action head to GPU-specific kernels. See the TensorRT guide for detailed setup.Quick setup
Performance characteristics
- RTX 5090: 1.86x faster E2E, 3.59x faster action head (31ms E2E, 32.1 Hz)
- H100: 2.14x faster E2E, 4.80x faster action head (36ms E2E, 27.9 Hz)
- RTX 4090: 1.92x faster E2E, 3.48x faster action head
- Orin: 1.73x faster E2E, 2.80x faster action head
Benchmarking your hardware
Run the benchmark script to measure performance on your hardware:Benchmark arguments
Output example
Architecture
GR00T’s inference pipeline consists of three main components:Optimization selection guide
Command-line arguments
standalone_inference_script.py
Troubleshooting
Compilation errors with torch.compile
Out of memory errors
Reduce batch size or action horizon:Slow first inference
This is expected with torch.compile and TensorRT. Add warmup iterations:Advanced topics
Analyzing inference timing
Use the provided Jupyter notebook for detailed analysis:- Component-wise timing breakdown
- Visualization of speedups across devices
- Comparison of different optimization modes