AGENT PULSESJCPal Special EditionAI Industry Evidence & Trends
Aug 12, 2026 · PyTorch

viable/strict/1786536149: [SDPA] Support mixed head dimensions with FA4 (#193039)

What Happened

PyTorch 的 Flash SDPA 选择器此前要求 Q、K、V 具有相同的头维度,这阻止了 FA4 运行如 DeepSeek 的 Q/K=192、V=128 等形状。本次更改在 SDPA 上下文中跟踪 FA4 激活,并应用 FA4 的架构特定头维度和无 dropout 约束,同时保持 FA2/FA3 和 ROCm 选择规则不变。Eager、fake 和 meta 输出现在使用 V 的头维度,Flash 输出被解填充到 V 的原始维度。在 B200 上,强制 Flash SDPA 现在将精确的 DeepSeek 形状 (B,H,S,Dqk,Dv) = (4,128,4096,192,128) 分派到 FA4 前向和反向内核。

EVENT STORY

Development

  1. First Reportviable/strict/1786536149: [SDPA] Support mixed head dimensions with FA4 (#193039)PyTorch Core
  2. Current Assessment此更改表明 PyTorch 正在积极适应新兴的 MLA 架构,这些架构在 DeepSeek 等模型中越来越流行。通过支持 FA4 的非均匀头维度,PyTorch 降低了在标准框架中训练和部署此类模型的障碍。这可能会加速 MLA 在更广泛社区中的采用,并影响未来模型的设计。Agent Pulse · analysis
What Changed

PyTorch 的 Flash SDPA 选择器此前要求 Q、K、V 具有相同的头维度,这阻止了 FA4 运行如 DeepSeek 的 Q/K=192、V=128 等形状。本次更改在 SDPA 上下文中跟踪 FA4 激活,并应用 FA4 的架构特定头维度和无 dropout 约束,同时保持 FA2/FA3 和 ROCm 选择规则不变。Eager、fake 和 meta 输出现在使用 V 的头维度,Flash 输出被解填充到 V 的原始维度。在 B200 上,强制 Flash SDPA 现在将精确的 DeepSeek 形状 (B,H,S,Dqk,Dv) = (4,128,4096,192,128) 分派到 FA4 前向和反向内核。

How the Capability Boundary Shifted

此更改使 PyTorch 的 SDPA 能够利用 FA4 对非均匀头维度的支持,特别是 DeepSeek 风格的 MLA 训练。通过跟踪 FA4 激活并应用其特定约束,PyTorch 在不改变默认 FA2/FA3 行为的情况下扩展了 Flash 注意力覆盖范围。输出分配现在遵循 V 的头维度,符合注意力输出的实际形状。这为在 PyTorch 中高效训练和推理 MLA 架构铺平了道路。

Why It Matters

此更改表明 PyTorch 正在积极适应新兴的 MLA 架构,这些架构在 DeepSeek 等模型中越来越流行。通过支持 FA4 的非均匀头维度,PyTorch 降低了在标准框架中训练和部署此类模型的障碍。这可能会加速 MLA 在更广泛社区中的采用,并影响未来模型的设计。

Who It Affects

对于使用 PyTorch 训练或部署 MLA 模型的团队,此更改消除了一个关键的性能障碍,使他们能够利用 FA4 的优化内核。这可以降低训练成本并提高推理效率,从而加速 MLA 模型的迭代和部署。

What to Watch Next

后续可验证的信号包括:PyTorch 是否将 FA4 支持扩展到其他非均匀形状,以及 FA4 是否成为默认的 Flash 实现。此外,观察 DeepSeek 或其他 MLA 模型是否在 PyTorch 上获得官方训练支持。