Firefox na Safari ili Kupata Usaidizi wa WebGPU

Mozilla imeamua kuwezesha usaidizi wa API ya WebGPU na WGSL (Lugha ya Uvuli wa WebGPU) katika Firefox. Kwa ajili ya jukwaa Windows Usaidizi wa WebGPU utawezeshwa kwa chaguo-msingi katika Firefox 141, iliyopangwa kufanyika Julai 22. Usaidizi wa WebGPU kisha umepangwa kuwezeshwa katika miundo kwa miezi ifuatayo: Linux и macOS, na baada ya muda fulani katika toleo la jukwaa AndroidIli kuwezesha WebGPU mwenyewe, unaweza kutumia vigezo vya "dom.webgpu.enabled" na "gfx.webrender.all" kwenye ukurasa wa about:config.

Katika Chrome, usaidizi wa WebGPU ulitolewa kwa chaguo-msingi katika toleo la 113, lililotolewa Mei 2023. Katika Safari, usaidizi wa WebGPU umepangwa kuwezeshwa kwa chaguo-msingi msimu huu wa kuanguka (msaada wa majaribio umepatikana tangu Novemba 2021). Katika Firefox, usaidizi wa majaribio wa WebGPU umekuwepo tangu 2020, lakini uliwezeshwa tu kwa chaguo-msingi katika miundo ya usiku ya Firefox. Utekelezaji wa WebGPU ya Firefox unatokana na msimbo wa mradi wa WGPU, ulioandikwa kwa Rust na unaweza kufanya kazi juu ya API za Direct3D 12, Vulkan, OpenGL, na Metal graphics.

WebGPU hutoa API sawa na Vulkan, Metal, na Direct3D 12 kwa kufanya shughuli kwenye upande wa GPU. Kando na michoro ya 3D, WebGPU pia inashughulikia uwezo unaohusiana na upakiaji wa hesabu kwa upande wa GPU na kutekeleza vivuli. Kwa dhana, WebGPU inatofautiana na maelezo ya zamani ya WebGL kwa njia ile ile ambayo API ya michoro ya Vulkan inatofautiana na OpenGL. Wakati huo huo, WebGPU haitegemei API maalum ya michoro, lakini ni safu ya ulimwengu wote inayotumia viwango vya chini vya hali ya juu ambavyo vinapatikana katika Vulkan, Metal, na Direct3D.

WebGPU huwezesha programu za JavaScript kudhibiti shirika, kuchakata, na uwasilishaji wa amri kwa GPU, na kudhibiti rasilimali zinazohusiana, kumbukumbu, vihifadhi, vitu vya maandishi, na vivuli vya michoro vilivyokusanywa. Mbinu hii huwezesha utendakazi wa juu zaidi wa programu za michoro kwa kupunguza matumizi ya juu na kuongeza ufanisi wa kufanya kazi na GPU.

Ukiwa na WebGPU, unaweza kuunda miradi ya 3D isiyoaminika, changamano inayofanya kazi pamoja na programu zinazojitegemea zinazotumia moja kwa moja Vulkan, Metal, au Direct3D. WebGPU pia hutoa uwezo wa ziada wa kusasisha programu za picha asilia kwa fomu inayoweza kufanya kazi katika vivinjari, shukrani kwa mkusanyiko wa WebAssembly.

Vipengele muhimu vya WebGPU na tofauti kutoka kwa WebGL:

  • Usimamizi tofauti wa rasilimali, kazi ya maandalizi na uhamisho wa amri kwa GPU (katika WebGL kitu kimoja kiliwajibika kwa kila kitu mara moja). Miktadha mitatu tofauti imetolewa: GPUDevice kwa ajili ya kuunda rasilimali kama vile maumbo na bafa; GPUCommandEncoder kwa ajili ya kusimba amri za kibinafsi, ikiwa ni pamoja na utoaji na hatua za kukokotoa; GPUCommandBuffer itawekwa kwenye foleni kwa ajili ya utekelezaji kwenye GPU. Matokeo yanaweza kutolewa katika eneo linalohusishwa na kipengee kimoja au zaidi cha turubai, au kuchakatwa bila pato (kwa mfano, wakati wa kutekeleza majukumu ya kukokotoa). Kutenganisha hatua hurahisisha kutenganisha uundaji wa rasilimali na shughuli za utayarishaji katika vishikilizi tofauti vinavyoweza kutumia nyuzi tofauti.
  • Njia tofauti ya majimbo ya usindikaji. WebGPU inatoa vitu viwili - GPURenderPipeline na GPUComputePipeline, ambayo inakuwezesha kuchanganya hali mbalimbali zilizofafanuliwa awali na msanidi, ambayo inaruhusu kivinjari kutopoteza rasilimali kwenye kazi ya ziada, kama vile kurejesha vivuli. Hali zinazotumika ni pamoja na: vivuli, bafa ya kipeo na mipangilio ya sifa, mipangilio ya vikundi vinavyonata, uchanganyaji, kina na ruwaza, na umbizo la towe la baada ya kutoa.
  • Muundo wa kumfunga kama vile vipengele vya uwekaji wa rasilimali za Vulkan. Ili kuweka rasilimali pamoja, WebGPU hutoa kitu cha GPUBindGroup, ambacho kinaweza kuhusishwa na vitu vingine sawa kwa matumizi ya vivuli wakati wa kuandika amri. Kuunda vikundi vile huruhusu dereva kufanya vitendo muhimu vya maandalizi mapema, na inaruhusu kivinjari kubadilisha vifungo vya rasilimali kati ya simu za kuteka kwa kasi zaidi. Mpangilio wa vifungo vya rasilimali unaweza kubainishwa mapema kwa kutumia kipengee cha GPUBindGroupLayout.

Chanzo: opennet.ru

Nunua upangishaji wa kuaminika wa tovuti zilizo na ulinzi wa DDoS, seva za VPS VDS 🔥 Nunua upangishaji wa tovuti unaoaminika kwa ulinzi wa DDoS, seva za VPS VDS | ProHoster