WebGPU 中的新变化(Chrome 151-152)

François Beaufort
François Beaufort

发布时间:2026 年 8 月 12 日

子群组大小控制

在 WGSL 计算着色器中使用 @subgroup_size 属性设置计算流水线的子群组大小,有助于在特定平台(例如 AI 工作负载)上使用子群组操作时优化计算着色器性能。

如需在 WGSL 中使用子群组大小控制功能,请检查 GPUAdapter 上是否提供“subgroup-size-control”功能,然后请求启用此功能的 GPUDevice。在您的 WGSL 代码中,明确添加 enable subgroups;enable subgroup_size_control;。然后,您可以声明 @subgroup_size 属性,以保证计算着色器在适配器提供的 subgroupMinSizesubgroupMaxSize 范围内的特定子群组大小(必须是 2 的幂)下运行,并将 @builtin(subgroup_size) 设置为匹配的值。如果没有此属性,GPU 驱动程序会动态选择子群组大小,并且在执行之前子群组大小仍处于未知状态。

请参阅以下示例和发布意向

const adapter = await navigator.gpu.requestAdapter();
if (!adapter.features.has("subgroup-size-control")) {
  throw new Error("Subgroup size control support is not available");
}
// Explicitly request subgroup size control support.
const device = await adapter.requestDevice({
  requiredFeatures: ["subgroup-size-control"],
});

const shaderModule = device.createShaderModule({ code: `
  enable subgroups;
  enable subgroup_size_control;

  @subgroup_size(32)
  @compute @workgroup_size(64, 1, 1)
  fn main(@builtin(subgroup_invocation_id) sg_id : u32,
          @builtin(subgroup_size) sg_size : u32) {
     // TODO: Compute shader logic using specific subgroup size.
  }`,
});

特别感谢 Intel 的合作伙伴所做的出色工作!

针对 setImmediates 验证失败的 OperationError

为了与 WebGPU 规范保持一致,setImmediatesdataOffsetsize 的验证失败会抛出 OperationError 而不是 RangeError。请参阅 CL chromium:7977566

Dawn 更新

实验性支持 snorm10-10-10-2 顶点格式,可通过“allow_unsafe_apis”切换开关启用。wgpu::VertexFormat::Snorm10_10_10_2 格式表示一个四分量向量,其中 RGB 通道为 10 位有符号归一化整数,Alpha 分量为 2 位。请参阅问题 dawn:536160421

OpenGL 现在支持包含深度或模板的纹理格式的临时附件。请参阅问题 dawn:462577182

以下仅介绍了一些关键亮点。查看详尽的提交列表

WebGPU 最新动态

WebGPU 新变化系列中涵盖的所有内容。

Chrome 153-154

Chrome 151-152

Chrome 149-150

Chrome 147-148

Chrome 146

Chrome 145

Chrome 144

Chrome 143

Chrome 142

Chrome 141

Chrome 140

Chrome 139

Chrome 138

Chrome 137

Chrome 136

Chrome 135

Chrome 134

Chrome 133

Chrome 132

Chrome 131

Chrome 130

Chrome 129

Chrome 128

Chrome 127

Chrome 126

Chrome 125

Chrome 124

Chrome 123

Chrome 122

Chrome 121

Chrome 120

Chrome 119

Chrome 118

Chrome 117

Chrome 116

Chrome 115

Chrome 114

Chrome 113