A WebGPU é uma API de gráficos da Web que oferece benefícios significativos, como a redução da carga de trabalho do JavaScript para os mesmos gráficos e melhorias mais de três vezes nas inferências do modelo de aprendizado de máquina. Isso é possível devido à programação flexível de GPU e ao acesso a recursos avançados que a WebGL não oferece.
A API foi projetada pensando na plataforma da Web, apresentando uma API JavaScript idiomatic, integração com promessas, suporte à importação de vídeos e uma experiência de desenvolvedor aprimorada com mensagens de erro claras.
A WebGPU é o resultado de um esforço colaborativo do Grupo da comunidade "GPU for the Web" do W3C, que inclui contribuições de grandes empresas como Mozilla, Apple, Intel e Microsoft.
Suporte ao navegador
Essa versão inicial da WebGPU foi disponibilizada no Chrome 113, em dispositivos ChromeOS com suporte a Vulkan, dispositivos Windows com suporte a Direct3D 12 e macOS. O suporte para Linux, Android e plataformas existentes será expandido em breve.
O WebGPU é um trabalho em andamento para o Firefox e o Safari, além da implementação inicial no Chrome.
Suporte à biblioteca
Muitas bibliotecas WebGL amplamente usadas já estão em processo de implementação do suporte à WebGPU ou já o fizeram. Isso significa que o uso da WebGPU pode exigir apenas uma mudança de linha.
- O Babylon.js tem suporte total à WebGPU.
- O PlayCanvas anunciou o suporte inicial à WebGPU.
- O TensorFlow.js oferece suporte a versões otimizadas para WebGPU da maioria dos operadores.
- O suporte do Three.js para WebGPU está em andamento. Confira exemplos.
A biblioteca Dawn para Chromium e a wgpu para Firefox estão disponíveis como pacotes independentes. Elas oferecem ótima portabilidade e camadas ergonômicas que abstrai APIs de GPU do sistema operacional. O uso dessas bibliotecas em aplicativos nativos facilita a portabilidade para o WASM usando Emscripten e Rust web-sys.
Recursos
A WebGPU é uma tecnologia importante, e recomendamos os seguintes recursos para saber mais:
- Confira as especificações do W3C para WebGPU e WGSL.
- Teste amostras e conheça o WGSL com um tour.
- Consulte a documentação do MDN.
- Leia o explicativo e as práticas recomendadas oficiais.
- Saiba mais sobre computação de GPU e mais.