与许多其他超级计算机不同,Dojo 没有使用现成的 CPU 和 GPU,例如 AMD、Intel 或 Nvidia 的。特斯拉根据他们的需求设计了自己的微架构,让他们做出更通用架构无法做出的权衡。
在本文中,我们将根据特斯拉在 Hot Chips 上的演示来了解该架构。该架构没有单独的名称,因此为简单起见,每当我们在后面提到 Dojo 时,我们都是在谈论架构。
框图
从高层次上看,Dojo 是一个 8 宽内核,具有四路 SMT,运行在保守的 2 GHz,具有 CPU 风格的pipeline,使其比 GPU 更能容忍不同的算法和分支代码。Dojo 的指令集在标量方面类似于 RISC-V,但 Tesla 的工程师添加了一组自定义向量指令,专注于加速机器学习。
特斯拉 Dojo 核心的简化框图
Tesla 将 Dojo 描述为“高吞吐量、通用 CPU”。从性能的角度来看,这肯定有一些道理。但为了提高计算密度,特斯拉做出了牺牲,与我们在台式机、笔记本电脑和智能手机中熟悉的 CPU 相比,Dojo 内核非常难以使用。在某些方面,Dojo 内核的处理方式更像 IBM 的 Cell 中的 SPE,而不是传统的通用 CPU 内核。