WebGPU 概览

François Beaufort
François Beaufort

发布时间:2023 年 7 月 20 日;上次更新时间:2025 年 8 月 11 日

WebGPU 是一种 Web 图形 API,可带来显著优势,例如大幅减少相同图形的 JavaScript 工作负载,以及将机器学习模型推理的性能提升三倍以上。这是因为 WebGL2 具有灵活的 GPU 编程功能,并且可以访问 WebGL 未提供的高级功能。

该 API 在设计时充分考虑了 Web 平台,具有惯用的 JavaScript API、与 Promise 的集成、对导入视频的支持,以及通过清晰的错误消息提供完善的开发者体验。

WebGPU 是 W3C 的“Web GPU”社区组共同努力的成果,其中包含来自 Mozilla、Apple、Intel 和 Microsoft 等主要公司的贡献。

浏览器支持

WebGPU 的初始版本已在 Chrome 113 中发布,适用于支持 Vulkan 的 ChromeOS 设备、支持 Direct3D 12 的 Windows 设备和 macOS。在搭载 Android 12 及更高版本且由 Qualcomm 和 ARM GPU 提供支持的设备上,Chrome 121 后来也支持 Android。我们很快就会支持 Linux,并扩大对现有平台的支持范围。

除了 Chrome 中的实现之外,WebGPU 还随 Windows 上的 Firefox 141Safari 26 一起发布。

如需了解 WebGPU 实现状态的最新动态,您可以查看 gpuweb 实现状态页面

库支持

许多广泛使用的 WebGL 库都在实现 WebGPU 支持,或者已经实现了 WebGPU 支持。这意味着,使用 WebGPU 可能只需要更改一行代码。

Chromium 的 Dawn 库和 Firefox 的 wgpu 库均可作为独立软件包提供。它们具有出色的可移植性和符合人体工程学的层,可抽象化操作系统 GPU API。在原生应用中使用这些库,可通过 EmscriptenRust web-sys 更轻松地移植到 WASM

资源

WebGPU 是一项重要技术,我们建议您参考以下资源了解详情: