O Chrome oferecerá suporte à API WebGPU por padrão — por que isso é importante — Ars Technica

Andrew Cunningham/Google

Google anunciado hoje A partir da versão 113, que está atualmente na versão beta, ela habilitará o suporte WebGPU em seu navegador Chrome por padrão. Em desenvolvimento desde 2017, WebGPU é uma API gráfica de última geração que visa trazer os benefícios de APIs de baixa sobrecarga, como Direct3D 12 da Microsoft, Metal da Apple e Vulkan para navegadores da web e outros aplicativos.

O suporte WebGPU está disponível, mas desativado por padrão no Chrome agora porque a API não está finalizada e as coisas podem quebrar de atualização para atualização. O Google diz que a Mozilla e a Apple acabarão suportando WebGPU no Firefox e Safari, e navegadores como Microsoft Edge e Opera, que dependem do mecanismo de navegador Chromium, podem optar por ativá-lo, como o Google.

O Chrome 113 oferece suporte a WebGPU no Windows, macOS e ChromeOS, com “suporte para outras plataformas”, como Linux e Android, chegando ainda este ano.” Esta versão do navegador será lançada para todos os usuários do Chrome em maio.

O suporte no Chrome para qualquer novo padrão, seja uma API nova ou atualizada, formato de imagem ou codec de vídeo, é um grande impulso. De acordo com os dados do StatCounter, o Chrome representa aproximadamente dois terços da participação no mercado de navegadores em todo o mundo e quase 80% de toda a participação no mercado de navegadores, se outros navegadores baseados no Chromium forem contabilizados. Depois que o Safari e o Firefox adicionarem suporte, todos os navegadores da Web em qualquer lugar poderão executar o código WebGPU, portanto, vale a pena explicar brevemente o que é o WebGPU e por que ele existe.

O que é WebGPU?

WebGPU é uma espécie de sucessora WebGL, uma API muito antiga que permite renderizar gráficos baseados em OpenGL em seu navegador sem a necessidade de plug-ins adicionais de terceiros, como o Flash da Adobe. Embora revolucionário quando foi anunciado em 2009, o WebGL sofre dos mesmos problemas que o OpenGL sofre hoje: não aproveita todos os recursos das GPUs atuais, pode perder desempenho devido à sobrecarga do driver e tem suporte limitado e desajeitado para cargas de trabalho de computação de GPU.

READ  Jeff Fordenbury, congressista republicano do Nebraska, diz que vai renunciar após o crime

“O WebGL é principalmente para desenhar imagens, mas pode ser reaproveitado (com muito esforço) para fazer outros tipos de cálculos, o WebGPU tem suporte de primeira classe para fazer cálculos gerais na GPU”, diz ele. Um rascunho de documento explicando por que a WebGPU existe. A nova API permitirá gráficos aprimorados em estruturas como Babylon.js e mecanismos de jogo como Unity; suporte a cargas de trabalho aceleradas por GPU, como aprendizado de máquina e IA; E os aplicativos de foto e vídeo baseados na Web (entre outros) podem facilitar o uso do tipo de aceleração de GPU que os aplicativos nativos aproveitam.

WebGPU está sendo desenvolvido por um grupo de trabalho Inclui membros De empresas como Google, Microsoft, Apple, Mozilla, Intel e outras, a API foi projetada para ser o mais amplamente compatível possível. O WebGPU não é uma implementação direta de nenhuma API gráfica existente, mas sim sua própria API que faz interface com Direct3D 12, Metal e Vulkan. Este explicador Surma, engenheiro da Shopify e ex-Googler, resume bem (grifo nosso):

“Enquanto o WebGL é um invólucro fino em torno do OpenGL, o WebGPU escolheu uma abordagem diferente. Ele apresenta suas próprias abstrações e não espelha diretamente nenhuma dessas APIs nativas. Isso ocorre porque uma única API não está disponível em todos os sistemas e muitos conceitos (como gerenciamento de memória muito limitado) não são exclusivos de APIs voltadas para a Web. Em vez disso, a WebGPU foi projetada para ser “web” e intuitiva Senta-se confortavelmente sobre as APIs gráficas nativas para abstrair sua singularidade. Ele está sendo padronizado no W3C com todos os principais fornecedores de navegadores sentados à mesa.”

Isso compensa tornando o código WebGPU mais portátil – escreva o código WebGPU e, desde que os usuários tenham hardware e um navegador compatível, você obterá o mesmo resultado em um sistema Windows executando Direct3D e um telefone Android executando Vulkan. E evita alguns dos hacks que fazem o WebGL funcionar – por exemplo, o WebGL no Windows e no macOS não usa o OpenGL diretamente, mas sim um chamado interpretador. Ângulo Ele converte chamadas de API OpenGL em chamadas de API Direct3D e Metal. Com WebGPU, não há necessidade de iniciar um projeto separado para escrever em torno de uma implementação OpenGL lenta ou mal mantida.

READ  Treinadores da Inglaterra queriam uma semana de quatro dias no maior teste do mundo

O WebGPU também possui sua própria linguagem de shader (WGSL), que a equipe do Chrome ainda oferece suporte – o anúncio de hoje diz que o Google “planeja fornecer acesso mais profundo aos núcleos de shader” via WGSL em uma versão futura. Como o restante da API WebGPU, o WGSL é independente de plataforma e facilmente traduzível para o idioma de shader preferido de qualquer sistema operacional que você esteja executando.

Finalmente, apesar de “web” em seu nome, a API WebGPU não se limita a navegadores. O projeto wgpu é uma versão do WebGPU para Rust que permite que aplicativos WebGPU sejam escritos e executados fora dos navegadores da web.

Se você quiser experimentar o WebGPU agora, uma versão beta do Chrome 113 está disponível Aqui. Há um repositório GitHub de amostras de código AquiE há documentos oficiais sobre ambos WebGPU E WGSL.

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *