-
-
Notifications
You must be signed in to change notification settings - Fork 36.3k
WebGPURenderer: Reduce per-frame allocations in render & compute paths #33419
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
RenaudRohlinger
wants to merge
17
commits into
mrdoob:dev
Choose a base branch
from
RenaudRohlinger:fix-webgpu-memory-leaks
base: dev
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
17 commits
Select commit
Hold shift + click to select a range
3282f4f
Fix WebGPU renderer memory churn
RenaudRohlinger d0308b4
WebGPURenderer: Eliminate remaining per-frame allocations.
RenaudRohlinger d050d8e
WebGPURenderer: Trim compute-path allocations.
RenaudRohlinger c71e440
E2E: Add perf/VRAM regression harness.
RenaudRohlinger d2f09ff
WebGPURenderer: Remove error-reporting code unrelated to this PR.
RenaudRohlinger 9b0bc2f
WebGPURenderer: Address review feedback on PR #33419.
RenaudRohlinger 5126da4
WebGPURenderer: Wrap `GPUTexelCopyTextureInfo` descriptors in a class.
RenaudRohlinger 2f37c04
WebGPURenderer: Move `TexelCopyTextureInfo` to WebGPUTextureUtils.
RenaudRohlinger 507641d
WebGPURenderer: Move `TexelCopyTextureInfo` into its own module.
RenaudRohlinger 04f1d1a
E2E: Remove perf regression harness from this PR.
RenaudRohlinger 2e164b2
WebGPURenderer: Remove per-draw WeakMap.set allocation in pipeline de…
RenaudRohlinger dbad1d4
NodeMaterialObserver: Reuse `lightsData` cache entry per frame.
RenaudRohlinger 47bcec4
UniformsGroup: Pool per-uniform update-range objects.
RenaudRohlinger 598a225
NodeFrame: Call `performance.now()` once per update, init `lastTime` …
RenaudRohlinger 4c5771f
Revert three follow-up commits to re-scope this PR.
RenaudRohlinger df69238
WebGPURenderer: Reset compute `currentPipeline` when a new pass encod…
RenaudRohlinger aecadd9
Move to constructor
RenaudRohlinger 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
There are no files selected for viewing
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
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.