Chrome ekibi, yıllar süren geliştirme çalışmalarının ardından web'de yüksek performanslı 3D grafiklere ve veri paralel hesaplamaya olanak tanıyan WebGPU'yu kullanıma sundu.
Chrome Ekibi olarak, WebGPU'nun şu anda Beta kanalında bulunan Chrome 113'te varsayılan olarak kullanıma sunulduğunu duyurmaktan mutluluk duyuyoruz. WebGPU, aynı grafikler için JavaScript iş yükünün önemli ölçüde azaltılması ve makine öğrenimi model çıkarımlarında üç kattan fazla iyileştirme gibi önemli avantajlar sunan yeni bir web grafik API'sidir. Bu, daha esnek GPU programlama ve WebGL'nin sağlamadığı gelişmiş özelliklere erişim sayesinde mümkündür.
WebGPU'nun bu ilk sürümü ChromeOS, macOS ve Windows'ta kullanılabilir. Diğer platformlar için destek bu yılın ilerleyen dönemlerinde kullanıma sunulacaktır.
Web grafikleri için yeni bir dönem
WebGPU, web için yeni bir API'dir. Modern donanım özelliklerini gösterir ve Direct3D 12, Metal ve Vulkan'a benzer şekilde GPU'da oluşturma ve hesaplama işlemlerine olanak tanır. WebGL API ailesinin aksine WebGPU, daha gelişmiş GPU özelliklerine erişim sunar ve GPU'daki genel hesaplamalar için birinci sınıf destek sağlar. Web platformu düşünülerek tasarlanan API, doğal bir JavaScript API'si, promises ile entegrasyon, videoları içe aktarma desteği ve mükemmel hata mesajları içeren mükemmel bir geliştirici deneyimi sunar.
WebGPU'nin bu ilk sürümü, gelecekteki güncellemeler ve iyileştirmeler için temel bir yapı taşı görevi görür. API, daha gelişmiş grafik özellikleri sunacak. Geliştiricilerin ek özellikler için istek göndermeleri önerilir. Chrome ekibi, WebGPU Gölgelendirme Dili olan WGSL'de daha da fazla makine öğrenimi optimizasyonu ve ek ergonomi için gölgelendirici çekirdeklerine daha derin erişim sağlamayı da planlıyor.
WebGPU, W3C'nin "Web için GPU" Topluluk Grubu tarafından ortaklaşa yürütülen bir çalışmanın sonucudur. Bu çalışmada Mozilla, Apple, Intel ve Microsoft gibi büyük şirketlerin katkıları da yer alır. 2017'deki ilk tasarımdan itibaren altı yıllık bir geliştirme sürecinin (90 katkıda bulunan, 2.000 taahhüt, 3.000 sorun) ardından ilk uygulama artık Chrome'da kullanıma sunuldu. Firefox ve Safari desteği için çalışmalar devam ediyor.
Hem Chromium için Dawn kitaplığı hem de Firefox için wgpu kitaplığı bağımsız paketler olarak kullanılabilir. Bu kitaplıklar, OS GPU API'lerini soyutlayan mükemmel taşınabilirlik ve ergonomik katmanlar sunar. Bu kitaplıkları yerel uygulamalarda kullanmak, Emscripten ve Rust web-sys aracılığıyla WASM'e geçişi de kolaylaştırır.
Tarayıcı desteği
WebGPU'nun bu ilk sürümü, Vulkan desteğine sahip ChromeOS cihazlarda, Direct3D 12 desteğine sahip Windows cihazlarda ve macOS'te Chrome 113'te kullanılabilir. Linux, Android ve mevcut platformlar için genişletilmiş destek yakında kullanıma sunulacaktır.
WebGPU, Chrome'daki ilk uygulamaya ek olarak Firefox ve Safari'de de kullanıma sunulmak üzere geliştirilmektedir.
Kitaplık desteği
Yaygın olarak kullanılan birçok WebGL kitaplığı, WebGPU desteğini uygulama sürecindedir veya bu desteği zaten uygulamıştır. Bu, WebGPU'yu kullanmak için yalnızca tek bir satır değişikliği yapmanız gerekebileceği anlamına gelir:
- Babylon.js, WebGPU'yu tam olarak destekliyor.
- PlayCanvas, ilk WebGPU desteğini duyurdu.
- TensorFlow.js, çoğu operatörün WebGPU için optimize edilmiş sürümlerini destekler.
- Three.js WebGPU desteği için çalışmalar devam ediyor. Örneklere göz atın.
Kaynaklar
WebGPU önemli bir teknolojidir. Daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atmanızı öneririz:
- WebGPU ve WGSL için W3C spesifikasyonlarına göz atın.
- Örnekleri deneyin ve WGSL'yi tur ile keşfedin.
- MDN belgelerine göz atın.
- Resmi açıklamayı ve en iyi uygulamaları okuyun.
- GPU hesaplama ve diğer konular hakkında bilgi edinin.
Tasdik
Bu özelliğin hayata geçirilmesine verdikleri değerli destek için tüm Chromium katkıda bulunanlarına ve özellikle Intel çalışanlarına teşekkür ederiz.