AI 芯片为何遭遇滑铁卢?

百家 作者:CSDN 2019-03-09 05:46:40

作者 | 周志鹏

责编 | 郭   芮


很多朋友应该都知道了,今年初英伟达下调了第四财季的业绩预期,随后股价暴跌高达18%。


请注意这里的细节,是英伟达自己下调了预期,发生的时机是在发布本季财报之前。说白了,就是自己提前承认这个季度搞砸了,并跪求各位投资人放过。


另外一个需要注意的细节是,这已经不是英伟达第一次下调本季度的业绩预期了。在去年发布第三季度财报时,英伟达就已经将第四财季的营收期望下调了7%左右,低于市场预期近两成。最近六个月以来,英伟达股价已经由最高的290美元左右,下跌到后来的130美元,除了股价腰斩,更成为同期标普500指数中表现最差的公司。


英伟达在致股东信中提到,导致收入指引下调的主要原因是全球及部分地区的经济减速,导致游戏GPU销量和数据中心业务的大量下滑。


相比之下,FPGA公司Xilinx却在发布季度财报后股价飙升接近20%,这很大程度上归功于Xilinx通信与数据中心部门的高速增长。此外,英特尔在其最新财报中披露,旗下FPGA部门在数据中心领域的增长幅度约有惊人的50%。


分析师们并不会告诉你,为什么这些公司目前有如此迥异的表现。在本文中,笔者就从技术角度深入分析,当年的小甜甜怎么变成了今天的牛夫人。




数据中心AI加速芯片的选择



推动人工智能爆发的最主要原因之一,就是硬件算力的提升。而英伟达的股价当年之所以能够三年涨10倍,就是因为GPU非常适用于深度神经网络的训练。与传统的CPU相比,GPU拥有数千个计算内核,能够在性能上取得上百倍的提升。因此AI就成为了GPU最主要的应用领域之一,也成就了英伟达的高速增长。


随着AI的不断发展,诸如微软和谷歌这样的巨头公司开始考虑在数据中心里采用GPU作为AI加速芯片,这时问题就出现了。在大量部署时,芯片的性能并不是唯一需要考虑的因素。事实上,很多情况下它也并不是最重要的因素。


对于某种AI加速芯片,常见的评价因素可以总结为五点:性能、灵活性、同构性、成本和功耗。其中:


  • 灵活性:指这种芯片对不同应用场景的适应程度;

  • 同构性:指的是AI加速芯片能否重复利用数据中心现有的架构和资源;

  • 成本:既包括对该硬件加速器的研发投入,也包含了它的采购、部署和运维开支;

  • 功耗:就是指引入该方案后,对数据中心带来的额外功耗负担。


接下来就对几种常见的AI加速芯片,比如GPU、FPGA以及ASIC,采用上述评价因素做一个简单的定性对比。


GPU


GPU最大的问题是,它基本上是个“功耗黑洞”:中等性能的GPU功耗都普遍超过200W,而高性能GPU的功耗会超过300W。相比于FPGA或ASIC的几十瓦甚至几瓦的功耗而言,这个数字显得过于惊人。


高功耗对于GPU在数据中心里的大规模部署是致命的,因为这不仅代表着高昂的电费开支,还表示数据中心现有的供电、散热等硬件架构需要进行重新修改,这对于同构性和低成本这两项要求而言基本上是不可能的任务。


在灵活性方面,GPU通常只适用于计算密集型运算,对于通信密集型的应用,GPU需要与CPU和网卡组成一个完整的通信系统,因此对于这类应用,GPU的灵活性会受到较大限制。


ASIC


专用的AI加速芯片以谷歌的张量处理器TPU(Tensor Processing Unit)最为典型。TPU专为谷歌的深度学习框架TensorFlow设计,现在已有第二代,被用来加速神经网络的和决策。ASIC最主要的优势是它的超高性能和超低功耗。与GPU相比,TPU在某些AI应用的性能可以提高一个量级,而功耗会下降一到两个量级。


不过,得到这样高性能和低功耗需要付出的代价就是巨大的研发成本。放眼全球,有资金实力和技术储备进行这类研发的公司,大概用一个手就能数的出来。ASIC的另外一个缺点是它的低灵活性,它通常针对某种特定的应用和算法框架而设计,因此很难直接用于其他的应用。


FPGA


相比GPU和ASIC,FPGA在各项评价指标中能够达到比较理想的平衡。在绝对性能方面,虽然不如GPU或ASIC,但由于FPGA可以定制化硬件流水线,并且可以进行大规模并行运算,因此相比传统的基于CPU的计算性能还是有着至少一到两个量级的提升。由于FPGA具有硬件可编程的特点,使得它可以应对包括计算密集型和通信密集型在内的各类应用。此外,FPGA独有的动态可编程、部分可编程的特点,使其可以跨空间和时间两个维度,同时处理多个应用,或在不同时刻处理不同应用,因此有很强的灵活性。


功耗和成本方面,FPGA的功耗通常为几十瓦,采购与运维成本远低于GPU。FPGA的开发成本主要涉及购买特定的FPGA设计和调试工具、采购FPGA芯片或加速卡,以及组建团队进行或外包FPGA开发项目等投入。虽不及CPU或GPU等基于软件的开发方式,但由于省去了FPGA芯片制造的相关环节,因此相比研发一款专用芯片而言还是低很多。


此外,FPGA目前通常以加速卡的形式配合现有的通用处理器进行大规模部署,对额外的供电和冷却等环节没有特殊要求,因此可以兼容数据中心的现有硬件体系结构。



AI芯片的最大风险



对于AI芯片的设计者而言,当前最大的风险就是AI本身。


在这个群雄争霸的时代,各种新算法、新模型层出不穷,因此在某种方法一统天下之前,很难将其中的任何一种方法固化在芯片上,否则就很可能再次重演以前的小甜甜变成今天的牛夫人这样的悲剧。


比如,为了进一步提升性能功耗比,目前比较流行的方法是使用近似(approximation)算法,例如将双精度浮点数换成低精度的定点数,或者对不同权重的网络分支做剪枝、结构优化和压缩的操作。这方面的具体内容在本文中不再展开,有兴趣的读者可以搜索了解。


笔者想说的是,这些不断涌现的全新AI方法只有通过FPGA才能快速实现,这对于GPU或者ASIC都是不可能完成的任务。


数据中心与AI已经成为各家芯片公司的必争之地。只不过,近期资本市场的表现在某种程度上展示了人们对不同方案的认可度。这也是老石在本文中尝试分析的。


然而,笔者并不想立flag断言这些公司的未来,只是相信,技术会不断给出自己的答案。


作者:老石,博士毕业于伦敦帝国理工大学电子工程系,现任某知名半导体公司高级FPGA研发工程师,深耕于FPGA的数据中心网络加速、网络功能虚拟化、高速有线网络通信等领域的研发和创新工作。曾经针对FPGA、近似计算、高性能与可重构计算等技术在学术界顶级会议和期刊上发表过多篇研究论文,运营微信公众号“老石谈芯”。

声明:本文为作者投稿,作者独立观点,不代表CSDN立场。




 热 文 推 荐 

☞ GitHub 日收 7000 星,Windows 计算器项目开源即爆红!

☞ Python 为何能成最强编程语言?!

☞ 13 岁自学编程,19 岁成脸书最年轻工程师,如今跳槽谷歌

☞ 程序员撒狗粮!3 天开发自己的婚礼小程序!

☞ 300道Python面试题,备战春招!

☞ 5年Go语言经验薪资翻倍! 这份全球职业报告中, 区块链开发者薪资排第三, 前两名你绝对想不到!(含完整版下载资源)

☞ 女神节 |  那些奋斗在IT领域的“女神”们

☞ 没有一个人,能躲过程序员的诱惑!


System.out.println("点个好看吧!");
console.log("点个好看吧!");
print("点个好看吧!");
printf("点个好看吧!n");
cout < < "点个好看吧!" < < endl;
Console.WriteLine("点个好看吧!");
Response.Write("点个好看吧!");
alert("点个好看吧!")
echo "点个好看吧!"

点击阅读原文,输入关键词,即可搜索您想要的 CSDN 文章。

喜欢就点击“好看”吧!

关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接
百度热搜榜
排名 热点 搜索指数