On Mon, Sep 9, 2024 at 5:47 PM Mike Taylor <miketa...@chromium.org> wrote:
> On 9/9/24 11:45 AM, François Beaufort wrote: > > On Mon, Sep 9, 2024 at 5:39 PM Mike Taylor <miketa...@chromium.org> wrote: > >> 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 || 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)? >> > > As you can see in > https://github.com/gpuweb/gpuweb/pull/4662#issuecomment-2141279713, they > re-added temporarily requestAdapterInfo() at the time to avoid breaking > websites that didn't make the move yet. > FYI, I've updated Apache TVM used by WebLLM to use adapter.info in > apache/tvm#17051 <https://github.com/apache/tvm/pull/17051>. > > Cool - does that mean WebKit is willing to remove it now (or shortly after > we do)? > I believe they do but I'll let them respond to that: https://github.com/gpuweb/gpuweb/pull/4662#issuecomment-2338474559 > >> >> *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/CAPpwU5%2B7mtBBx32Qcyx2o%3DH-siO%3DkEE%2BOg2_SDnfNyD54-VnBA%40mail.gmail.com.