Contact emails
fbea...@google.com
Explainer
https://github.com/gpuweb/gpuweb/blob/main/proposals/transient-attachments.md
Specification
https://gpuweb.github.io/gpuweb/#dom-gputextureusage-transient_attachment
Summary
Functionality added to the WebGPU spec after its first shipment in a browser.
A new TRANSIENT_ATTACHMENT GPUTextureUsage lets developers create attachments that allow render pass operations to stay in tile memory, avoiding VRAM traffic and potentially avoiding VRAM allocation for the textures.
Blink component
Blink>WebGPU
Web Feature ID
webgpu
Motivation
When a texture is declared transient (or "memoryless"), the GPU knows that the contents of that texture are only needed temporarily—specifically, only within the current render pass. Moreover, since the texture contents are discarded after the render pass, the driver may not even need to allocate space for that texture in the main VRAM at all.
Even without hardware support for transient attachments, the hint can be used to reuse the allocation of transient textures between passes, which reduces peak memory usage.
https://github.com/gpuweb/gpuweb/pull/5450
Initial public proposal
No information provided
TAG review
No information provided
TAG review status
Not applicable
Risks
Debuggability
No information provided
Will this feature be supported on all six Blink platforms
(Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?
Yes
Yes
WebGPU/WGSL have a conformance test suite (
https://github.com/gpuweb/cts) that is regularly pulled into Chromium and part of the testing of Dawn/Tint in Chromium. While the CTS can be embedded in WPT, the WebGPU team opted to keep it separate in Chromium testing to use a customized harness for robustness and performance. All the tests about this feature in WebGPU CTS can be found at
https://github.com/gpuweb/cts/issues/4509
Flag name on about://flags
Enable Unsafe WebGPU
Finch feature name
WebGPUTransientAttachment
Rollout plan
Will ship enabled for all users
Requires code in //chrome?
False
Tracking bug
https://issues.chromium.org/issues/462620664
Estimated milestones
| DevTrial on desktop | 146 |
| DevTrial on Android | 146 |
Anticipated spec changes
Open questions about a feature may be a source of future web compat or
interop issues. Please list open issues (e.g. links to known github
issues in the project for the feature specification) whose resolution
may introduce web compat/interop risk (e.g., changing to naming or
structure of the API in a non-backward-compatible way).
No information provided
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5562829589577728?gate=6588224644448256