llama.cpp 项目发布了构建版本 b10545,解决了 Metal 后端张量 API 矩阵乘法内核中的一个关键错误。该更新防止在处理 K 维度不是 32 的倍数的张量时出现未定义行为和损坏的结果。

  • matmul2d 操作现在对 K 使用 dynamic_extent 而不是静态块大小。
  • 在每次迭代中,操作数张量视图被限制为剩余的合法 K 范围。
  • 此更改消除了之前导致 NaN 值或数据损坏的越界读取。
  • 添加了测试用例以处理未对齐的 K 路径并验证修复。

此修复确保了在 Apple Silicon 设备上具有非对齐矩阵维度的模型的数值稳定性,防止推理期间的静默错误。