TPU只完成推理过程,训练过程在GPU上完成。TPU可以像GPU一样通过PCIe总线接口挂载到现有的服务器上。设计目标是为了在TPU上完成所有的推理模型,从而减少和主机CPU的交互,进而满足2015年及今后的神经网络需求。下图是TPU的整体结构框图。
主机通过PCIe Gen3x16的总线发送TPU的指令到其中的指令buffer内,内部模块之间通过典型的256位宽通路连接。右上角的矩阵乘法单元是TPU的核心,它由256x256个MACs组成,每个MACs可以对有符号和无符号整形的数据完成8bit的乘加运算。在矩阵单元的下面有一个4MiB大小32bit位宽的Accumulator,收集上面16bit的计算结果。4MiB代表4096个, 256-element, 32-bit累加器。矩阵单元每个时钟周期产生一个256-element的局部和(partial sum)。当使用8 bit权重(weight)和16 bit激活(activation)(或反之亦然)的混合时,矩阵乘法单元以半速计算,并且当它们都是16bit时以四分之一速度计算。它每个时钟周期读取和写入256个值,可以执行矩阵乘法或卷积。矩阵单元保存一个64KiB的权重块( tile of weights),并使用了双缓冲(这样可以在处理时同时读入权重)。该单元设计用于密集矩阵,而没有考虑稀疏的架构支持(部署时间的原因)。稀疏性将在未来的设计中占有优先地位。

该博客详细介绍了TPU的结构,强调其设计目标是为了加速推理过程,主要通过PCIe接口与主机连接。文章指出,TPU的核心是256x256的矩阵乘法单元,能够执行高效的8bit乘加运算。权重通过片上缓存和8 GiB DRAM管理,而中间结果存储在24 MiB的统一缓冲区。TPU指令集采用CISC,关键指令包括读取主机和权重内存、矩阵乘法/卷积、激活函数应用以及写回主机内存。
最低0.47元/天 解锁文章
821

被折叠的 条评论
为什么被折叠?



