-
Desbloquear la informática con GPU usando WebGPU
Descubre cómo la WebGPU API proporciona acceso seguro a dispositivos de GPU para gráficos y computación de propósito general. También exploraremos el lenguaje de sombreado WGSL para escribir programas de GPU. Y profundizaremos en las prácticas recomendadas para lograr un rendimiento óptimo con un consumo mínimo de energía en computadoras y dispositivos móviles.
Capítulos
- 0:00 - Introducción
- 2:14 - Explorar la WebGPU API
- 9:54 - Desarrollar shaders
- 13:57 - Optimizar el rendimiento
Recursos
- Transformers.js - Huggingface
- WebGPU Samples - github.io
- WebGPU - W3C
- babylon.js – webGL and WebXR library
- three.js – webGL and WebXR library
- Metal Performance Shaders
Videos relacionados
WWDC25
WWDC20
-
Buscar este video…
-
-
- 0:00 - Introducción
WebGPU permite gráficos 3D de alto rendimiento y computación paralela de propósito general en GPU. Se basa en WebGL, con mayor flexibilidad y velocidad. WebGPU está diseñado para ser independiente de la plataforma, con una API similar a Metal, y es compatible con la Mac, el iPhone, el iPad, el Vision Pro y otros sistemas que no son de Apple.
- 2:14 - Explorar la WebGPU API
El pipeline WebGPU procesa contenido de sitios web o apps web a través de WebKit y la estructura Metal. Metal genera recursos de GPU ・・ buffers, texturas y samplers ・・ organizados en grupos de enlace de GPU para un uso eficiente. Estos recursos, junto con los programas sombreadores compilados (compute, vertex y fragment), luego los usa el GPU. La API de WebGPU, que es una API plana, proporciona interfaces para administrar dispositivos, recursos, codificadores, canalizaciones, grupos de enlaces y módulos de sombreadores. A menudo puedes usar un lienzo con WebGPU y puedes consultar un “GPUCanvasContext” para crear un dispositivo GPU.
- 9:54 - Desarrollar shaders
WebGPU usa WGSL, un lenguaje para programación de GPU vía Web. Admite tres tipos de programas principales: vértices, fragmentos y de cálculo. Los programas Vertex definen posiciones de triángulos en la pantalla. Los programas de fragmentos calculan colores y profundidades para las texturas. Los sombreadores de cómputo, nuevos en WebGPU, realizan cálculos generales en paralelo, así permiten simulaciones físicas y otras tareas complejas.
- 13:57 - Optimizar el rendimiento
Para optimizar el rendimiento de WebGPU, enfócate en la eficiencia de la memoria. También puedes minimizar las llamadas innecesarias de actualización de búfer y textura, ya que requieren copias de datos y pueden ser costosas. Se recomienda reutilizar comandos de renderizado mediante paquetes de renderizado porque elimina la validación redundante, ahorra tiempo y acerca el rendimiento a los niveles nativos. Además, es fundamental reducir la cantidad de recursos ・・como buffers de comandos, pases de renderizado y grupos de enlaces・・. Si sigues estas pautas, podrás crear sitios web y apps web sorprendentes y muy eficientes que funcionan de maravilla en el hardware de Apple y en todos los dispositivos móviles y de escritorio.