Setelah bertahun-tahun dalam pengembangan, tim Chrome mengirimkan WebGPU yang memungkinkan grafis 3D berperforma tinggi dan komputasi paralel data di web.
Tim Chrome dengan senang hati mengumumkan bahwa WebGPU kini tersedia secara default di Chrome 113, yang saat ini tersedia di saluran Beta. WebGPU adalah API grafis web baru 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 lebih fleksibel dan akses ke kemampuan lanjutan yang tidak disediakan oleh WebGL.
Rilis awal WebGPU ini tersedia di ChromeOS, macOS, dan Windows. Dukungan untuk platform lainnya akan hadir akhir tahun ini.
Fajar baru untuk grafis web
WebGPU adalah API baru untuk web, yang mengekspos kemampuan hardware modern dan memungkinkan operasi rendering dan komputasi pada GPU, mirip dengan Direct3D 12, Metal, dan Vulkan. Tidak seperti lini API WebGL, WebGPU menawarkan akses ke berbagai fitur GPU yang lebih canggih dan memberikan dukungan kelas satu untuk komputasi umum pada GPU. API ini dirancang dengan mempertimbangkan platform web, menampilkan JavaScript API idiomatis, integrasi dengan promise, dukungan untuk mengimpor video, dan pengalaman developer yang disempurnakan dengan pesan error yang besar.
Rilis awal WebGPU ini berfungsi sebagai elemen penyusun untuk update dan peningkatan mendatang. API ini akan menawarkan fitur grafis yang lebih canggih, dan developer dianjurkan untuk mengirimkan permintaan fitur tambahan. Tim Chrome juga berencana memberikan akses yang lebih mendalam ke inti shader untuk lebih banyak pengoptimalan machine learning dan ergonomi tambahan dalam WGSL, WebGPU Shading Language.
WebGPU merupakan hasil dari upaya kolaboratif “GPU for the Web” Community Group dari W3C, yang mencakup kontribusi dari perusahaan-perusahaan besar seperti Mozilla, Apple, Intel, dan Microsoft. Setelah enam tahun pengembangan (90 kontributor, 2000 commit, 3.000 masalah), dari desain awal pada tahun 2017, implementasi pertama kini tersedia di Chrome, dengan dukungan untuk Firefox dan Safari sedang berlangsung.
Baik library Dawn untuk Chromium maupun library wgpu untuk Firefox tersedia sebagai paket mandiri, dan keduanya menawarkan portabilitas yang bagus serta lapisan ergonomis yang mengabstraksi API GPU OS. Menggunakan library ini di aplikasi native juga akan mempermudah porting ke WASM melalui Emscripten dan Rust web-sys.
Dukungan browser
Rilis awal WebGPU ini tersedia di Chrome 113 pada 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 di 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 baris perubahan:
- Babylon.js sudah 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 contohnya.
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.
Ucapan terima kasih
Terima kasih banyak kepada semua kontributor Chromium, dan terutama kepada pengguna Intel atas dukungan mereka yang sangat berharga dalam mewujudkan hal ini.