The WebGPU API is the successor to the WebGL and WebGL 2 graphics APIs for the Web. It provides 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.
With positive signals (and at least WIP implementations) from all browsers and few unresolved issues in the spec repo, the compatibility risk is low and mostly if other implementers find bugs in the spec as they flesh out their WebGPU implementation.
WebGPU is not polyfillable on existing APIs and requires hardware support on the system. (software fallback is not implemented yet).
See detailed security explainer: https://gpuweb.github.io/gpuweb/#malicious-use
Does this intent deprecate or change behavior of existing APIs, such that it has potentially high risk for Android WebView-based applications?
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.
Origin trial may extend past the originally-planned M97, because of the change in release cadence.
None
Warnings and errors are exposed via dev tools. Specialized tools can be built directly in JavaScript, integrated in applications or as devtools extensions.
This feature will not be available on: - 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. (though they get software fallback) - Android because adding Android support is a lot of engineering that we're scheduling to happen after the release of WebGPU on desktop. - Non-ChromeOS Linux due to dependencies on other reworks of the graphics stack there. (though it will get software fallback) - Other devices that don't support D3D12/Metal/Vulkan or don't have a GPU with good enough minimum specifications.(maybe) 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. In the short-term developers are expected to feature detect whether WebGPU is supported by checking if `navigator.gpu` exists and if `navigator.gpu.requestAdapter` resolves with a non-null GPUAdapter. If WebGPU is not supported then falling back to WebGL or another experience is appropriate. Long-term developers should be able to expect that WebGPU is close to universally available (similar to WebGL 2 today).
OriginTrial desktop last | 109 |
OriginTrial desktop first | 94 |
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).
Some issues are still open for discussion on the WebGPU and WGSL specification. They will all be solved by the time we ship WebGPU although new issues can appear in the meantime: we definitely expect to have minor spec bugs after shipping WebGPU but the overwhelming majority of the spec should see no behavioral changes.--
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/CAGdfWNOXrrDbMXARtTKzTWBFja_59K6dOVdSsf-0thD3cku05g%40mail.gmail.com.