Intent to extent Origin Trial: WebGPU

190 views
Skip to first unread message

Corentin Wallez

unread,
Nov 2, 2021, 9:19:45 AM11/2/21
to blink-dev

The origin trial for WebGPU was started in M94 and was scheduled to end in M96. This was later extended to M97 with the shift to 4-week releases. We are asking to extend to M101 so that developers have more time to port their content to WebGPU and provide feedback.


Contact emails

cwa...@chromium.orgbcla...@google.comkai...@chromium.org

Explainer

https://gpuweb.github.io/gpuweb/explainer/

Specification

https://gpuweb.github.io/gpuweb/

Design docs


https://gpuweb.github.io/gpuweb/
https://gpuweb.github.io/gpuweb/wgsl/
https://gpuweb.github.io/gpuweb/explainer/

Summary

The WebGPU API is the successor to the WebGL and WebGL 2 graphics APIs for the Web. It will provide modern features such as “GPU compute” as well as lower overhead access to GPU hardware and better, more predictable performance. WebGPU is being developed by the “GPU for the Web” W3C community group.


WebGPU is a large and complex API, and it takes time for developers to port existing applications to it, both from WebGL and other 3D graphics APIs. We are getting valuable feedback and bug reports from small projects using WebGPU now that the Origin Trial is in M94, and the Finch live-switch for the GPU process side is at 100% since last week. However, larger projects haven't yet had time to complete ports, and can't provide good feedback yet. Extending the Origin Trial time frame will allow us to receive feedback, address it, and then see if there's further feedback.



Blink component

Blink>WebGPU

Search tags

gpuwebgl

TAG review

https://github.com/w3ctag/design-reviews/issues/626

TAG review status

Still pending.

Risks



Interoperability and Compatibility

With positive signals (and at least WIP implementations) from all browsers, the biggest interoperability risk is the surface of the API which is quite large.



Gecko: In development (https://hg.mozilla.org/mozilla-central/file/tip/dom/webgpu)

WebKit: In development (https://trac.webkit.org/browser/webkit/trunk/Source/WebCore/Modules/webgpu)

Web developers: Strongly positive (https://doc.babylonjs.com/extensions/webgpu) Significant interest and positive feedback from the many early adopters (Babylon.js, Earth, TF.js, sokol-gfx, and many many others).

Activation

WebGPU is not polyfillable on existing APIs and requires hardware support on the system. (software fallback is not implemented yet).



Security

See detailed security explainer: https://gpuweb.github.io/gpuweb/#malicious-use



Goals for experimentation

Allow developers to use WebGPU and provide feedback on the API or the shading language. We expect feedback about ergonomics, ease of use and easy of porting existing content to WebGPU, and missing features. As well as many bug reports :) Also help partners evaluate the performance of WebGPU in the wild to figure out areas of the implementation to optimize before launch.



Reason this experiment is being extended

WebGPU is a large and complex API, and it takes time for developers to port existing applications to it, both from WebGL and other 3D graphics APIs. We are getting valuable feedback and bug reports from small projects using WebGPU now that the Origin Trial is in M94, and the Finch live-switch for the GPU process side is at 100% since last week. However, larger projects haven't yet had time to complete ports, and can't provide good feedback yet. Extending the Origin Trial time frame will allow us to receive feedback, address it, and then see if there's further feedback.



Ongoing technical constraints

None



Debuggability

Warnings and errors are exposed via dev tools. Specialized tools for debugging are TBD.



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

No

This feature will not be available in Origin Trial on: - Android because adding Android support is a lot of engineering that we're scheduling to happen between the Origin Trial and the shipment of WebGPU. - Windows 7 and 8 since they don't have D3D12. Support will be extended to these versions of Windows after the first version of WebGPU is shipped. - Other devices that don't support D3D12/Metal/Vulkan or don't have a GPU with good enough minimum specifications.(maybe) - ARM devices if we don't find time to test on ARM platforms before the Origin Trial starts. The goal is that WebGPU will eventually be supported in hardware on the vast majority of systems on all Blink OSes and have software fallback on the others.



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

Yes

DevTrial instructions

https://github.com/gpuweb/gpuweb/wiki/Implementation-Status#chromium-chrome-edge-etc

Flag name

--enable-unsafe-webgpu

Requires code in //chrome?

False

Tracking bug

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

Launch bug

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

Estimated milestones

OriginTrial desktop last97
OriginTrial desktop first94


Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/6213121689518080

Links to previous Intent discussions

Intent to prototype: https://groups.google.com/a/chromium.org/forum/#!msg/blink-dev/dxqWTSvyhDg/1UDaFD17AQAJ
Intent to Experiment: https://groups.google.com/u/1/a/chromium.org/g/blink-dev/c/K4_egTNAvTs


This intent message was generated by Chrome Platform Status.

Chris Harrelson

unread,
Nov 2, 2021, 11:16:43 AM11/2/21
to Corentin Wallez, blink-dev
LGTM to extend to M101, but one request inline below.

On Tue, Nov 2, 2021 at 6:19 AM Corentin Wallez <cwa...@chromium.org> wrote:

The origin trial for WebGPU was started in M94 and was scheduled to end in M96. This was later extended to M97 with the shift to 4-week releases. We are asking to extend to M101 so that developers have more time to port their content to WebGPU and provide feedback.


Contact emails

cwa...@chromium.orgbcla...@google.comkai...@chromium.org

Explainer

https://gpuweb.github.io/gpuweb/explainer/

Specification

https://gpuweb.github.io/gpuweb/

Design docs


https://gpuweb.github.io/gpuweb/
https://gpuweb.github.io/gpuweb/wgsl/
https://gpuweb.github.io/gpuweb/explainer/

Summary

The WebGPU API is the successor to the WebGL and WebGL 2 graphics APIs for the Web. It will provide modern features such as “GPU compute” as well as lower overhead access to GPU hardware and better, more predictable performance. WebGPU is being developed by the “GPU for the Web” W3C community group.


WebGPU is a large and complex API, and it takes time for developers to port existing applications to it, both from WebGL and other 3D graphics APIs. We are getting valuable feedback and bug reports from small projects using WebGPU now that the Origin Trial is in M94, and the Finch live-switch for the GPU process side is at 100% since last week. However, larger projects haven't yet had time to complete ports, and can't provide good feedback yet. Extending the Origin Trial time frame will allow us to receive feedback, address it, and then see if there's further feedback.


Could you share some of the feedback you've received so far on this thread?
 
--
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/CAGdfWNNoEi5YwQPH1s%2B2960Bm9bqWOvMAWPp1C%3DYbXusPw2LSw%40mail.gmail.com.

Corentin Wallez

unread,
Nov 3, 2021, 5:25:47 AM11/3/21
to Chris Harrelson, blink-dev
Thank you!

We've had multiple pieces of feedback. A highlight is this blog post by Construct. There's also many small issues raised in the standard's group (and a recent, large and very technical piece of feedback). There's also a bunch of developers trying WebGPU in the Matrix channels (IRC, but different) that ask questions and file issues for the implementations. However it's not 100% clear what website they work on.
Reply all
Reply to author
Forward
0 new messages