-
Notifications
You must be signed in to change notification settings - Fork 1.8k
Optimizes getters of data inside asset classes #2118
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think its a good separation for the pose vs velocity buffers. The added lazy buffer layer in the update call is also a nice addition. Tests all pass (at least the ones I think are dependant) so I think its in good shape. Can you add the performance graphs to the PR description for reference when we look back?
Will share my logs here tomorrow. It's on a different PC. Might have made sense to run OSMO benchmarking but that seems like quite a bit of an effort. |
@kellyguo11 @matthewtrepte could we run the perf benchmark on this? If it works then this should be merged. It cleans up stuff. |
Could you rebase the changes? Some of the regression tests should run automatically now as part of the CI, but we’ll need to update the branch to pick up the change for the tests. |
Description
Previously the root positions was obtained by performing the following steps:
For applications where we only want the positions, the above is an expensive operation as we call CUDA-MemCpy twice and then do concatenation which adds overhead.
This MR simplifies the above process by having separate lazy buffers for poses, velocities and states.
Fixes # (issue)
Type of change
Screenshots
Please attach before and after screenshots of the change if applicable.
Checklist
pre-commit
checks with./isaaclab.sh --format
config/extension.toml
fileCONTRIBUTORS.md
or my name already exists there