Contact emails
senorbla...@google.com, kain...@google.com

Explainer
https://github.com/explainers-by-googlers/webgpu-compatibility-mode/blob/main/README.md


Specification
https://github.com/gpuweb/gpuweb/blob/main/proposals/compatibility-mode.md


Summary

Adds an opt-in, lightly restricted subset of the WebGPU API capable of running 
older graphics APIs such as OpenGL and Direct3D11. By opting into this mode and 
obeying its constraints, developers can extend the reach of their WebGPU 
applications to many older devices that do not have the modern, explicit 
graphics APIs that core WebGPU requires. For simple applications, the only 
required change is to specify the "compatibility" featureLevel when calling 
requestAdapter. For more advanced applications, some modifications may be 
necessary to accommodate the mode's restrictions. Since Compatibility mode is a 
subset, the resulting applications are also valid WebGPU Core applications and 
will run even on user agents that do not support Compatibility mode.



Blink component
Blink>WebGPU


TAG review
https://github.com/w3ctag/design-reviews/issues/1063


TAG review status
Pending


Origin Trial documentation link
https://github.com/explainers-by-googlers/webgpu-compatibility-mode/blob/main/README.md


Risks




Interoperability and Compatibility

This feature has been approved in W3C GPU for the Web WG meetings including 
participants from Safari and Firefox.


Gecko: Positive Although there is not currently an entry for Compatibility Mode 
in the standards positions repos, WebGPU Compatibility Mode was discussed and 
approved by Google, Apple and Mozilla in the GPU for the Web Working Group, and 
has the same support as WebGPU Core. Each of the commits to the 
compatibility-mode propsal above was approved by a working group member from 
each of those three organizations, and any disagreements were resolved prior to 
landing in Working Group meetings.

WebKit: Positive Although there is not currently an entry for Compatibility 
Mode in the standards positions repos, WebGPU Compatibility Mode was discussed 
and approved by Google, Apple and Mozilla in the GPU for the Web Working Group, 
and has the same support as WebGPU Core. Each of the commits to the 
compatibility-mode propsal above was approved by a working group member from 
each of those three organizations, and any disagreements were resolved prior to 
landing in Working Group meetings.

Web developers: No signals

Other signals:


Security

Being a lightly-restricted subset, Compatibility Mode does not introduce any 
accessibility, security, or privacy issues over and above those introduced by 
core WebGPU. For this reason, the security review submitted for WebGPU also 
applies to Compatibility Mode.



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




Goals for experimentation




Ongoing technical constraints

None



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, Android WebView, ChromeOS, Mac, and Windows, where hardware support is 
available. 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
All Compatibility Mode restrictions are exercised by the "compatibility" option 
to the WebGPU CTS. Eg, 
https://gpuweb.github.io/cts/standalone/?compatibility=1&q=webgpu:* This subset 
is tested extensively on the Dawn CI 
(https://ci.chromium.org/p/chromium/g/chromium.dawn/console) under the 
"webgpu_cts_compat_tests" suite. 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.



Flag name on about://flags
None


Finch feature name
WebGPUCompatibilityMode


Requires code in //chrome?
False


Tracking bug
https://issues.chromium.org/issues/40266903


Estimated milestones


Origin trial desktop first 139

Origin trial desktop last 145

Origin trial Android first 139

Origin trial Android last 145

Origin trial WebView first 139

Origin trial WebView last 145




Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/6436406437871616?gate=5369684226211840


This intent message was generated by Chrome Platform Status.

-- 
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+unsubscr...@chromium.org.
To view this discussion visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/683618d7.170a0220.2aa17e.17c5.GAE%40google.com.

Reply via email to