A WebGPU é uma API gráfica da Web que oferece benefícios significativos, como carga de trabalho muito reduzida do JavaScript para os mesmos gráficos e melhorias mais de três vezes nas inferências de modelos de machine learning. 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 com a plataforma da Web em mente, com uma API JavaScript idiomática, integração com promessas, suporte para importação de vídeos e uma experiência de desenvolvedor refinada 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 para Direct3D 12 e macOS. O suporte para Linux, Android e plataformas existentes será expandido em breve.
A WebGPU é um trabalho em andamento para o Firefox e o Safari, além da implementação inicial no Chrome.
Suporte de 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 às 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 pelo 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 texto explicativo e as práticas recomendadas oficiais.
- Saiba mais sobre computação de GPU e mais.