Habaynkii Firefox dhisaa hadda waxaa ku jira taageerada WebGPU

Π’ habeen Firefox ayaa dhista muuqday taageero qeexid WebGPU, kaas oo siiya is-dhexgal barnaamijeed farsamaynta sawirada 3D iyo xisaabinta dhinaca GPU-da, fikrad ahaan la mid ah API-ga volcano, birta ΠΈ Toos3D 12. Faahfaahinta waxaa soo saaray Mozilla, Google, Apple, Microsoft iyo xubnaha bulshada kooxda shaqada, waxaa abuuray ururka W3C.

Hadafka muhiimka ah ee WebGPU waa in la bixiyo aamin, adeegsade-saaxiibtinimo, laqaadan karo, iyo is-dhexgal barnaamijeed heersare ah oo loogu talagalay madal Shabakadda si loo xoojiyo tignoolajiyada garaafyada 3D iyo awoodaha ay bixiso API-yada garaafyada nidaamka casriga ah, sida Direct3D 12 ee Windows, Metal on macOS, iyo Vulkan on Linux. Fikrad ahaan, WebGPU waxay kaga duwan tahay WebGL si la mid ah sida ay Vulkan uga duwan tahay OpenGL, isla markaana kuma salaysna API garaafyo gaar ah, laakiin waa lakab caalami ah oo guud ahaan isticmaala isla heerarka hoose ee laga helo Vulkan, Birta iyo Direct3D.

WebGPU waxay siisaa codsiyada JavaScript oo leh kontorool hoose oo ku saabsan abaabulka, habaynta, iyo gudbinta amarada GPU-da, maaraynta agabka la xidhiidha, xusuusta, kaydinta, walxaha la isku qurxiyo, iyo hadhka garaafyada la soo ururiyey. Habkani wuxuu kuu ogolaanayaa inaad ku guulaysato waxqabadka sare ee codsiyada sawirada adiga oo yareynaya kharashka dheeraadka ah iyo kordhinta waxtarka la shaqeynta GPU.

WebGPU waxay suurtogal ka dhigtaa in loo abuuro mashruucyo 3D ah oo dhamaystiran oo loogu talagalay Shabakadda kuwaas oo ka shaqeeya wax aan ka xunayn barnaamijyada taagan ee si toos ah u gala Vulkan, Metal ama Direct3D, laakiin aan ku xidhnayn goobo gaar ah. WebGPU waxa kale oo ay bixisaa awoodo dheeraad ah marka la gudbinayo barnaamijyada sawirada garaafyada qaab shabkada karti u leh iyada oo la adeegsanayo tignoolajiyada WebAssembly. Marka laga soo tago garaafyada 3D, WebGPU waxa kale oo ay dabooshaa awoodaha la xidhiidha rarista xisaabaadka GPU-da iyo taageeridda horumarinta hadhka. Shaders mogut lagu abuuraa luqadda Shading WebGPU ama lagu qeexo qaabka dhexe ee SPIR-V, ka dibna loo turjumo luqadaha shader ee ay taageerayaan darawalada hadda jira.

WebGPU waxay isticmaashaa maaraynta kala duwan ee agabka, shaqada diyaarinta, iyo gudbinta amarada GPU-da (WebGL, hal shay ayaa ka masuula wax walba halmar). Saddex xaaladood oo kala duwan ayaa la bixiyaa:
Qalabka GPU ee loogu talagalay abuurista ilaha sida textures iyo baffers; GPUCommandEncoder si loo codeeyo amarada gaarka ah, oo ay ku jiraan samaynta iyo heerarka xisaabinta; GPUCommandBuffer in saf loogu galo fulinta GPU-da. Natiijadu waxay noqon kartaa meel la xidhiidha hal ama in ka badan canvas canvas, ama la farsamayn karaa iyada oo aan wax soo saar lahayn (tusaale, marka la wado hawlaha xisaabinta). Kala soocida marxaladaha waxay sahlaysaa in la kala saaro hawl abuurka iyo diyaarinta agabka loo qaybiyo maamulayaal kala duwan oo ku shaqayn kara dunta kala duwan.

Farqiga labaad ee u dhexeeya WebGPU iyo WebGL waa hab ka duwan wax ka qabashada dawladaha. WebGPU waxay bixisaa laba walxood - GPURenderPipeline iyo GPUComputePipeline, taas oo kuu ogolaanaysa inaad isku darto dawlado kala duwan oo horay u qeexay horumariyaha, kaas oo u oggolaanaya browserka in uusan ku lumin kheyraadka shaqada dheeraadka ah, sida dib u habeynta shaders. Dawladaha la taageero waxaa ka mid ah: hadhka, duleelka dhabarka iyo qaabaynta sifada, qaabaynta kooxeed dhegdheg, isku darka, qoto dheer iyo qaababka, iyo qaababka wax soo saarka kadib.

Qaabka saddexaad ee WebGPU waxaa loo yaqaan qaab-xidhka, inta badan
xusuusta agab kooxaynta kheyraadka ee Vulkan.
Si loo wada ururiyo agabka, WebGPU waxay bixisaa shay GPUBindGroup, kaas oo lala xidhiidhin karo walxaha kale ee la midka ah si loogu isticmaalo hadhka marka la qorayo amarada. Abuuritaanka kooxaha noocan oo kale ah waxay u ogolaataa darawalka inuu horay u sameeyo ficilada diyaarinta ee lagama maarmaanka ah, waxayna u ogolaataa browserka inuu bedelo isku xirka kheyraadka ee u dhexeeya wicitaanada soo jiidashada si dhakhso ah. Nashqada isku xidhka ilaha waxa lagu sii qeexi karaa iyadoo la isticmaalayo shayga GPUBindGroupLayout.

Habaynkii Firefox dhisaa hadda waxaa ku jira taageerada WebGPU

Firefox gudaheeda, goobta "dom.webgpu.enabled" waxa lagu bixiyaa ku saabsan: config si ay awood ugu yeelato WebGPU. CanvasContext samaynta sidoo kale waxay u baahan tahay curinta si loo hawlgeliyo WebRender ("gfx.webrender.all" ee ku saabsan: config), oo ku qoran Rust and outsourcing page content taasoo siinaysa GPU-ga. Hirgelinta WebGPU waxay ku salaysan tahay xeerka mashruuca
wgpu, ku qoran Rust oo awood u leh inay ku ordo dusha sare ee DX12, Vulkan iyo Birta APIs ee Linux, Android, Windows iyo macOS (DX11 iyo OpenGL ES 3.0 taageero ayaa sidoo kale ku jira horumarinta). Waxa barbar socda, Google waxa ay soo saaraysaa hirgelin kale, kaas oo laga heli karo gudaha Laanta Canary Chromium oo waa la dajiyay iyadoo la adeegsanayo calanka "chrome://flags/#enable-unsafe-webgpu", laakiin ilaa hadda waxay ka shaqeysaa macOS iyo Windows.

Source: opennet.ru

Add a comment