|
事实上,TPU的主马力由MXU提供,MXU能够在每个循环中执行128×128乘法累加操作[7]。虽然其输入和输出是32位浮点值,但MXU通常以b浮点16的简化精度执行乘法,这是一种16位浮点表示,与IEEEhalf-precision表示相比,它为指数分配了更多的位,而为尾数分配了更少的位,从而为深度学习提供了更好的训练和模型精度。B、 编程模型TPU的编程通常通过高级Tensor Flow API完成。当程序运行时,会生成一个TensorFlow计算图,并通过gRPC发送给CloudTPU【1】。云TPU服务器及时编译计算图,将图划分为可以在云TPU上运行的部分和必须在CPU上运行的部分,并生成与要在云TPU上运行的子图相对应的加速线性代数(XLA)操作。接下来,XLA编译器接管TensorFlow服务器生成的高级别优化器(HLO)操作,并将其转换为可在CloudTPU上运行的二进制代码,包括将数据从片上内存编排到硬件执行单元和芯片间通信。最后,二进制文件被发送到云TPU执行。图1:传感器处理单元(TPU)的硬件架构和编程模型【1】。C、 从DNN推理到随机过程模拟在本文中,我们利用了DNN推理和模拟高维金融投资组合之间的计算相似性。Tensor Flow和TPU的设计旨在为深度学习编程提供高级接口,以快速培训关键任务模型。
|