谷歌发论文披露TPU详细信息,比GPU、CPU快15-30倍

简介:

0?wx_fmt=jpeg

自从Google去年透露自己开发了一款名为TPU的专用芯片,用于提高人工智能计算任务的执行效率,关于这种新芯片的猜测就从未停止。

今天,Google终于披露了关于TPU的更多信息。除了发表一篇有75位联合作者的论文《In-Datacenter Performance Analysis of a Tensor Processing UnitTM》外,文章的第四作者David Patterson还在美国国家工程院的活动上发表了演讲。

关于TPU的论文将正式发表于今年6月在多伦多召开的计算机体系结构国际研讨会(International Symposium on Computer Architecture, ISCA),Google目前已经在Google Drive上将其公开。

640?

△ TPU的印刷电路板


该公司从2015年开始就一直在内部使用TPU,并在去年5月的Google I/O开发者大会上,对外公布了这种芯片的存在。

TPU是一种ASIC(专用集成电路),Google将其用在神经网络的第二个步骤。使用神经网络首先要用大量数据进行训练,通常在使用GPU加速的服务器上进行。之后,该公司便会开始使用TPU加速新数据的推断。谷歌表示,这比直接使用GPU或基本的x86芯片速度快很多。

他们在论文中写道:“尽管某些应用的利用率较低,但TPU平均比GPU或CPU速度快15至30倍左右。”其中的GPU或CPU具体指的是英伟达的Tesla K80 GPU和英特尔的至强E5-2699 v3芯片,后者可以成为TPU的底层平台。

过去5年,英伟达等公司的GPU已经成为经济型深度学习系统的默认基础架构,而谷歌也对此做出了贡献。但谷歌和微软等公司还在探索其他类型的人工智能芯片,包括FPGA(现场可编程门阵列器件)。谷歌的项目因为其来源和使用范围而受到关注,该公司工程师Norm Jouppi在博客中写道,这套系统已经应用于谷歌图片搜索、Google Photos和谷歌云视觉应用API等服务。

640?

该论文称,一个TPU的片上内存容量达到Tesla K80的3.5倍,而且体积更小。每耗电1瓦的性能则高出30至80倍。谷歌目前可以将两个TPU安装到一台服务器中,但这并不表示他们不会开发其他更强大或更经济的硬件系统。

谷歌对人工智能网络的重视高于很多科技公司,他们2013年就认定这项技术广受欢迎,可以将其数据中心的计算需求扩大一倍。如果完全使用标准芯片,成本将十分高昂,难以承受。所以谷歌开始开发自己的技术,希望实现10倍于GPU的成本效益。

“我们没有与CPU密切整合,为了减少延迟部署的几率,TPU设计成了一个PCIe I/O总线上的协处理器,使之可以像GPU一样插到现有的服务器上。”论文还写道,“另外,为了简化硬件设计和调试过程,主服务器发送指令让TPU来执行,而不会自主执行。因此,与TPU更加接近的是FPU(浮点单元)协处理器,而非GPU。目标是在TPU运行完整的推理模型,降低与主CPU的互动,并使之足以灵活地满足2015年及之后的神经网络需求,而不仅仅适用于2013年的神经网络。

论文称,通常而言,在TPU上运行代码跟使用谷歌领导的TsensorFlow开源深度学习框架一样简单。

提示:Google在论文中提到的测试结果,都是基于该公司自己的测试标准。

原文发布时间为:2017-04-06

本文来自云栖社区合作伙伴“大数据文摘”,了解相关信息可以关注“BigDataDigest”微信公众号

相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
相关文章
|
1月前
|
人工智能 并行计算 PyTorch
【PyTorch&TensorBoard实战】GPU与CPU的计算速度对比(附代码)
【PyTorch&TensorBoard实战】GPU与CPU的计算速度对比(附代码)
41 0
|
3月前
|
Linux
|
1天前
|
机器学习/深度学习 并行计算 图形学
CPU、GPU、TPU、NPU等到底是什么?
CPU、GPU、TPU、NPU等到底是什么?
|
17天前
|
Linux
centos 查看服务器信息 版本cpu
centos 查看服务器信息 版本cpu
12 0
|
1月前
|
存储 监控 Linux
Linux 使用getrusage系统调用获取cpu信息:一个C++实例分析
Linux 使用getrusage系统调用获取cpu信息:一个C++实例分析
49 0
|
3月前
|
存储 JSON 运维
【运维】Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
【运维】Powershell 服务器系统管理信息总结(进程、线程、磁盘、内存、网络、CPU、持续运行时间、系统账户、日志事件)
49 0
|
3月前
|
机器学习/深度学习 并行计算 算法
简单理解CPU与GPU的区别
简单理解CPU与GPU的区别
64 0
|
3月前
|
缓存 Linux
百度搜索:蓝易云【Linux系统中查看CPU信息的方法有哪些?】
这些是在Linux系统中查看CPU信息的常见方法。根据您的需求和具体环境,您可以选择适合您的方法来查看CPU信息。
59 0
|
4月前
|
并行计算 TensorFlow 算法框架/工具
Linux Ubuntu配置CPU与GPU版本tensorflow库的方法
Linux Ubuntu配置CPU与GPU版本tensorflow库的方法
|
1月前
|
JSON Java Serverless
nacos常见问题之cpu和内存占用高如何解决
Nacos是阿里云开源的服务发现和配置管理平台,用于构建动态微服务应用架构;本汇总针对Nacos在实际应用中用户常遇到的问题进行了归纳和解答,旨在帮助开发者和运维人员高效解决使用Nacos时的各类疑难杂症。
181 0