Andrew Cunningham/Google
Google diumumkan hari ini Dimulai dengan versi 113, yang saat ini masih dalam versi beta, ini akan mengaktifkan dukungan WebGPU di browser Chrome secara default. Dalam pengembangan sejak 2017, WebGPU adalah API grafis generasi berikutnya yang bertujuan untuk menghadirkan manfaat API dengan overhead rendah seperti Microsoft Direct3D 12, Apple’s Metal, dan Vulkan ke browser web dan aplikasi lainnya.
Dukungan WebGPU tersedia, tetapi dinonaktifkan secara default di Chrome saat ini karena API belum diselesaikan dan hal-hal dapat terputus dari pembaruan ke pembaruan. Google mengatakan Mozilla dan Apple pada akhirnya akan mendukung WebGPU di Firefox dan Safari, dan browser seperti Microsoft Edge dan Opera, yang mengandalkan mesin browser Chromium, dapat memilih untuk mengaktifkannya, seperti yang dimiliki Google.
Chrome 113 mendukung WebGPU di Windows, macOS, dan ChromeOS, dengan “dukungan untuk platform lain” seperti Linux dan Android yang akan hadir akhir tahun ini.” Versi browser ini akan dirilis ke semua pengguna Chrome pada bulan Mei.
Dukungan di Chrome untuk standar baru apa pun, baik itu API baru atau yang diperbarui, format gambar, atau codec video, merupakan peningkatan besar. Menurut data StatCounter, Chrome menyumbang sekitar dua pertiga dari pangsa pasar browser di seluruh dunia, dan hampir 80 persen dari semua pangsa pasar browser jika browser berbasis Chromium lainnya dihitung. Setelah Safari dan Firefox menambahkan dukungan, semua browser web di mana pun akan dapat menjalankan kode WebGPU, jadi ada baiknya menjelaskan secara singkat apa itu WebGPU dan mengapa itu ada.
Apa itu WebGPU?
WebGPU adalah semacam penerus WebGL, API yang sangat tua yang memungkinkan Anda merender grafik berbasis OpenGL di browser Anda tanpa memerlukan plugin pihak ketiga tambahan, seperti Adobe’s Flash. Meskipun revolusioner ketika diumumkan pada tahun 2009, WebGL mengalami masalah yang sama seperti OpenGL hari ini: tidak memanfaatkan semua fitur GPU saat ini, dapat kehilangan kinerja karena overhead driver, dan memiliki dukungan terbatas dan kludgey untuk beban kerja komputasi GPU.
“WebGL sebagian besar untuk menggambar gambar, tetapi dapat digunakan kembali (dengan banyak usaha) untuk melakukan perhitungan lain, WebGPU memiliki dukungan kelas satu untuk melakukan perhitungan umum pada GPU,” katanya. Draf dokumen yang menjelaskan mengapa WebGPU ada. API baru akan mengaktifkan grafis yang ditingkatkan dalam kerangka kerja seperti Babylon.js dan mesin game seperti Unity; mendukung beban kerja yang dipercepat GPU seperti pembelajaran mesin dan AI; Dan aplikasi foto dan video berbasis web (antara lain) dapat mempermudah penggunaan jenis akselerasi GPU yang dimanfaatkan oleh aplikasi asli.
WebGPU sedang dikembangkan oleh kelompok kerja Termasuk anggota Dari perusahaan seperti Google, Microsoft, Apple, Mozilla, Intel, dan banyak lagi, API secara konsekuen dirancang agar kompatibel seluas mungkin. WebGPU bukanlah implementasi langsung dari API grafis yang ada, melainkan API miliknya sendiri yang berinteraksi dengan Direct3D 12, Metal, dan Vulkan. Penjelas ini Surma, seorang insinyur di Shopify dan mantan Googler, merangkumnya dengan baik (penekanan kami):
“Sementara WebGL adalah pembungkus tipis di sekitar OpenGL, WebGPU memilih pendekatan yang berbeda. Ini memperkenalkan abstraksinya sendiri dan tidak secara langsung mencerminkan salah satu dari API asli ini. Ini karena satu API tidak tersedia di semua sistem, dan banyak konsep (seperti manajemen memori yang sangat terbatas) tidak unik untuk API yang menghadap ke web. Sebaliknya, WebGPU dirancang untuk menjadi “webby” dan intuitif Duduk dengan nyaman di atas API grafis asli untuk mengabstraksi keunikannya. Itu sedang distandarisasi di W3C dengan semua vendor browser utama duduk di meja.”
Ini terbayar dengan membuat kode WebGPU lebih portabel – tulis kode WebGPU, dan selama pengguna memiliki perangkat keras dan browser yang mendukungnya, Anda akan mendapatkan hasil yang sama pada sistem Windows yang menjalankan Direct3D dan ponsel Android yang menjalankan Vulkan. Dan ini menghindari beberapa peretasan yang membuat WebGL berfungsi—misalnya, WebGL di Windows dan macOS tidak menggunakan OpenGL secara langsung, melainkan apa yang disebut juru bahasa. Sudut Ini mengubah panggilan API OpenGL menjadi panggilan Direct3D dan Metal API. Dengan WebGPU, tidak perlu memulai proyek terpisah untuk mengatasi implementasi OpenGL yang lambat atau tidak terpelihara dengan baik.
WebGPU juga memiliki bahasa shadernya sendiri (WGSL), yang masih didukung oleh tim Chrome—pengumuman hari ini mengatakan bahwa Google “berencana untuk menyediakan akses yang lebih dalam ke inti shader” melalui WGSL dalam rilis mendatang. Seperti API WebGPU lainnya, WGSL adalah platform-agnostik dan mudah diterjemahkan ke bahasa shader pilihan dari sistem operasi apa pun yang Anda jalankan.
Akhirnya, terlepas dari “web” dalam namanya, API WebGPU tidak terbatas pada browser. Itu proyek wgpu adalah versi WebGPU untuk Rust yang memungkinkan aplikasi WebGPU ditulis dan dijalankan di luar browser web.
Jika Anda ingin bereksperimen dengan WebGPU sekarang, tersedia versi beta Chrome 113 Di Sini. Ada repo GitHub dari contoh kode Di SiniDan ada dokumen resmi tentang keduanya WebGPU Dan WGSL.

“Wannabe web geek. Pakar alkohol. Introvert bersertifikat. Penginjil zombie. Pelopor Twitter. Komunikator. Sarjana TV yang tidak dapat disembuhkan.”