WebGPU adalah API grafis web yang menawarkan manfaat signifikan, seperti pengurangan beban kerja JavaScript yang signifikan untuk grafis yang sama dan peningkatan lebih dari tiga kali lipat dalam inferensi model machine learning. Hal ini memungkinkan karena pemrograman GPU yang fleksibel dan akses ke kemampuan lanjutan yang tidak disediakan oleh WebGL.
API ini dirancang dengan mempertimbangkan platform web, yang dilengkapi dengan JavaScript API idiomatis, integrasi dengan promise, dukungan untuk mengimpor video, dan pengalaman developer yang lebih rapi dengan pesan error yang jelas.
WebGPU adalah hasil dari upaya kolaboratif “GPU for the Web” Community Group dari W3C, yang mencakup kontribusi dari perusahaan besar seperti Mozilla, Apple, Intel, dan Microsoft.
Dukungan browser
Rilis awal WebGPU ini tersedia di Chrome 113, di perangkat ChromeOS dengan dukungan Vulkan, perangkat Windows dengan dukungan Direct3D 12, dan macOS. Linux, Android, dan dukungan yang diperluas untuk platform yang ada akan segera hadir.
WebGPU masih dalam proses pengerjaan untuk Firefox dan Safari, selain implementasi awal di Chrome.
Dukungan library
Banyak library WebGL yang banyak digunakan sudah dalam proses penerapan dukungan WebGPU atau telah melakukannya. Artinya, penggunaan WebGPU mungkin hanya memerlukan satu perubahan baris.
- Babylon.js memiliki dukungan WebGPU penuh.
- PlayCanvas mengumumkan dukungan WebGPU awal.
- TensorFlow.js mendukung sebagian besar operator versi yang dioptimalkan WebGPU.
- Dukungan WebGPU Three.js sedang berlangsung, lihat contoh.
Baik library Dawn untuk Chromium maupun library wgpu untuk Firefox tersedia sebagai paket mandiri. Jenis layar ini menawarkan portabilitas luar biasa dan lapisan ergonomis yang mengabstraksi API GPU sistem operasi. Menggunakan library ini di aplikasi native memudahkan transfer ke WASM melalui Emscripten dan Rust web-sys.
Referensi
WebGPU adalah teknologi yang signifikan, dan kami merekomendasikan referensi berikut untuk mempelajari lebih lanjut:
- Lihat spesifikasi W3C untuk WebGPU dan WGSL.
- Lakukan eksperimen dengan sampel dan jelajahi WGSL dengan tur.
- Lihat dokumentasi MDN.
- Baca penjelasan dan praktik terbaik resmi.
- Pelajari komputasi GPU dan lainnya.