
使用 Swift 训练 LLM,第 1 部分:将矩阵乘法从 Gflop/s 转换为 Tflop/s
一句话看懂:一篇关于在 Apple Silicon 上用 Swift 优化矩阵乘法、将性能从 Gflop/s 级提升至 Tflop/s 级的技术文章,在 Hacker News 引发深度讨论。文章不仅涉及 LLM 训练,更揭示了 Apple 矩阵协处理器(AMX/SME)指令集使用的挑战,以及 “-ffast-math” 这一编译器标志在数值精度上的敏感权衡。
事件核心:发生了什么
这篇题为“使用 Swift 训练 LLM,第 1 部分:将矩阵乘法从 Gflop/s 转换为 Tflop/s”的文章,讲述了在 Apple Silicon(M 系列芯片)上利用 Swift 语言进行高性能矩阵乘法优化的方法,目标是服务于大语言模型的训练或推理。值得关注的是,社区讨论的核心并非单纯性能调优,而是围绕 Apple 的矩阵协处理器(AMX)及替代方案 SME(在 M4 上推出)的可用性:有开发者指出 AMX 指令集“实际上处于被弃用但未完全消失的过渡状态”,而 M4 上的 SME 单元则作为替代硬件出现。此外,文章与讨论还重点辨析了编译器标志 “-ffast-math” 与 FMA(融合乘加)的关系——多位资深开发者强调,“-ffast-math” 在 ML/AI 领域虽被接受,但直接启用会带来危险的精度损失;正确做法是仅使用 “-ffp-contract=fast” 来激活 FMA,而不开启其他数值变换。
为什么重要
这篇讨论展示了几个关键趋势:一是 Apple 通过封闭的 AMX/SME 指令集在 AI 领域构建自己的硬件“黑盒”,一方面对第三方开发者构成文档与访问壁垒,另一方面也暗示其自有芯片生态正在加速向 AI 计算倾斜。二是 FMA 精度与编译器默认行为的技术争论,反映出 ML/AI 开发中长期存在的最佳实践缺失——编译器出于兼容性依然默认禁止产生 FMA 会产,这导致大量计算设备无法充分利用原生指令优势。三是在开源 LLM 训练框架尚未完全适配 Apple Silicon 的背景下,社区主动探索 Swift 作为底层工具的可能性,这对 Arm 生态下的 AI 基础设施演进有示范意义。
对用户/开发者/创作者的影响
对于打算在 Apple Silicon Mac 上做 LLM 微调或推理的开发者,本文与讨论直接提供了性能优化的路径(从 Gflop/s 到 Tflop/s),但也明确设定了前提:你需要清楚 AMX/SME 硬件可用性,且不可简单使用 “-ffast-math”。对于使用 Swift 做 AI 基础设施开发的团队,这是一个重要的方向指引——Apple 可能在 M4 及未来芯片上通过 SME 重塑矩阵计算接口,但当前仍缺标准化的公开调用 API。对于非技术用户,现阶段直接利用 Swift 优化 LLM 的门槛仍较高,但该趋势若被大厂封装进 CoreML 或 Accelerate 框架,将逐步利好 macOS/iOS 端模型运行效率。
值得关注的后续
1. Apple 官方对 SME 的开放程度:M4 引入 SME 后,Apple 是否会在 WWDC 公布更易用的 Swift 高层矩阵库,或保持闭门状态。2. 编译器默认行为是否有更新:FMA 默认关闭政策在 2026 年仍未改变,若有 GCC/LLVM 未来默认开启 “-ffp-contract=fast”,将对全行业 AI/科学计算性能带来巨大影响。3. Hacker News 讨论是否会催生开源工具:目前缺乏在 Swift 中安全使用 AMX/SME 的稳定轮子,社区可能围绕本文尝试封装可复用的矩阵运算库,尤其针对 LLM 推理场景。
来源:hackernews


