• Mayank Mittal's avatar
    Optimizes getters of data inside asset classes (#2118) · c984604c
    Mayank Mittal authored
    # Description
    
    Previously the root positions was obtained by performing the following
    steps:
    
    1. Call PhysX getters to get transforms and velocities
    2. Concatenating the two to make a single state tensor
    3. Indexing this tensor to get the position
    
    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)
    
    <!-- As a practice, it is recommended to open an issue to have
    discussions on the proposed pull request.
    This makes it easier for the community to keep track of what is being
    developed or added, and if a given feature
    is demanded by more than one party. -->
    
    ## Type of change
    
    - New feature (non-breaking change which adds functionality)
    - Breaking change (fix or feature that would cause existing
    functionality to not work as expected)
    - This change requires a documentation update
    
    ## Screenshots
    
    Please attach before and after screenshots of the change if applicable.
    
    <!--
    Example:
    
    | Before | After |
    | ------ | ----- |
    | _gif/png before_ | _gif/png after_ |
    
    To upload images to a PR -- simply drag and drop an image while in edit
    mode and it should upload the image directly. You can then paste that
    source into the above before/after sections.
    -->
    
    ## Checklist
    
    - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
    `./isaaclab.sh --format`
    - [x] I have made corresponding changes to the documentation
    - [x] My changes generate no new warnings
    - [ ] I have added tests that prove my fix is effective or that my
    feature works
    - [x] I have updated the changelog and the corresponding version in the
    extension's `config/extension.toml` file
    - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
    exists there
    
    ---------
    Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
    Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
    c984604c
Name
Last commit
Last update
..
CHANGELOG.rst Loading commit data...
README.md Loading commit data...