Metal 后端引入了针对 2 到 16 行源的新矩阵乘法内核,使缺乏 tensor API 的 Apple Silicon 设备能够更快地进行推测性解码。这些内核仅对权重进行一次反量化,并将 K 维度跨线程组拆分,相比之前的 mat-vec 方法提供了显著的性能提升。

  • 为 Q4_0、Q8_0、Q5_K 实现特定的 MMA 内核,并为 F32、F16 和其他量化类型提供通用路径。
  • 在 MTLGPUFamilyApple7+ 硬件上激活这些内核,当行数超过其优于 mat-vec 内核的阈值时。
  • 添加融合逻辑以组合 MUL_MAT + ADD 操作,并将多达 16 个相邻的相同布局 f32 副本批处理为单个调度。
  • 更新图优化器和编码器以处理设备属性、并发检查和融合组的视图跟踪。

此优化通过确保即使在小批量情况下张量操作保持高效,解决了 M3 Ultra 硬件上推测性解码的性能回归问题。