Intent to Ship: WebGPU: separate Read-only depth-stencil

423 views
Skip to first unread message

Corentin Wallez

unread,
Jan 5, 2024, 8:18:57 AM1/5/24
to blink-dev

Contact emails

cwa...@google.com

Explainer

None

Specification

https://github.com/gpuweb/gpuweb/pull/4331

Summary

Functionality added to the WebGPU/WGSL spec after its first shipment in a browser. Loosens a restriction where using readonly depth-stencil attachments in a render pass required both aspects (depth and stencil) to be readonly. This was too strict, and prevent use-cases where for example the depth is used readonly for contact shadow tracing, while the stencil buffer is written to do identify pixels for further processing. (Both Unity and Unreal do things with mixed depth-stencil readonliness).



Blink component

Blink>WebGPU

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility

Separate RODS has not yet been implemented in any browser, but has been approved by the GPU for the Web Community Group, with representatives from Chrome, Firefox, and Safari.



Gecko: No signal (https://github.com/mozilla/standards-positions/issues/953)

WebKit: Positive (https://github.com/WebKit/standards-positions/issues/294#issuecomment-1877411933) Note that this is a blanket approval from Safari for additions to the v1 WebGPU/WGSL spec.

Web developers: Positive Requested by multiple developers including for ports of the Unity and Unreal engines to WebGPU.

Other signals:

WebView application risks

Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?

None at the moment, WebGPU currently does not ship on Android WebView.



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

All platforms will eventually have support. Will immediately be available on Android, ChromeOS, Mac, and Windows, since those platforms already support WebGPU. Linux is planned to have WebGPU support in the future, so this feature will become available when WebGPU does.



Is this feature fully tested by web-platform-tests?

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. Note that tests are still being written, but the feature will not be launched until it is fully tested.



Flag name on chrome://flags

None

Finch feature name

None

Non-finch justification

None

Requires code in //chrome?

False

Tracking bug

https://bugs.chromium.org/p/dawn/issues/detail?id=2146

Availability expectation

Feature is available only in Chromium browsers for the near future, on the order of months. Other browsers intend to ship WebGPU support, but don't have specified timelines.

Non-OSS dependencies

Does the feature depend on any code or APIs outside the Chromium open source repository and its open-source dependencies to function?

No

Estimated milestones

No milestones specified



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).

None

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5074024696905728

This intent message was generated by Chrome Platform Status.

Rick Byers

unread,
Jan 10, 2024, 10:01:05 AM1/10/24
to Corentin Wallez, blink-dev
Hi Corentin,
This looks minor and probably pretty easy. But we do normally like to see spec PRs and tests land (or have a discussion around why they're blocked) before approving. Thoughts?

Rick

--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGdfWNNp0xLWx9JuFwyp9XZScQnr4CnVy94wBU2wQgQW59TeyQ%40mail.gmail.com.

Corentin Wallez

unread,
Jan 10, 2024, 2:02:56 PM1/10/24
to Rick Byers, blink-dev
Hey Rick,

The spec PRs for all of these intents are landed but you're correct that all the tests are. Tests aren't blocked, they just need someone to get to it (myself for this particular feature) and we won't turn the feature on until they are finished. I didn't realize that LGTMs waited on tests to be finished. We have a pretty strong focus on testing in WebGPU and will definitely not let a feature get enabled without tests being completed so hopefully it's ok to LGTM without them? We totally expect some of these recent I2S to slip to M123 because tests are still needed, we just don't know which ones yet.

Cheers,

Corentin

Chris Harrelson

unread,
Jan 17, 2024, 7:46:10 PM1/17/24
to Corentin Wallez, Rick Byers, blink-dev
LGTM1 (as noted in the other intent, tests are needed but we aren't blocking approval on them in this case)

Mike Taylor

unread,
Jan 17, 2024, 8:26:49 PM1/17/24
to Chris Harrelson, Corentin Wallez, Rick Byers, blink-dev

Manuel Rego Casasnovas

unread,
Jan 18, 2024, 6:45:30 AM1/18/24
to Mike Taylor, Chris Harrelson, Corentin Wallez, Rick Byers, blink-dev
LGTM3
>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU>
>>
>>
>> TAG review
>>
>> None
>>
>>
>> TAG review status
>>
>> Not applicable
>>
>>
>> Risks
>>
>>
>>
>> Interoperability and Compatibility
>>
>> Separate RODS has not yet been implemented in any browser,
>> but has been approved by the GPU for the Web Community
>> Group, with representatives from Chrome, Firefox, and Safari.
>>
>>
>>
>> /Gecko/: No signal
>> (https://github.com/mozilla/standards-positions/issues/953)
>>
>> /WebKit/: Positive
>> (https://github.com/WebKit/standards-positions/issues/294#issuecomment-1877411933) Note that this is a blanket approval from Safari for additions to the v1 WebGPU/WGSL spec.
>>
>> /Web developers/: Positive Requested by multiple
>> developers including for ports of the Unity and Unreal
>> engines to WebGPU.
>>
>> /Other signals/:
>>
>>
>> WebView application risks
>>
>> Does this intent deprecate or change behavior of existing
>> APIs, such that it has potentially high risk for Android
>> WebView-based applications?
>>
>> None at the moment, WebGPU currently does not ship on
>> Android WebView.
>>
>>
>>
>> Debuggability
>>
>> None
>>
>>
>>
>> Will this feature be supported on all six Blink
>> platforms (Windows, Mac, Linux, ChromeOS, Android,
>> and Android WebView)?
>>
>> No
>>
>> All platforms will eventually have support. Will
>> immediately be available on Android, ChromeOS, Mac, and
>> Windows, since those platforms already support WebGPU.
>> Linux is planned to have WebGPU support in the future, so
>> this feature will become available when WebGPU does.
>>
>>
>>
>> Is this feature fully tested by web-platform-tests
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
>> Status <https://chromestatus.com/>.
>> --
>> You received this message because you are subscribed to
>> the Google Groups "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails
>> from it, send an email to blink-dev+...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGdfWNNp0xLWx9JuFwyp9XZScQnr4CnVy94wBU2wQgQW59TeyQ%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGdfWNNp0xLWx9JuFwyp9XZScQnr4CnVy94wBU2wQgQW59TeyQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it,
>> send an email to blink-dev+...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGdfWNPxFxKtomp__mv_-K-co3WNgKg9dXRb6WJDZQ0UHb8NAQ%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAGdfWNPxFxKtomp__mv_-K-co3WNgKg9dXRb6WJDZQ0UHb8NAQ%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>>
>> --
>> You received this message because you are subscribed to the Google
>> Groups "blink-dev" group.
>> To unsubscribe from this group and stop receiving emails from it, send
>> an email to blink-dev+...@chromium.org.
>> To view this discussion on the web visit
>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-%2BV1RhELn7ma%2BwmM7LX_zjq1bMEUZk%2BmH7WoxUcVOMKA%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw-%2BV1RhELn7ma%2BwmM7LX_zjq1bMEUZk%2BmH7WoxUcVOMKA%40mail.gmail.com?utm_medium=email&utm_source=footer>.
>
> --
> You received this message because you are subscribed to the Google
> Groups "blink-dev" group.
> To unsubscribe from this group and stop receiving emails from it, send
> an email to blink-dev+...@chromium.org
> <mailto:blink-dev+...@chromium.org>.
> To view this discussion on the web visit
> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/96cc6619-1f39-4615-9c14-74ad5d157e01%40chromium.org <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/96cc6619-1f39-4615-9c14-74ad5d157e01%40chromium.org?utm_medium=email&utm_source=footer>.
Reply all
Reply to author
Forward
0 new messages