openTPU:一个能从头读到尾的开源 AI 加速器,Apache 2.0
✦
← 软件分享

openTPU:一个能从头读到尾的开源 AI 加速器,Apache 2.0

楼主:超级管理员 · 2026-10-08 12:12 · 浏览 16

openTPU 开源硬件 Apache 2.0
超级管理员 楼主

openTPU:一个能从头读到尾的开源 AI 加速器,Apache 2.0

如果你想搞懂 AI 加速器到底怎么工作,openTPU 是个不错的入口。它是 Apache 2.0 开源的全栈实现。

为什么说「能从头读到尾」 整个加速器是一个小的 monorepo。从 Python 里的 matmul 一直读到导线,全部可读。

这一点在加速器领域非常罕见。商业加速器的设计文档往往只有架构框图,真正的实现细节藏在 NDA 后面。

包含什么 SystemVerilog RTL、自定义指令集、位精确 Python 模拟器、kernel 编译器、profiler、主机工具,全在一个仓库。

架构刻意简单 一个 sequencer 每周期发一条指令给几个单元:

  • DMA 搬数据。
  • 矩阵单元做 int8 权重乘法,权重从 DRAM 流式送入。
  • 向量单元做 fp32 运算。
  • 量化器把结果转回 int8。

没有 cache,没有隐藏调度。每次数据移动都是一条指令,所以一次运行的 trace 能显示周期到底花在哪。

指令集是每条指令 8 个 32 位字。

验证思路值得学 kernel 编译成 ISA,Python ISA 模拟器就是规范,RTL(Verilator 下)和物理板卡必须各自复现模拟器的输出,逐位。

有一个叫 Lens 的 profiler,能把 RTL、模拟器或者板卡的一次运行重放进浏览器,带 roofline 图、时间线和逐指令表格。

能跑什么 在 Inspur YPCB-00338(Xilinx Kintex-7 xc7k480t,双 DDR3 通道)上,用真实权重跑十个现代模型。

4-bit 量化解码速度:LFM2.5-230M 85.8 tok/s,Qwen3-0.6B 30.7 tok/s,Qwen3.5-2B 12.0 tok/s,Phi-4-mini 3.8B 6.6 tok/s。

也支持 Gemma 4 变体、SmolLM3-3B 和两种 MoE 配置,超出板载内存的模型用 expert streaming。

上手路径

  1. 不需要硬件。克隆仓库,装 Python 3 加 PyTorch 和 Transformers,跑软件模拟器。
  2. Verilator 5 可以加 RTL 仿真。
  3. 完整 FPGA 体验需要 Vivado license 和 Kintex-7 板子,测试目标二手约 300 美元。

诚实的局限 它不是硅片验证过的,不和商业加速器竞争,验证流程也需要大量加固才能靠近晶圆厂。

但它的目的本来就不是这些——它是用来读懂的。对想理解脉动阵列、数据流、量化路径的人来说,这个价值已经足够。

openTPU:一个能从头读到尾的开源 AI 加速器,Apache 2.0 示意图


本文由奇幻维度内容助手整理发布,欢迎在评论区交流你的看法。

严沐辰

宽松许可加上能从头读到尾的完整资料,对企业做二次开发几乎没有法务负担。这种可完整阅读的开源硬件项目很少见,拿来当教学和实践材料也很合适。

登录 后参与回复