LGTM2 On Wed, Oct 2, 2024 at 8:06 AM Yoav Weiss (@Shopify) <yoavwe...@chromium.org> wrote:
> LGTM1 > > On Thursday, September 26, 2024 at 10:52:51 PM UTC+2 Alex Russell wrote: > >> Thanks, Ken. I suspected most of this, but thanks for filling in the >> background and detail. >> >> Again, I'm happy to let this go forward, just wanted to clarify how this >> can go more smoothly in the future, particularly re: putting this kind of >> thing in an Explainer and filing early w/ the TAG. >> >> Best, >> >> Alex >> >> On Wed, Sep 25, 2024 at 3:32 PM Ken Russell <k...@chromium.org> wrote: >> >>> Hi Alex, >>> >>> I don't want to speak for Jiawei but would like to provide a little more >>> background. This exposes a GPU hardware feature which allows the >>> application to specify additional clipping planes (in the form of distances >>> from the current vertex to each of those implicitly-specified planes) which >>> apply to geometry being drawn. The WebGPU API abstracts over this hardware >>> functionality, which is exposed by the underlying graphics APIs such as >>> Direct3D, Metal and Vulkan, on top of which WebGPU is implemented. >>> >>> I have not personally used this functionality, but >>> https://github.com/KhronosGroup/WebGL/issues/3109 captures a discussion >>> which motivated adding a similar extension to WebGL. The hardware feature >>> is faster, and provides higher quality visual results, than attempting to >>> emulate its behavior at the user level, which would generally be done by >>> discarding individual pixels in the fragment shader. >>> https://github.com/gpuweb/gpuweb/issues/390 contains the public >>> discussion adding the feature to WebGPU. >>> >>> It would be a fair amount of work to write up an explainer for every GPU >>> hardware feature that the WebGPU working group collectively agrees to add >>> either to the core specification or as an optional feature. In this and >>> many other cases there is no alternative to be considered; it's basically >>> either expose the hardware feature, or not. >>> >>> -Ken >>> >>> >>> >>> On Wed, Sep 25, 2024 at 2:22 PM Alex Russell <slightly...@chromium.org> >>> wrote: >>> >>>> Hey Jiawei, >>>> >>>> Thanks for filing this intent. It would be good if you opened explicit >>>> requests for position from Mozilla. We try not to impute stances based on >>>> WG conversations for a lot of reasons, but primarily because other engines >>>> have asked us not to. >>>> >>>> On TAG review, I agree that this is a small feature that doesn't need >>>> additional oversight and alignment, and I'll stand in on this one to say it >>>> looks OK. >>>> >>>> That said, it would be good to see an Explainer that outlines the value >>>> of the feature and how this will be used in real code to solve an important >>>> problem. Particularly if there were other alternatives considered. >>>> >>>> Also, asking for the TAG to look over something should come well before >>>> something lands in spec text, which is why our process recommends you begin >>>> that at Intent to Prototype phase. In this case, if you'd reached out when >>>> clipping was proposed, you would probably have already produced an >>>> explainer and gotten the TAG to indicate that they don't feel they need to >>>> review it, saving you time at this step. >>>> >>>> Best, >>>> >>>> Alex >>>> >>>> On Tuesday, September 24, 2024 at 7:25:54 PM UTC-7 jiawe...@intel.com >>>> wrote: >>>> >>>>> Done >>>>> >>>>> On Wednesday, September 25, 2024 at 8:06:02 AM UTC+8 >>>>> vmp...@chromium.org wrote: >>>>> >>>>>> Hey, >>>>>> >>>>>> Do you mind filing the reviews for other chips: >>>>>> [image: cs.png] >>>>>> >>>>>> Thanks! >>>>>> Vlad >>>>>> >>>>>> On Mon, Sep 23, 2024 at 11:07 PM Shao, Jiawei <jiawe...@intel.com> >>>>>> wrote: >>>>>> >>>>>>> *Contact emails* >>>>>>> >>>>>>> jiawe...@intel.com >>>>>>> >>>>>>> >>>>>>> *Explainer* >>>>>>> >>>>>>> The “clip-distances” GPU feature adds the WGSL built-in variable >>>>>>> @builtin(clip_distances) to allow a vertex shader to output user-defined >>>>>>> clip distances. https://github.com/gpuweb/gpuweb/pull/4588 >>>>>>> >>>>>>> >>>>>>> *Specification* >>>>>>> >>>>>>> https://gpuweb.github.io/gpuweb/#dom-gpufeaturename-clip-distances >>>>>>> >>>>>>> >>>>>>> *Summary* >>>>>>> >>>>>>> Adds the optional GPU feature "clip-distances" that allows setting >>>>>>> user-defined clip distances in vertex shader outputs. This technique is >>>>>>> particularly useful for the applications that need to clip all vertices >>>>>>> in >>>>>>> a scene that are beyond a user-defined plane, such as many CAD >>>>>>> applications. >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Blink component* >>>>>>> >>>>>>> Blink>WebGPU >>>>>>> <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3EWebGPU> >>>>>>> >>>>>>> >>>>>>> *TAG review* >>>>>>> >>>>>>> None >>>>>>> >>>>>>> >>>>>>> *TAG review status* >>>>>>> >>>>>>> Pending >>>>>>> >>>>>>> >>>>>>> *Risks* >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Interoperability and Compatibility* >>>>>>> >>>>>>> This feature has been approved in W3C GPU for the Web WG meetings >>>>>>> including participants from Safari and Firefox. Related meeting minutes: >>>>>>> https://github.com/gpuweb/gpuweb/wiki/GPU-Web-2024-05-29#add-optional-feature-clip-distances-if-there-are-new-questions-4588 >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Gecko*: No signal (Mozilla members have approved >>>>>>> https://github.com/gpuweb/gpuweb/pull/4588 and requested during >>>>>>> weekly standardization meetings that we postpone filing standard >>>>>>> positions >>>>>>> until we reach Candidate Recommendation (CR) status in Q4) >>>>>>> >>>>>>> *WebKit*: Positive ( >>>>>>> https://github.com/WebKit/standards-positions/issues/294#issuecomment-1877411933 >>>>>>> ) >>>>>>> >>>>>>> *Web developers*: Positive ( >>>>>>> https://github.com/gpuweb/gpuweb/issues/390) >>>>>>> >>>>>>> *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 >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *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 >>>>>>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?* >>>>>>> >>>>>>> Yes >>>>>>> >>>>>>> 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. All the tests about this feature in WebGPU CTS can be found >>>>>>> through the below link: https://github.com/gpuweb/cts/issues/3773 >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Flag name on chrome://flags* >>>>>>> >>>>>>> None >>>>>>> >>>>>>> >>>>>>> *Finch feature name* >>>>>>> >>>>>>> WebGPU.Enabled:UnsafeFeatures >>>>>>> >>>>>>> >>>>>>> *Requires code in //chrome?* >>>>>>> >>>>>>> False >>>>>>> >>>>>>> >>>>>>> *Tracking bug* >>>>>>> >>>>>>> https://issues.chromium.org/issues/358408571 >>>>>>> >>>>>>> >>>>>>> *Estimated milestones* >>>>>>> >>>>>>> No milestones specified >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> *Link to entry on the Chrome Platform Status* >>>>>>> >>>>>>> https://chromestatus.com/feature/5141929256550400 >>>>>>> >>>>>>> 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+...@chromium.org. >>>>>>> >>>>>> >>>>>>> To view this discussion on the web visit >>>>>>> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/DM4PR11MB623701939A127A3BA2309335ED682%40DM4PR11MB6237.namprd11.prod.outlook.com >>>>>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/DM4PR11MB623701939A127A3BA2309335ED682%40DM4PR11MB6237.namprd11.prod.outlook.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/6e10c833-c870-4070-939a-b53b4c764c6an%40chromium.org >>>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6e10c833-c870-4070-939a-b53b4c764c6an%40chromium.org?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/4be99bff-1fdb-4778-907d-bc5acb5a07f9n%40chromium.org > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/4be99bff-1fdb-4778-907d-bc5acb5a07f9n%40chromium.org?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/CAOMQ%2Bw_0C-5rrzbcuiPebmRwnAZgikoLCf1LG6fan1XM2q30aQ%40mail.gmail.com.