-
Notifications
You must be signed in to change notification settings - Fork 3.8k
perf: scale FabricFrameView selections to the view, not the stage #6805
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
Open
pv-nvidia
wants to merge
23
commits into
isaac-sim:develop
Choose a base branch
from
pv-nvidia:pv/fix-fabric-frameview-stall
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
23 commits
Select commit
Hold shift + click to select a range
65292c5
Fix quadratic path lookup in SceneDataProvider
pv-nvidia 4bd8162
Rebuild Fabric view mappings on device per access
pv-nvidia 49d1226
Document why Fabric slot arrays are int32, not uint
pv-nvidia 51f8b9a
Test that Fabric selections are scoped to the view
pv-nvidia fa139eb
Removed comment
pv-nvidia 43f1476
Avoid redundant string work in Fabric view init
pv-nvidia 691343b
Simplify create_mapping to a plain dict comprehension
pv-nvidia 75b159f
Add carb profiler zones to FabricFrameView hot paths
pv-nvidia dc22f1b
Merge branch 'develop' into pv/fix-fabric-frameview-stall
pv-nvidia 99640c2
Refresh the child selection once per opposite-space recompute
pv-nvidia 99ee2a0
Keep first-occurrence semantics in create_mapping
pv-nvidia effba2a
Trim implementation detail from docs and changelogs
pv-nvidia 705fdf5
Remove carb profiler zones from FabricFrameView
pv-nvidia 5462253
Remove Fabric index attributes when a view is released
pv-nvidia ebc967d
Close Fabric views in tests instead of leaking them
pv-nvidia 9954861
Merge branch 'develop' into pv/fix-fabric-frameview-stall
pv-nvidia dad3bbd
Fixed slow device<->host roundtrip in _resolve_indices_wp
pv-nvidia 40b77ad
Close frame views at their remaining callsites
pv-nvidia b08aa74
Add isaaclab_mimic changelog fragment
pv-nvidia 3c2f247
Close the camera's frame view when the camera is dropped
pv-nvidia 80ee2a2
Merge branch 'develop' into pv/fix-fabric-frameview-stall
pv-nvidia 06e11c3
Merge branch 'develop' into pv/fix-fabric-frameview-stall
pv-nvidia 62ed100
Merge branch 'develop' into pv/fix-fabric-frameview-stall
pv-nvidia File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Some comments aren't visible on the classic Files Changed page.
There are no files selected for viewing
13 changes: 13 additions & 0 deletions
13
source/isaaclab/changelog.d/fix-physx-newton-camera-pose-scaling.rst
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,13 @@ | ||
| Fixed | ||
| ^^^^^ | ||
|
|
||
| * Fixed :class:`~isaaclab.scene_data.SceneDataProvider` transform mapping stalling | ||
| at high rigid-body counts, which delayed setup by minutes in scenes with | ||
| thousands of environments. | ||
|
|
||
| Added | ||
| ^^^^^ | ||
|
|
||
| * Added :meth:`~isaaclab.sim.views.BaseFrameView.close` to release backend state | ||
| authored by a frame view. Backends also release best-effort on garbage | ||
| collection, but only an explicit close is deterministic. | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
5 changes: 5 additions & 0 deletions
5
source/isaaclab_mimic/changelog.d/fix-fabric-frameview-stall.rst
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| Fixed | ||
| ^^^^^ | ||
|
|
||
| * Fixed :class:`SceneAsset` leaking its cached frame view when the view is rebuilt, | ||
| which left the view's backend state to be released on garbage collection. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
14 changes: 14 additions & 0 deletions
14
source/isaaclab_physx/changelog.d/fix-physx-newton-camera-pose-scaling.rst
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| Fixed | ||
| ^^^^^ | ||
|
|
||
| * Fixed camera world-pose resolution stalling at high environment counts under the | ||
| PhysX backend, which caused multi-second pauses between rendered frames and | ||
| benchmark timeouts. | ||
|
|
||
| Added | ||
| ^^^^^ | ||
|
|
||
| * Added :meth:`close` to the PhysX Fabric frame view, removing its per-view Fabric | ||
| index attributes so that views recreated over the same prims no longer accumulate | ||
| attributes. Views dropped without closing are cleaned up on garbage collection, | ||
| with a warning. |
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.
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.
How releasing the backend state helps the performance?
Uh oh!
There was an error while loading. Please reload this page.
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.
Each FabricFrameView assigns a unique index attribute to the selected prims, so these need to be removed when the frame view is deleted. Otherwise every newly created frame view would again create new attributes, and so on.
In general, a frame view must be able to do cleanup, hence the close method.