Cumasófar tacaíocht WebGPU i Chrome

D’fhógair Google an tacaíocht réamhshocraithe don API grafaic WebGPU agus don WebGPU Shading Language (WGSL) sa bhrainse Chrome 113, atá sceidealta le scaoileadh ar 2 Bealtaine. Soláthraíonn WebGPU API cosúil le Vulkan, Metal, agus Direct3D 12 chun oibríochtaí taobh GPU a dhéanamh ar nós rindreála agus ríomh, agus ligeann sé duit freisin teanga shader a úsáid chun cláir GPU-taobh a scríobh. Ní dhéanfar cur chun feidhme WebGPU a chumasú ar dtús ach amháin i bhfoirgnimh do ChromeOS, macOS, agus Windows. Le haghaidh Linux agus Android, cuirfear tacaíocht WebGPU i ngníomh níos déanaí.

Chomh maith le Chrome, tá tástáil déanta ar thacaíocht turgnamhach WebGPU ó Aibreán 2020 i Firefox agus ó mhí na Samhna 2021 i Safari. Chun WebGPU a chumasú i Firefox, socraigh na bratacha dom.webgpu.enabled agus gfx.webgpu.force-chumasaithe i about:config. Níl aon phleananna ann WebGPU a chumasú de réir réamhshocraithe i Firefox agus Safari fós. Tá feidhmithe WebGPU a forbraíodh do Firefox agus Chrome ar fáil i bhfoirm leabharlanna ar leith - Dawn (C++) agus wgpu (Meirge), ar féidir leat a úsáid chun tacaíocht WebGPU a chomhtháthú isteach i d’fheidhmchláir. Tá obair ar siúl freisin chun tacaíocht WebGPU a chur le leabharlanna móréilimh JavaScript a úsáideann WebGL ó dhúchas. Mar shampla, tá tacaíocht iomlán do WebGPU fógartha cheana féin i Babylon.js, agus tacaíocht pháirteach i Three.js, PlayCanvas agus TensorFlow.js.

Go coincheapúil, tá difríocht mhór idir WebGPU agus WebGL ar an mbealach céanna a bhfuil an API grafaic Vulkan éagsúil le OpenGL, ach níl WebGPU bunaithe ar API grafaic ar leith, ach is ciseal ginearálta é a úsáideann na primitives íseal-leibhéil céanna a fhaightear in Vulkan, Miotal, agus Direct3D. Soláthraíonn WebGPU feidhmchláir JavaScript le rialú íseal-leibhéil ar eagrú, próiseáil agus tarchur orduithe chuig an GPU, ag bainistiú acmhainní gaolmhara, cuimhne, maoláin, réad uigeachta, agus scáthairí grafaicí tiomsaithe. Ligeann an cur chuige seo duit feidhmchláir grafaicí feidhmíochta níos airde a bhaint amach trí lastuas a laghdú agus éifeachtúlacht an GPU a mhéadú.

Is féidir le WebGPU tionscadail chasta 3D a chruthú don Ghréasán a oibríonn chomh maith le cláir neamhspleácha a úsáideann Vulkan, Metal nó Direct3D go díreach, ach nach bhfuil ceangailte le hardáin ar leith. Soláthraíonn an WebGPU roghanna breise freisin chun cláir dhúchasacha ghrafaice a aistriú chuig foirm atá cumasaithe don ghréasán trí thiomsú chuig WebAssembly. Chomh maith le grafaicí 3D, clúdaíonn WebGPU na féidearthachtaí a bhaineann le ríomhanna a dhíluchtú go dtí an taobh GPU agus scáthaitheoirí a chur i gcrích.

Príomhghnéithe WebGPU:

  • Bainistíocht ar leith acmhainní, obair ullmhúcháin agus tarchur orduithe chuig an GPU (i WebGL, bhí réad amháin freagrach as gach rud ag an am céanna). Soláthraítear trí chomhthéacs ar leith: GPUGléas chun acmhainní a chruthú mar uigeachtaí agus maoláin; GPUCommandEncoder chun orduithe aonair a ionchódú, lena n-áirítear na céimeanna rindreála agus ríofa; GPUCommandBuffer chun pas a fháil go dtí an scuaine rith GPU. Is féidir an toradh a sholáthar i limistéar a bhfuil baint aige le heilimint chanbhás amháin nó níos mó, nó a rindreáil gan aschur (mar shampla, agus tascanna ríomhaireachtúla á rith). De bharr scaradh na gcéimeanna is fusa oibríochtaí cruthaithe agus soláthair acmhainní a dheighilt ina láimhseálaithe éagsúla ar féidir leo oibriú ar shnáitheanna éagsúla.
  • Cur chuige difriúil maidir le stáit a láimhseáil. Soláthraíonn WebGPU dhá rud - GPURenderPipeline agus GPUComputePipeline, a ligeann duit stáit éagsúla réamhshainithe ag an bhforbróir a chur le chéile, rud a fhágann gur féidir leis an mbrabhsálaí gan acmhainní a chur amú ar obair bhreise, mar shampla scáthaitheoirí a ath-thiomsú. I measc na stáit a fhaigheann tacaíocht tá: scáthaitheoirí, leagan amach maoláin rinn agus tréithe, leagan amach grúpa greamaitheach, cumasc, doimhneacht agus patrúin, formáidí aschuir iar- rindreála.
  • Múnla ceangailteach, cosúil le huirlisí grúpála acmhainní Vulkan. Chun acmhainní a ghrúpáil ina ngrúpaí, soláthraíonn an WebGPU oibiacht GPUBindGroup, ar féidir, tráth scríofa na n-orduithe, a bheith bainteach le réada eile dá samhail lena n-úsáid i scáthaitheoirí. Ligeann cruthú grúpaí den sórt sin don tiománaí na gníomhartha ullmhúcháin riachtanacha a dhéanamh roimh ré, agus ligeann sé don bhrabhsálaí ceangail acmhainne a athrú idir glaonna tarraingthe i bhfad níos tapúla. Is féidir leagan amach na gceangal acmhainní a réamhshainiú trí úsáid a bhaint as réad GPUBindGroupLayout.

Foinse: oscailtenet.ru

Add a comment