Skip to navigation

Performance Benchmarks

View as Markdown

Isaac Lab leverages end-to-end GPU training for reinforcement learning workflows, allowing for fast parallel training across thousands of environments. In this section, we provide runtime performance benchmark results for reinforcement learning training of various example environments on different GPU setups. Multi-GPU and multi-node training performance results are also outlined.

Benchmark Results

All benchmarking results were performed with the RL Games library with --headless flag on Ubuntu 22.04. Isaac-Velocity-Rough-G1-v0 environment benchmarks were performed with the RSL RL library.

Memory Consumption

Environment Name# of EnvironmentsRAM (GB)VRAM (GB)
Isaac-Cartpole-Direct-v0cartpole40963.73.3
Isaac-Cartpole-RGB-Camera-Direct-v0cartpole-cam10247.516.7
Isaac-Velocity-Rough-G1-v0g140966.56.1
Isaac-Repose-Cube-Shadow-Direct-v0shadow81926.76.4

Single GPU - RTX 4090

CPU: AMD Ryzen 9 7950X 16-Core Processor

Environment Name# of EnvironmentsEnvironment Step FPSEnvironment Step and Inference FPSEnvironment Step, Inference, and Train FPS
Isaac-Cartpole-Direct-v040961100000910000510000
Isaac-Cartpole-RGB-Camera-Direct-v01024500004500032000
Isaac-Velocity-Rough-G1-v04096940008800082000
Isaac-Repose-Cube-Shadow-Direct-v08192200000190000170000

Single GPU - L40

CPU: Intel(R) Xeon(R) Platinum 8362 CPU @ 2.80GHz

Environment Name# of EnvironmentsEnvironment Step FPSEnvironment Step and Inference FPSEnvironment Step, Inference, and Train FPS
Isaac-Cartpole-Direct-v04096620000490000260000
Isaac-Cartpole-RGB-Camera-Direct-v01024300002800021000
Isaac-Velocity-Rough-G1-v04096720006400062000
Isaac-Repose-Cube-Shadow-Direct-v08192170000140000120000

Single-Node, 4 x L40 GPUs

CPU: Intel(R) Xeon(R) Platinum 8362 CPU @ 2.80GHz

Environment Name# of EnvironmentsEnvironment Step FPSEnvironment Step and Inference FPSEnvironment Step, Inference, and Train FPS
Isaac-Cartpole-Direct-v0409627000002100000950000
Isaac-Cartpole-RGB-Camera-Direct-v0102413000012000090000
Isaac-Velocity-Rough-G1-v04096290000270000250000
Isaac-Repose-Cube-Shadow-Direct-v08192440000420000390000

4 Nodes, 4 x L40 GPUs per node

CPU: Intel(R) Xeon(R) Platinum 8362 CPU @ 2.80GHz

Environment Name# of EnvironmentsEnvironment Step FPSEnvironment Step and Inference FPSEnvironment Step, Inference, and Train FPS
Isaac-Cartpole-Direct-v040961020000082000003500000
Isaac-Cartpole-RGB-Camera-Direct-v01024530000490000260000
Isaac-Velocity-Rough-G1-v0409612000001100000960000
Isaac-Repose-Cube-Shadow-Direct-v08192240000023000001800000

Benchmark Scripts

For ease of reproducibility, we provide benchmarking scripts available at scripts/benchmarks. This folder contains individual benchmark scripts that resemble the train.py script for RL-Games and RSL RL. In addition, we also provide a benchmarking script that runs only the environment implementation without any reinforcement learning library.

Example scripts can be run similarly to training scripts:

# benchmark with RSL RL
python scripts/benchmarks/benchmark_rsl_rl.py --task=Isaac-Cartpole-v0 --headless
# benchmark with RL Games
python scripts/benchmarks/benchmark_rlgames.py --task=Isaac-Cartpole-v0 --headless
# benchmark without RL libraries
python scripts/benchmarks/benchmark_non_rl.py --task=Isaac-Cartpole-v0 --headless

Each script will generate a set of KPI files at the end of the run, which includes data on the startup times, runtime statistics, such as the time taken for each simulation or rendering step, as well as overall environment FPS for stepping the environment, performing inference during rollout, as well as training.