逆向拆解 Apple Neural Engine:从 CNN 到 LLM 的架构变迁
Retrospectively Reverse-Engineering Apple's Neural Engine

三年前我暂停了 Apple Neural Engine (ANE) 的逆向工程,因为觉得它架构过于封闭,难以构建通用加速器。如今 M5 芯片将 ANE 核心融入 GPU,标志着独立 NPU 时代的终结。为了纪念这一转折,我重新回到 M1 芯片,深入剖析 ANE 的完整内部架构,包括计算单元、数据流、调度器及内存模型。这次探索不再是为了让 ANE 运行更多操作,而是为了揭示 Apple 在 A11 Bionic 时代对机器学习工作负载的底层假设,以及从 CNN 时代向 Transformer 时代转型时,硬件设计逻辑的根本性转变。
Apple 在 A11 Bionic 中率先投入硅片的那些内部设计决策,揭示了他们对机器学习工作负载的假设,以及从 CNN 时代的 NPU 向如今运行 Transformer 工作负载的 GPU 转变的本质。
HN 评论区
33- zozbot234
这与 https://maderix.github.io/articles/ 上关于 M4 ANE 的最新研究有何关联?M4 及后续版本的 ANE 是否暴露了任何额外能力,还是说它仅仅是同一架构的高性能迭代版本?
顺便提一下,这篇文章的引言似乎将 ANE 与 M5+(及 A 系列等效型号)GPU 中存在的神经加速器(NAX)混淆了。这两者截然不同,且 Apple 仍在继续开发 ANE——据称 M6 和 A20 将配备翻倍数量的 ANE 模块。
- GeekyBear
值得记住的是,Apple 今年秋季将发布一个新框架(Core AI),它超越了十年前的 Core ML 框架所支持的 Pytorch 和 Tensorflow 工作负载。
> Core AI 允许你的应用跨 CPU、GPU 和 Neural Engine 使用最新的模型架构和推理技术。
- throw0101a
很多人曾(或正在)说 Apple 在 AI 方面已经错失良机,在某些(重要的)方面这确实没错,但我想值得记住的是,Apple 早在 2017 年就在 A 系列芯片中加入了 Neural Engine,那时 AI 热潮尚未真正爆发:
* https://en.wikipedia.org/wiki/Neural_Engine
* https://apple.fandom.com/wiki/Neural_Engine
自那以后,