Replies: 3 comments 1 reply
-
I have noticed the same thing. When running legged gym with the default anymal c rough terrain task, the iteration time is around 1.1 seconds while the same task in Isaac Lab is at least 2 seconds per iteration or more. According to the printout and my summaries it seems like most of the increase is in the collection time, not the learning time, so I also suspect it is an issue with orbit/isaac lab. Note I was running in a containerized cluster environment so I know i had the same hardware and software as the default config. As far as i can tell the tasks are the same in legged_gym and in isaac lab, so there shouldn't be an increase like this. |
Beta Was this translation helpful? Give feedback.
-
Yes, some slowdown is expected from the legged-gym as there are changes in the environment's implementation. Out of my mind, these are as follows:
Recently, we updated the framework to use lazy-tensors, so we hope that reduces some of the performance gaps you see. |
Beta Was this translation helpful? Give feedback.
-
Interesting, thank you for the timely response. Would you recommend I disable the ray casting calculations somehow? Or is that not possible? |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi all,
I was using IsaacGym for my humanoid learning before and have recently moved to Orbit.
One thing that has been bothering me for a while is that I observe that the training speed in Orbit is about 40% slower than in IsaacGym.
Here are some specification for comparing training speed of Orbit and IsaacGym (legged_gym in RSL).
Robot type: Humanoid / Using same URDF on both sides
Although I wouldn't mention every parameters here, I double checked that almost all params ( physx settings, runner settings etc.) are same.
While I was tracking down where the difference is originating from, I ended up at simulator update code in decimation for-loop.
Here's the Orbit's simulator update code in
rl_task_env.py
:Here's the IsaacGym's simulator update code in
legged_robot.py
:As you might see, each
Line 1,2,3,4
is functionally corresponding.So I measured the execution time of each
Line
for line-by-line comparison and here's the results.As you can see, multiplying the difference of the total time by num_steps_per_env ((0.05983 - 0.03725) x 24 = 0.542 s) explains why the Orbit is slower roughly 40% than IsaacGym in my case.
Here are my questions:
self.scene
where we update the robot articulation and the sensors. I would appreciate if you can guide me if I'm missing any important parameter setting to make Orbit faster.Thank you for the help in advance!
Best,
Beta Was this translation helpful? Give feedback.
All reactions