On 9/9/24 10:38 AM, 'François Beaufort' via blink-dev wrote:
Contact emails
fbeauf...@google.com
Explainer
None
Specification
https://gpuweb.github.io/gpuweb/#dom-gpuadapter-info
Summary
The WebGPU WG decided it was impractical for requestAdapterInfo() to
trigger a permission prompt so they’ve removed that option and
replaced it with the GPUAdapter info attribute so that web developers
can get the same GPUAdapterInfo value synchronously this time. See the
previous intent to ship at
https://groups.google.com/a/chromium.org/g/blink-dev/c/eZqMmX7q_bA/m/euMLVMpxAgAJ
Blink component
Blink>WebGPU
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU>
Motivation
The requestAdapterInfo() asynchronous method in WebGPU is redundant
because developers can already get GPUAdapterInfo synchronously using
the GPUAdapter info attribute. Hence, it should be removed.
A search for the string "requestAdapterInfo" in HTTPArchive yielded no
results.
According to
https://chromestatus.com/metrics/feature/timeline/popularity/4977, the
requestAdapterInfo() method accounted for approximately 0.41% of page
loads in September 2024.
Chrome UKMs helped us in identifying the most popular websites using
the WebGPU requestAdapterInfo() method: - Twitch: The team has been
contacted and has indicated that they will update their code. -
Dynatrace: Used by the vast majority of those websites for analytics,
they have been made aware of this deprecation.
Initial public proposal
None
TAG review
None
TAG review status
Not applicable
Risks
Interoperability and Compatibility
When WebGPU eventually launches in Safari and Firefox, websites will
be able to get GPUAdapterInfo values exclusively through the
standardized GPUAdapter info attribute. We anticipate Safari and
Firefox will soon support WebGPU, but won't include this non-standard
method. Therefore, the sooner Chromium implements the Deprecate and
Remove process, the less likely it is that content will work in
Chromium but not in other browsers. In Chromium-based browsers, as the
requestAdapterInfo() asynchronous method returned a promise, websites
that followed best practices were already catching rejected promises.
Web developers have been made aware of this change in July 2024 at
https://developer.chrome.com/blog/new-in-webgpu-127?hl=en#gpuadapter_info_attribute.
They can use the following one-line code during the transition period:
const info = adapter.info <http://adapter.info> || await
adapter.requestAdapterInfo();
I know that WebKit !== Safari, but I do see they have requestAdapterInfo
<https://github.com/WebKit/WebKit/blob/e5b033ce5afcc666cf85ec75d53179dbd75006df/Source/WebCore/Modules/WebGPU/GPUAdapter.idl#L41>
today. Do we have any sense of what their plans are there (maybe a
standards position could clarify that)?
/Gecko/: No signal
/WebKit/: No signal
/Web developers/: No signals
/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
Debuggability
None
Is this feature fully tested by web-platform-tests
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?
No
Flag name on chrome://flags
None
Finch feature name
None
Non-finch justification
None
Requires code in //chrome?
False
Estimated milestones
No milestones specified
Link to entry on the Chrome Platform Status
https://chromestatus.com/feature/5140787340509184?gate=5110989125844992
This intent message was generated by Chrome Platform 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+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KohE-NU%2B0bAsWzgaNLUCPGCqBr%2BH3jpoY58yGK-frwOg%40mail.gmail.com
<https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAPpwU5KohE-NU%2B0bAsWzgaNLUCPGCqBr%2BH3jpoY58yGK-frwOg%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+unsubscr...@chromium.org.
To view this discussion on the web visit
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/53bb5eb0-59ff-4ad3-9609-bb37f924bc63%40chromium.org.