W3C ngumumake draf standar WebGPU

W3C wis ngeculake draf pisanan saka spesifikasi WebGPU lan WebGPU Shading Language (WGSL), sing nemtokake API kanggo nindakake operasi GPU kayata rendering lan komputasi, uga basa shader kanggo nulis program sing mlaku ing GPU. konsep padha karo API Vulkan, Metal lan Direct3D 12. Spesifikasi disiapake dening klompok kerja sing kalebu insinyur saka Mozilla, Google, Apple lan Microsoft.

Secara konseptual, WebGPU beda karo WebGL kanthi cara sing padha karo API grafis Vulkan sing beda karo OpenGL, nanging ora adhedhasar API grafis tartamtu, nanging minangka lapisan universal sing nggunakake primitif tingkat rendah sing padha ing Vulkan, Metal lan Langsung3D. WebGPU nyedhiyakake aplikasi JavaScript kanthi kontrol tingkat rendah babagan organisasi, pangolahan lan transmisi printah menyang GPU, ngatur sumber daya sing gegandhengan, memori, buffer, obyek tekstur lan shader grafis sing dikompilasi. Pendekatan iki ngidini sampeyan entuk kinerja sing luwih dhuwur kanggo aplikasi grafis kanthi nyuda biaya overhead lan nambah efisiensi nggarap GPU.

WebGPU ndadekake iku bisa kanggo nggawe proyèk 3D Komplek kanggo Web sing dianggo ora Samsaya Awon saka program dewekan sing langsung ngakses Vulkan, Metal utawa Direct3D, nanging ora disambungake menyang platform tartamtu. WebGPU uga menehi kemampuan tambahan kanggo porting program grafis native menyang wangun web-aktif liwat kompilasi menyang WebAssembly. Saliyane grafis 3D, WebGPU uga kalebu kapabilitas sing ana gandhengane karo kalkulasi sing dicopot menyang GPU lan nglakokake shader.

Fitur utama WebGPU:

  • Manajemen kapisah saka sumber daya, karya preparatory lan transmisi printah kanggo GPU (ing WebGL siji obyek tanggung jawab kanggo kabeh bebarengan). Telung konteks kapisah diwenehake: GPUDevice kanggo nggawe sumber daya kayata tekstur lan buffer; GPUCommandEncoder kanggo ngodhe prentah individu, kalebu tahap rendering lan komputasi; GPUCommandBuffer bakal antri kanggo eksekusi ing GPU. Asil bisa ditampilake ing area sing ana gandhengane karo siji utawa luwih unsur kanvas, utawa diproses tanpa output (contone, nalika nindakake tugas komputasi). Misahake tahapan nggawe luwih gampang kanggo misahake nggawe sumber daya lan operasi nyiapake menyang panangan beda sing bisa mbukak ing Utas beda.
  • A pendekatan beda kanggo negara Processing. WebGPU nawakake rong obyek - GPURenderPipeline lan GPUComputePipeline, sing ngidini sampeyan nggabungake macem-macem negara sing wis ditemtokake dening pangembang, sing ngidini browser ora mbuwang sumber daya ing karya tambahan, kayata recompiling shaders. Negara sing didhukung kalebu: shader, buffer vertex lan tata letak atribut, tata letak grup lengket, campuran, ambane lan pola, lan format output post-render.
  • Model pengikat kaya fitur pengelompokan sumber daya Vulkan. Kanggo nglumpukake sumber daya bebarengan, WebGPU nyedhiyakake obyek GPUBindGroup, sing bisa digandhengake karo obyek liyane sing padha kanggo digunakake ing shader nalika nulis printah. Nggawe grup kuwi ngidini driver kanggo nindakake tumindak preparatory perlu ing advance, lan ngidini browser kanggo ngganti bindings sumber antarane tarik telpon luwih cepet. Tata letak ikatan sumber daya bisa ditemtokake kanthi nggunakake obyek GPUBindGroupLayout.

Source: opennet.ru

Add a comment