谷歌披露了TensorFlow处理器单元架构的细节

简介:

本月早些时间谷歌进一步披露了更多关于一年前发布的TPU的细节。TPU项目和团队的高级架构师Norm Jouppi表示,与Nvidia K80和Haswell E5-2699 V3等主流高性能处理器相比,使用TPU执行神经网络计算可以获得成数量级的性能增益。Jouppi说:

“据估计TPU会比K80 GPU和Haswell CPU快大概15倍到30倍……在6个神经网络用例中,有4个在TPU上是内存或带宽受限的,假如让TPU使用和K80 GPU一样的内存系统,那它就可以比GPU和CPU快30到50倍……在一个标准的效率指标功耗效率比(TOPS/Watt)测试中,TPU的测试结果也比传统处理器高30到80倍。”

最早定制ASIC的动机来自于使用谷歌翻译API的计算需求,注意,假设这个地球上的每台手机每天都使用谷歌翻译API三分钟,那就得多搭建好几十个数据中心。

架构白皮书上记录了把K80和E5-2699作为计算核心进行一定范围内的神经网络计算时,相应的实验设计、数据收集和分析等细节。TPU现在不是用于训练神经网络的。它最早就是用作矩阵乘法器,通过矩阵乘法器、板载内存和缓存系统一起,实现神经网络的多层功能。其中包括在各层之间保存感知器的输出和状态等,这些在MLP和CNN等内部都广为使用。

但TPU并不仅仅限于神经网络的实现,它是通用的,它的架构是基于Jouppi和团队研究的全面用例的。这么做的部分动机就是要支持TPU的按时交付,还有必要的灵活性来优化矩阵浮点运算,而这也是芯片要执行的最基本的运算操作。而把TPU和包含了应用程序所需的其它部件的CPU/GPU架构结合起来很方便,只需要用上PCIe总线就好了。

这样的架构让CPU/GPU可以在神经网络的计算之外执行训练或TensorFlow程序的任意部分。比如程序要提前加载数据,或者要把指令输入TensorFlow运行等等,这些都要由CPU/GPU管理并发给TPU。从这方面看,TPU非常像显卡或FPU。

“TPU像CPU或GPU一样都是可编程的。它并不专为某个神经网络模型设计,可以在多种网络上执行CISC指令(卷积、LSTM模型、大型全连接模型等)。所以它是可编程的,但使用矩阵作为原语,而不是向量或标量。”

就像CPU和GPU架构的时变优化特性一样,TPU具有确定性的特性,在功耗效率比的测试中TPU优于基准芯片及每秒千万亿次的超级计算机。据测试数据来看,TPU在功耗效率比的测试中性能超出一般处理器30到80倍。

“与K80 GPU的32位浮点运算相比,TPU使用的是8位收缩矩阵乘法器,消耗的能量少了几个数量级,压缩了25倍的MAC(65536 8位对2496 32位)和3.5倍的板上内存(28MB对8MB)。更大的内存有助于增加应用程序的操作强度,让它们可以更充分地使用额外的MAC……商业产品在计算架构上很少出现数量级的差别,因此TPU可能会成为专用领域架构的一个原型。”

作为实验设计研究阶段的一部分,Jouppie和团队在谷歌的平台上研究了神经网络的使用,他们发现了更多关于时间敏感型应用的需求,而不是关于他们最初设想的吞吐量敏感型应用,这让他们意识到,对大量廉价资源的适当使用仍然可以得到性价比很高的高性能,这也符合阿姆达尔定律。

TPU实验涉及六种神经网络:MLP、CNN和LSTM各两种。MLP和LSTM都是内存受限型的,因此调整实验的内存和带宽排列对性能的影响非常大。这可能要归因于MLP和CNN会重用前层的权重,而且也会在一定程度上重用前层的输出。另一方面,LSTM会在各个时间步长重用权重,但只会选择性地使用前层的输出,这样就会不受限于内存,更多地是受限于计算能力。这一点在考察TPU使用的PCIe总线IO带宽时也适用。

经过15个月多的开发周期,以及在假设以TPU为核心的架构上对内存和缓存的改进,Jouppie和团队声称他们已经获得了比K80和E5-2699性能高30到50倍的成绩。

本文转自d1net(转载)

相关实践学习
部署Stable Diffusion玩转AI绘画(GPU云服务器)
本实验通过在ECS上从零开始部署Stable Diffusion来进行AI绘画创作,开启AIGC盲盒。
相关文章
|
11月前
|
机器学习/深度学习 API 语音技术
|
3月前
|
机器学习/深度学习 人工智能 并行计算
Titans:谷歌新型神经记忆架构,突破 Transformer 长序列处理的瓶颈
Titans 是谷歌推出的新型神经网络架构,通过神经长期记忆模块突破 Transformer 在处理长序列数据时的瓶颈,支持并行计算,显著提升训练效率。
136 5
Titans:谷歌新型神经记忆架构,突破 Transformer 长序列处理的瓶颈
|
5月前
|
机器学习/深度学习 数据采集 数据可视化
TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤
本文介绍了 TensorFlow,一款由谷歌开发的开源深度学习框架,详细讲解了使用 TensorFlow 构建深度学习模型的步骤,包括数据准备、模型定义、损失函数与优化器选择、模型训练与评估、模型保存与部署,并展示了构建全连接神经网络的具体示例。此外,还探讨了 TensorFlow 的高级特性,如自动微分、模型可视化和分布式训练,以及其在未来的发展前景。
599 5
|
10月前
|
缓存 C语言 计算机视觉
程序与技术分享:CPU0处理器的架构及应用
程序与技术分享:CPU0处理器的架构及应用
|
9月前
|
机器学习/深度学习 人工智能 并行计算
GPU 和 CPU 处理器的架构
CPU(中央处理器)和 GPU(图形处理单元)是计算机系统中最重要的两种处理器。它们各自的架构设计和技术体系决定了其在不同应用领域中的性能和效率。
329 1
|
10月前
|
机器学习/深度学习 语音技术
多模态大模型不够灵活,谷歌DeepMind创新架构Zipper:分开训练再压缩
【6月更文挑战第12天】谷歌DeepMind的Zipper架构解决了多模态大模型灵活性问题,通过分解为单模态模型并用“压缩”过程组合,实现多模态生成。该方法允许独立训练每个模态,提升灵活性和可扩展性,适用于数据有限或领域特定的模态。Zipper利用交叉注意力机制融合模态输出,适用于图像描述、语音识别等任务。尽管需要更多计算资源且性能受限于单模态模型质量,但已在ASR和TTS领域展现潜力。论文链接:https://arxiv.org/pdf/2405.18669
155 3
|
11月前
|
机器学习/深度学习 存储 人工智能
谷歌推出TransformerFAM架构,以更低的消耗处理长序列文本
【5月更文挑战第30天】谷歌推出TransformerFAM架构,模仿人脑工作记忆,通过反馈循环处理无限长序列文本,提高长上下文任务性能,尤其在大规模模型中展现优势。尽管训练资源需求大且短序列处理提升有限,实验显示其在叙事问答、长文本摘要等任务上超越传统Transformer。论文链接:https://arxiv.org/abs/2404.09173
273 1
|
11月前
|
存储 机器学习/深度学习 人工智能
嵌入式中一文搞懂ARM处理器架构
嵌入式中一文搞懂ARM处理器架构
489 1
|
11月前
|
缓存 监控 Java
DP读书:鲲鹏处理器 架构与编程(十四)ACPI与软件架构具体调优
DP读书:鲲鹏处理器 架构与编程(十四)ACPI与软件架构具体调优
214 1

热门文章

最新文章

下一篇
oss创建bucket