盘点人工智能处理器芯片技术
扫描二维码
随时随地手机看文章
1492年哥伦布从西班牙巴罗斯港出发,一路西行发现了美洲。葡萄牙人达伽马南下非洲,绕过好望角到达了印度。不久之后,麦哲伦用了整整三年时间,完成了人类史上第一次环球航行,开启了人类历史上的大航海时代。大航海时代的到来,拉近了人类社会各文明之间的距离,对人类社会产生了深远的影响。
人工智能进入“大航海时代”
从深蓝到Alpha Go,人工智能逐渐走进人们的生活。人工智能也从一场技术革命,逐渐走向了产业落地。智能手机、智能家居设备、智能音箱……等设备,已经完全进入到人们的生活中。指纹识别、人脸识别、画面增强等实用人工智能的技术,也成为了人们日常使用电子设备必不可少的技术。
这些在我们日常生活中“见怪不怪”的人工智能技术越来越普遍,代表了人工智能产业在近年来的爆炸式发展,2018年更是被称为人工智能技术规模应用的拐点。而作为人工智能技术的核心,人工智能芯片也备受关注,引得国内外科技巨头纷纷布局。谷歌、苹果、微软、Facebook、英特尔、高通、英伟达、AMD、阿里巴巴等巨头纷纷开始自主研发人工智能芯片。
国产寒武纪芯片
并且人工智能芯片的应用场景细分市场越来越多,专门为某些人工智能应用场景定制的芯片适用性明显高于通用芯片。这样的形势,给一些人工智能芯片的初创公司带来了机会。寒武纪芯片和地平线的人工智能视觉芯片、自动驾驶芯片等,就是初创公司在人工智能芯片领域取得成功的代表。
人工智能芯片大火的同时,已经呈现出三分天下的态势。FPGA、GPU和TPU芯片,已经在人工智能领域大规模应用。这三种人工智能芯片有何不同?人工智能企业又是怎样看待这三种芯片的?下文将为您详述。
FPGA并不是新鲜的事物,而因为AI的火热的应用需求不断增强,FPGA正是作为一种AI芯片呈现在人们的面前。准确的说,不仅仅是芯片,因为它能够通过软件的方式定义,所以,更像是AI芯片领域的变形金刚。
FPGA是现场可编程逻辑阵列的首字母缩写,即Field-Programmable Gate Array。过去曾与可编程逻辑器件CPLD进行过较量,如今已经在PAL、GAL、CPLD等可程式逻辑装置的基础上进一步发展,成为英特尔进军AI市场的一个重要法宝。
全球FPGA市场的年均增长率会达到7%(图片来自:gartner.com)
为了更好地了解FPGA和其对AI芯片的未来看法,ZOL企业站对英特尔可编程解决方案事业部亚太区市场拓展经理刘斌(Robin Liu)进行了书面采访。面对目前市场上出现的,CPU、GPU、FPGA、TPU等多种技术处理方式,英特尔又有哪些判断。
FPGA三大特点
刘斌表示:“实际上今天绝大多数人工智能系统是部署在通用处理器上的,原因是在很多应用领域中人工智能部分只是完成某个环节的系统任务,还有大量其它任务一起构成系统处理的完整单元。”在此基础上,出现了很多种选项,比如FPGA、TPU2或者NNP等专用处理器。这种专用处理器,往往向深度学习和神经网络领域延伸,拥有更高效的存储器访问调度结构。
FPGA具有很强的灵活性(图片来自:ruggedpcreview.com)
FPGA被称为大型数据中心和计算机群众的“加速多面手”也有其技术生态背景。FPGA的开发社区规模相对较小,也具有一定的门槛,但是,FPGA具备良好的存储器访问能力,并且可以非常灵活高效的处理各种不同位宽的数据类型,其有效计算力接近专用处理器的水平,FPGA还可以在线重编程成为其它非人工智能任务的硬件加速器,这也是其有别于GPU和TPU的关键因素。
具体而言有三大特点:FPGA器件家族的广泛覆盖可以适配从云到端的应用需求;FPGA具有处理时延小并且时延可控的特点,更适合某些实时性要求高的业务场景;FPGA可以灵活处理不同的数据位宽,使得系统可以在计算精度、计算力、成本和功耗上进行折衷和优化,更适合某些制约因素非常严格的工程化应用。相比于ASIC则FPGA更加灵活,可以适配的市场领域更加广泛。
自定义功能芯片
以微软为例,在微软必应搜索业务和Azure云计算服务中,均应用了英特尔FPGA技术,在其发布的“脑波项目”(Project Brainwave)中特别阐述了英特尔FPGA技术如何帮助Azure云和必应搜索取得“实时人工智能”(real-time AI)的效果。
英特尔 FPGA 支持必应快速处理网页中的数百万篇文章,从而为您提供基于上下文的答案。借助机器学习和阅读理解,必应 现在可提供智能答案,帮助用户更快速找到所需答案,而非手动点击各个链接结果。在微软脑波计划中,同样选择了英特尔现场可编程门阵列的计算芯片,以具有竞争力的成本和业界最低延迟进行人工智能计算。
如果说在AI芯片领域各家有各家的拿手绝学,那么身为“变形金刚”FPGA的拿手绝学就是自定义功能了。作为特殊应用积体电路领域中的一种半定制电路的FPGA,既解决了全定制电路的不足,又克服了原有可编程逻辑器件门电路数有限的缺点。也就是说,尽管FPGA不是辐射范围最广的,但是一旦匹配后,输出惊人,所以也是良好的芯片选择。
不止FPGA
随着人工智能的发展,芯片的设计不仅要能够满足人工智能对计算力的需求,还要能够适应不断变化的产业需要。在不同的应用领域和不同的位置,前端还是数据中心,甚至边缘计算等应用场景。刘斌表示:一种芯片是没办法解决所有问题的。从移动设备,到服务器,再到云服务、机器学习和人工智能的加速,需要不同种类的技术支持,需要能够支持从毫瓦级到千瓦级的多种架构。
在英特尔人工智能领域,除了FPGA之外,还提供了ASIC方案下的NNP神经网络计算加速器、Movidius专注前端智能摄像头领域和Mobieye加速芯片,在无人车领域做视觉相关的物体、道路、异常情况的监测。
过去30多年,摩尔定律几乎每年都会推动微处理器的性能提升50%,而半导体的物理学限制却让其放慢了脚步。如今,CPU的性能每年只能提升10%左右。事实上,英伟达CEO黄仁勋在每年的GTC上都会提到同一件事——摩尔定律失灵了。也就是说,人们要获得更强的计算力,需要花费更多的成本。与此同时,GPU的崛起速度令人咂舌,看看英伟达近两年的股价就知道了。
随着人工智能、深度学习等技术的兴起与成熟,起初为图像渲染而生的GPU找到了新的用武之地,以GPU驱动的计算环境随处可见,从HPC到AI训练。站在数字世界、高性能计算、人工智能的交叉口,GPU悄然成为了计算机的大脑。将性能从10倍提升至100倍,GPU的加速能力远超以X86架构构建的CPU系统,将时间压缩至分钟级别,功耗也相对较低。
2006年,借助CUDA(Compute Unified Device Architecture,通用计算架构)和Tesla GPU平台,英伟达将通用型计算带入了GPU并行处理时代,这也为其在HPC领域的应用奠定了基础。作为并行处理器,GPU擅长处理大量相似的数据,可以将任务分解为数百或数千块同时处理,而传统CPU则是为串行任务所设计,在X86架构下进行多核编程是很困难的,并且从单核到四核、再到16核有时会导致边际性能增益。同时,内存带宽也会成为进一步提高性能的瓶颈。
与以往的通用算法相比,深度学习对计算性能的要求则到了另一个量级上。尽管在GPU中运行并行核心时处理的应用数量相同,但在系统中单个内核的使用效率却更高。此外,经过重写的并行函数在应用程序关键部分运行时,在GPU上跑的速度更快。
更重要的是,英伟达在利用GPU构建训练环境时还考虑到了生态的重要性,这也是一直以来困扰人工智能发展的难题。首先,英伟达的NVIDIA GPU Cloud上线了AWS、阿里云等云平台,触及到了更多云平台上的开发者,预集成的高性能AI容器包括TensorFlow、PyTorch、MXNet等主流DL框架,降低了开发门槛、确保了多平台的兼容性。
其次,英伟达也与研究机构、大学院校,以及向Facebook、YouTube这样的科技巨头合作,部署GPU服务器的数据中心。同时,还为全球数千家创业公司推出了IncepTIon项目,除了提供技术和营销的支持,还会帮助这些公司在进入不同国家或地区的市场时,寻找潜在的投资机会。
可以说,英伟达之于GPU领域的成功除了归功于Tesla加速器、NVIDIA DGX、NVIDIA HGX-2这些专属的工作站或云服务器平台,更依托于构建了完整的产业链通路,让新技术和产品有的放矢,从而形成了自己的生态圈,这也是英特尔难以去打破的。
在不久前举行的谷歌I/O 2018开发者大会上,TPU3.0正式亮相。根据官方介绍,TPU3.0的计算能力最高可达100PFlops,是TPU2.0的8倍多。TPU的英文全名是Tensor Processor Unit,它是谷歌自主研发的针对深度学习加速的专用人工智能芯片。TPU是专为谷歌深度学习框架TensorFlow设计的人工智能芯片。著名的AlphaGo使用的就是TPU2.0芯片。