2.1.1. Static Control, No Collision
2.1.1.1. Self-collision off
2.1.1.2. Self-collision on
2.1.2. Dynamic Random Control
2.1.3. Continuous Static Collision Resolving
2.1.4. Dynamic Random Control with Continuous Collision
2.2. Genesis vs. MJX (with jit-compiling multiple steps)
2.2.1. No Control, No Collision, Standard MJCF
2.2.2. No Control, Continuous Collision, Standard MJCF
3.1. Anymal C
3.1.1. Static standing
3.1.2. Dynamic random control
3.2. Unitree Go2
4.1. A response to the blog post claiming Genesis is 150x slower than claimed
4.2. Grasping a ball
4.2.1. Static grasping (including comparison on memory footprint)
4.2.2. Grasping with shaking
4.3. Grasping a cube
4.3.1. Static grasping
4.3.2. Grasping with shaking
4.4. Grasping a cube with more complex robot description
4.4.1. Static grasping
4.4.2. Grasping with shaking
4.4.3. Grasping with path following
4.5. Grasping a complex articulated object
4.5.1. Static grasping
4.5.2. Grasping with shaking
All the numbers reported below are measured via SSH using a Macbook Pro with Apple M1 Pro chip, to avoid performance drop caused by any concurrent graphics-related applications.
All the testing scripts are available at https://github.com/zhouxian/genesis-speed-benchmark.
Disclaimer: We use 14900KF + RTX4090 here. While it’s possible that the comparison results will differ on different hardware specs, we expect them to present a similar trend. At our side, we also benchmarked on A6000 Ada, and the comparison result is pretty similar.
In our initial release, we reported speed tested on 3 scenes:
Let’s start with the Franka scene in a static setting first (this is the setting we used to report number during our release), and compare with Isaac Gym and Mujoco MJX.