使用 Swift 训练 LLM,第 1 部分:将矩阵乘法从 Gflop/s 提升到 Tflop/s

使用 Swift 训练 LLM,第 1 部分:将矩阵乘法从 Gflop/s 提升到 Tflop/s

使用 Swift 训练 LLM,第 1 部分:将矩阵乘法从 Gflop/s 提升到 Tflop/s

一句话看懂:一位独立开发者通过手写优化的 Swift 代码,成功将 Apple Silicon 上的矩阵乘法性能从 Gflop/s 级别提升到 Tflop/s 级别,以此为基础训练 GPT-2 级别的 LLM,并计划在不依赖外部库的前提下证明 Swift 在 AI 训练中的潜力。

事件核心:发生了什么

开发者 Matt Gallagher 在博客中公布了他基于 Swift 语言实现 LLM 训练的最新成果。他参考了 Andrej Karpathy 的纯 C 语言项目 llm.c,将其重写为 Swift,并对手写矩阵乘法代码进行多轮优化。在 Apple Silicon 硬件(包含 CPU、SIMD、AMX 和 GPU 单元)上,通过调整数据布局、利用矩阵引擎和 Metal 后端,他将矩阵乘法性能从最初的 Gflop/s 级别推进到 Tflop/s 级别。文章是第一篇预告,后续计划探讨苹果在 Mac 平台上提供的多种机器学习框架,并完成完整的前向和后向训练迭代。

为什么重要

这项工作展示了一个关键的技术可行性:在 Swift 中,即便不依赖 PyTorch 或 TensorFlow 等成熟框架,仍有可能通过底层优化获得接近生产级性能的矩阵运算。当前主流 AI 训练几乎全部绑定在 Python 生态和 CUDA 硬件上,此实验证明 Apple Silicon 上的原生 Swift 代码也能承担实际的训练任务,而非仅仅用于推理。对苹果生态而言,它意味着本地化 AI 训练可以脱离“Python 调用底层引擎”的架构,在语言层面直接利用硬件特性,可能降低 AI 开发者的框架依赖门槛。

对用户/开发者/创作者的影响

对 Swift 开发者而言,这是可复现且具有教学价值的优化路径,尤其是那些希望在不接触 Python 和 GPU 编程细节的前提下参与 LLM 训练的群体。它表明,通过理解矩阵乘法、内存布局和 Apple Silicon 硬件特性,开发者可以在 Mac 上实现高效的训练实验。对于 Mac 用户和创作者,这意味着未来可能出现更多原生 Swift 实现的高性能本地 AI 工具,减少对云 GPU 的依赖。不过,目前该实验仍处于探索阶段,尚未达到替代主流框架的程度,不适合直接用于生产环境。

值得关注的后续

作者计划后续文章中比较苹果提供的多种 ML 框架,值得关注他是否会针对不同框架(如 Core ML、Metal Performance Shaders、MLX)给出同样的性能对比数据。另外,他的 LLM 实现能否在全量训练中持续优化并超越等效的 C 实现,将决定这一路径是否具备真正的实用价值。最后,国内市场用户应注意:Apple Silicon 的 AMX 单元在非 macOS 系统上不可直接编程,该技术路径在当前阶段仅适用于 Mac 生态。目前公开信息显示,作者尚未开源完整代码,若后续开源,可能催生一批基于 Swift 的轻量 LLM 训练库。

来源:Lobsters (技术社区)

celebrityanime
celebrityanime
文章: 2576

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注