FPGA加速驱动新时代的数据洪流,下篇

目 录

  1. 人工智能计算加速器产品系列的相关布局
  2. FPGA开发的痛点与潜在方案
  3. 结语


在《FPGA加速驱动新时代的数据洪流,上篇》中,老石介绍了英特尔应对大数据时代的整体战略布局,特别是基于FPGA的各类智能网卡和网络解决方案。在本篇中,老石会继续介绍英特尔FPGA在人工智能和其他热点领域的布局和大动作,以及总结梳理一些FPGA开发会遇到的痛点和潜在的解决方案。


1

人工智能计算加速器产品系列的相关布局

在本次数据中心创新峰会上,英特尔宣布了Xeon处理器的详细路线图,即基于英特尔14nm工艺的Cascade Lake(2018年底出货),基于14nm工艺的Cooper Lake(2019年出货),以及基于10nm工艺的Ice Lake(2020年出货)。


这三款Xeon处理器都在内部集成了对深度学习加速器的原生支持,从而更好的针对人工智能应用进行计算和加速。除此之外,英特尔还展示了“泛数据中心”业务群中针对人工智能应用的全栈芯片产品组合。

FPGA加速驱动新时代的数据洪流,下篇


在人工智能的计算和加速领域,FPGA也被广泛用作硬件加速模块来使用,并被部署于数据中心本身以及很多边缘计算的场合。


对于FPGA在数据中心领域的应用,最有名的例子就是微软在其数据中心对FPGA使用进行的一系列针对人工智能计算的开创性的探索。


例如,微软在它最新公布的“脑波项目(Project Brainwave)”中,使用了英特尔FPGA,构建了实时深度学习平台。它利用了FPGA的低延时、高并行、低功耗的特点,实现了对Bing搜索服务、微软Azure云平台等多项业务的跨越式加速。关于微软的FPGA项目已有很多文章进行介绍,本文不再展开。


另外,英特尔于2017年发布了用于Xeon服务器的新一代标准化的“可编程加速卡(Programmable Acceleration Cards – PACs)”,以及配套的加速栈开发软件和用户接口,如下图所示,并已经得到了包括戴尔、富士通、浪潮等服务器大厂的采用和配套支持。这款加速卡可以使用户在多个领域进行定制计算加速,包括人工智能、大数据、高性能计算等。

FPGA加速驱动新时代的数据洪流,下篇


FPGA的应用也逐步扩展到网络边缘和端点,例如智能安防、视频采集和处理、自动驾驶和机器人等等,直接在数据来源进行计算加速,并进行人工智能模型的推断和处理,见下图。

FPGA加速驱动新时代的数据洪流,下篇


边缘计算+人工智能通常是国内外初创企业切入市场的主要领域。这一方面是由于数据中心市场太过庞大,因此被巨头牢牢把持难以进入,另一方面也是由于在这个领域更容易通过创新的算法和方案获得一席之地。


我国的两个主要代表企业就是地平线和深鉴科技。其中,前者已获得英特尔领投的A+轮近一亿美元投资,并通过此次投资将FPGA 事业部负责人Dan McNamara安排加入了地平线的董事会;而后者已在A+轮融资后被另一个FPGA大厂Xilinx全资收购。由此,可以十分清晰的看到FPGA公司对边缘计算和人工智能领域的积极布局。

FPGA加速驱动新时代的数据洪流,下篇


2

FPGA开发的痛点与潜在方案

至此可以看到,英特尔已经在泛数据中心领域开展了全面的布局和规划。其中,FPGA在驱动大数据传输和计算这两个关键领域均扮演着重要角色,并且覆盖了从云端到网络边缘的各个部分。


然而,尽管FPGA被某些国内媒体热捧为“万能芯片”,真正的实现对FPGA的广泛使用还是存在很多难点亟待克服。


第一,学界和业界仍然没有开创性的方法简化FPGA的开发,这可以说是现阶段制约FPGA广泛使用的最大障碍。


与CPU或GPU成熟的编程模型和丰富的工具链相比,高性能的FPGA设计仍然大部分依靠硬件工程师编写RTL模型实现。RTL语言的抽象度很低,往往是对硬件电路进行直接描述,这样一方面需要工程师拥有很高的硬件专业知识,另一方面在开发复杂的算法时会有更久的迭代周期。因此,FPGA标榜的可编程能力与其复杂的编程模型之间,形成了鲜明的矛盾。


近五到十年来,高层次综合(High Level Synthesis - HLS)一直是FPGA学术界研究的热点,其重点就是希望设计更加高层次的编程模型和工具,利用现有的编程语言比如C、C++等,对FPGA进行设计开发。在这期间有趣的成果层出不穷,其中有代表性的HLS初创公司有多伦多大学Jason Anderson教授及其学生创办的LegUp Computing,以及UCLA丛京生教授创办的Falcon Computing等(见下图)。

FPGA加速驱动新时代的数据洪流,下篇


在工业界,两大FPGA公司都选择支持基于OpenCL的FPGA高层次开发,并分别发布了自己的API和SDK等开发工具。这在一定程度上降低了FPGA的开发难度,使得C语言程序员可以尝试在FPGA平台上进行算法开发,特别是针对人工智能的相关应用。


尽管如此,程序员仍然需要懂得基本的FPGA体系结构和设计约束,这样才能写出更加高效的OpenCL模型。另外,基于OpenCL的FPGA设计移植性不是很好,且严重基于厂商提供的开发工具和底层模块的性能,调试起来也不甚便利。


在数据中心网络应用领域,两大FPGA公司也开始支持名为P4的网络编程语言。P4语言大约于2014年由斯坦福大学的Nick McKeown教授提出,主要用来描述网络交换、路由选择和数据包处理规则,非常适合数据中心里高速网络通信的应用场景。关于P4的具体内容在本文中不再展开,其内容值得再写一篇文章详细探讨。其实相比全通用的HLS设计而言,类似于P4的针对某类特定应用的HLS工具或许有更大和更快的发展前景。


类似的还有英特尔最新发布的OpenVINO(Open Visual Inference & Neural Network Optimization - 开放的视觉推理和神经网络优化)开发套件。


顾名思义,OpenVINO专为计算机视觉和深度学习在边缘计算的应用场景进行优化,其最大特点是支持英特尔的全栈视觉加速方案,包括CPU、GPU、FPGA以及Movidius VPU等,并支持多种深度学习框架。其中,在FPGA上使用OpenVINO进行开发,可以取得高达19倍的性能提升,如下图所示。

FPGA加速驱动新时代的数据洪流,下篇


第二,FPGA并非适用于各种应用场景。特别是对于一些边缘计算和嵌入式应用,它们对价格、功耗、性能以及可靠性的统筹要求很高,其中往往价格会是主要的考虑因素。这样基于FPGA的方案相比于GPU、SoC或者ASIC的方案并没有很大的优势,这是由于FPGA并非针对某一特殊应用场景而设计优化。


为了解决这个问题,英特尔近日收购了“结构化ASIC”设计公司eASIC,并计划将其整合到公司的FPGA事业部中。结构化ASIC设计可以看成是FPGA与ASIC的折中,见下图。

FPGA加速驱动新时代的数据洪流,下篇


结构化ASIC的主要特点有以下两点:

  1. 通过牺牲FPGA的一部分可编程性,换取低功耗、低成本和高性能;
  2. 通过牺牲ASIC对设计和布局的深入优化,换取更快的设计流片时间。


由此可见,对于很多对成本和功耗敏感的应用场景,这种结构化ASIC的设计方法有着很强的竞争力。

有需要购买Xilinx altera TI ADI品牌器件的朋友,请联系VX293580331 原装正品 终身质保 价格最低!欢迎咨询与推荐!


3

结语

本文总结了在英特尔“以数据为中心(Data-Centric)”的创新峰会上发布的和FPGA相关的主要技术内容,并由此延伸探讨了FPGA在人工智能和大数据时代的机遇和挑战。


可以说,如今FPGA在泛数据中心应用领域再次焕发新生,各种全新机遇接踵而至。同时我们看到,机遇往往伴随着挑战,只有勇于应对挑战,才能在新的时代不断前进。

展开阅读全文

页面更新:2024-06-03

标签:加速卡   可编程   英特尔   数据   微软   人工智能   下篇   洪流   下图   数据中心   布局   模型   场景   边缘   领域   方案   体育   网络

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top