官方论坛
官方淘宝
官方博客
微信公众号
点击联系吴工 点击联系周老师
您的当前位置:主页 > FPGA行业资讯 >

GPU/FPGA/ASIC 三种芯片有什么不同-明德扬科教(mdy-edu.com)

发布时间:2019-12-10   作者:admin 浏览量:

根据赛迪咨询发布报告,2016年全球人工智能市场规模达到293亿美元。我们预计2020年全球人工智能市场规模将达到1200亿美元,复合增长率约为20%。人工智能芯片是人工智能市场中重要一环,根据英伟达,AMD,赛灵思,谷歌等相关公司数据,我们测算2016年人工智能芯片市场规达到23.88亿美元,约占全球人工智能市场规模8.15%,而到2020年人工智能芯片市场规模将达到146.16亿美元,约占全球人工智能市场规模12.18%。人工智能芯片市场空间极其广阔。


芯片承载算法,是竞争的制高点


人工智能的基础是算法,深度学习是目前最主流的人工智能算法。深度学习又叫深度神经网络(DNN:Deep Neural Networks),从之前的人工神经网络(ANN:Artificial Neural Networks)模型发展而来。这种模型一般采用计算机科学中的图模型来直观表达,深度学习的“深度”便指的是图模型的层数以及每一层的节点数量。神经网络复杂度不断提升,从最早单一的神经元,到2012年提出的AlexNet(8个网络层),再到2015年提出的ResNET(150个网络层),层次间的复杂度呈几何倍数递增,对应的是对处理器运算能力需求的爆炸式增长。深度学习带来计算量急剧增加,对计算硬件带来更高要求。


深度学习算法分“训练”和“推断”两个过程。简单来讲,人工智能需要通过以大数据为基础,通过“训练”得到各种参数,把这些参数传递给“推断”部分,得到最终结果。


“训练”和“推断”所需要的神经网络运算类型不同。神经网络分为前向计算(包括矩阵相乘、卷积、循环层)和后向更新(主要是梯度运算)两类,两者都包含大量并行运算。“训练”所需的运算包括“前向计算+后向更新”;“推断”则主要是“前向计算”。一般而言训练过程相比于推断过程计算量更大。一般来说,云端人工智能硬件负责“训练+推断”,终端人工智能硬件只负责“推断”。


“训练”需大数据支撑并保持较高灵活性,一般在“云端”(即服务器端)进行。人工智能训练过程中,顶层上需要有一个海量的数据集,并选定某种深度学习模型。每个模型都有一些内部参数需要灵活调整,以便学习数据。而这种参数调整实际上可以归结为优化问题,在调整这些参数时,就相当于在优化特定的约束条件,这就是所谓的“训练”。云端服务器收集用户大数据后,依靠其强大的计算资源和专属硬件,实现训练过程,提取出相应的训练参数。由于深度学习训练过程需要海量数据集及庞大计算量,因此对服务器也提出了更高的要求。未来云端AI服务器平台需具备相当数据级别、流程化的并行性、多线程、高内存带宽等特性。


“推断”过程可在云端(服务器端)进行,也可以在终端(产品端)进行。等待模型训练完成后,将训练完成的模型(主要是各种通过训练得到的参数)用于各种应用场景(如图像识别、语音识别、文本翻译等)。“应用”过程主要包含大量的乘累加矩阵运算,并行计算量很大,但和“训练”过程比参数相对固化,不需要大数据支撑,除在服务器端实现外,也可以在终端实现。“推断”所需参数可由云端“训练”完毕后,定期下载更新到终端。


传统CPU算力不足,新架构芯片支撑AI成必须。核心芯片决定计算平台的基础架构和发展生态,由于AI所需的深度学习需要很高的内在并行度、大量浮点计算能力以及矩阵运算,基于CPU的传统计算架构无法充分满足人工智能高性能并行计算(HPC)的需求,因此需要发展适合人工智能架构的专属芯片。


专属硬件加速是新架构芯片发展主流。目前处理器芯片面向人工智能硬件优化升级有两种发展路径:(1)延续传统计算架构,加速硬件计算能力:以GPU、FPGA、ASIC(TPU、NPU等)芯片为代表,采用这些专属芯片作为辅助,配合CPU的控制,专门进行人工智能相关的各种运算;(2)彻底颠覆传统计算架构,采用模拟人脑神经元结构来提升计算能力,以IBM TrueNorth芯片为代表,由于技术和底层硬件的限制,第二种路径尚处于前期研发阶段,目前不具备大规模商业应用的可能性。从技术成熟度和商业可行性两个角度,我们判断使用AI专属硬件进行加速运算是今后五年及以上的市场主流。


云端终端双场景,三种专属芯片各显其能


我们把人工智能硬件应用场景归纳为云端场景和终端场景两大类。云端主要指服务器端,包括各种共有云、私有云、数据中心等业务范畴;终端主要指包括安防、车载、手机、音箱、机器人等各种应用在内的移动终端。由于算法效率和底层硬件选择密切相关,“云端”(服务器端)和“终端”(产品端)场景对硬件的需求也不同。


除CPU外,人工智能目前主流使用三种专用核心芯片,分别是GPU,FPGA,ASIC。


GPU:先发制人的“十项全能”选手,云端终端均拔头筹。GPU(Graphics Processing Unit)又称图形处理器,之前是专门用作图像运算工作的微处理器。相比CPU,GPU由于更适合执行复杂的数学和几何计算(尤其是并行运算),刚好与包含大量的并行运算的人工智能深度学习算法相匹配,因此在人工智能时代刚好被赋予了新的使命,成为人工智能硬件首选,在云端和终端各种场景均率先落地。目前在云端作为AI“训练”的主力芯片,在终端的安防、汽车等领域,GPU也率先落地,是目前应用范围最广、灵活度最高的AI硬件。


FPGA:“变形金刚”,算法未定型前的阶段性最佳选择。FPGA(Field-Programmable Gate Array)即现场可编程门阵列,是一种用户可根据自身需求进行重复编程的“万能芯片”。编程完毕后功能相当于ASIC(专用集成电路),具备效率高、功耗低的特点,但同时由于要保证编程的灵活性,电路上会有大量冗余,因此成本上不能像ASIC做到最优,并且工作频率不能太高(一般主频低于500MHz)。FPGA相比GPU具有低功耗优势,同时相比ASIC具有开发周期快,更加灵活编程等特点。FPGA于“应用爆发”与“ASIC量产”夹缝中寻求发展,是效率和灵活性的较好折衷,“和时间赛跑”,在算法未定型之前具较大优势。在现阶段云端数据中心业务中,FPGA以其灵活性和可深度优化的特点,有望继GPU之后在该市场爆发;在目前的终端智能安防领域,目前也有厂商采用FPGA方案实现AI硬件加速。

  •   
  •   
  •   
  •  
  • FPGA教育领域第一品牌
  • 咨询热线:020-39002701
  • 技术交流Q群:544453837