FPGA技术这么牛,知道这5大要点就够了
作为新兴的加速代表,FPGA与人工智能这个名字紧紧的捆绑在一起,业界对于FPGA的前景也充满期待。去年5月,英特尔宣布以167亿美元收购FPGA生产商Altera,这也说明了这个芯片巨头对于FPGA市场发展的强大信心。但是,对于许多人来说,FPGA的意义何在,FPGA能够应用于生产场景中,这些问题都是他们存在于心底的疑惑。而对于FPGA的许多,笔者日前有幸聆听了英特尔PSG BDM部门刘斌博士的演讲,对于FPGA的认识有了进一步的加深。
关于FPGA好,你不可不知的5大技术要点
FPGA存在的意义是什么?
用户可以从Caffe或者从TensorFlow开始Machine Learning的设计,开始神经网络CNN的设计,在设计之后不需要真的了解FPGA是怎么开发的,FPGA的板卡是怎么开发的,FPGA用什么样的硬件描述语言,你就可以把你的神经网络放进FPGA里,得到FPGA的速度和功耗上的优势,这个是我们战略里面,FPGA所扮演的角色。
为什么FPGA比较适合用于深度学习
首先FPGA是一个可编程的硬件,和我们大部分的处理器不同。因为处理器的硬件结构是固定的。FPGA虽然有非常稳定的底层结构但是我们可以组合成非常多类型的数字电路,并且在里面可以利用一些硬核构成一些相对比较高层的计算结构。
首先FPGA的能效比非常好,其次FPGA有非常好的可编程性,即使在线的情况下,你可以更新你的硬件结构。最后,FPGA本身因为具备类似I/O或者说片上系统的部分功能,可以提供一些基础架构上的灵活性。
FPGA技术这么牛,知道这5大要点就够了
英特尔的FPGA相关产品
英特尔(Altera)传统来讲是一个半导体的厂商,所以在FPGA这个产品线里面我们其实包括以下几种类型产品。半导体这一侧我们主要有叫Max的CPLD系列,Cyclone, Arria 和Stratix的FPGA产品系列,这个是从低到高的。
Cyclone是比较低端的,Arria在中间,Stratix是比较高端的产品系列。每个产品系列里面又有自己的不同的具体的型号, 按照规模来划分,那应用的场景会不太一样。
Cyclone可能是应用在更工业化的更嵌入设备应用的场景里,Arria是一个功耗成本和性能的一个平衡产品,Stratix是一个超强的计算能力的产品。我们今年年底正在推出Statix 10的工程样片,第一个工程样片它的浮点计算能力达到9.2个Tflop,9个Tflops的产品。
Enpirion是我们另外一条产品线,主要是支持一个非常小尺寸的电源的工作,在server或者是在计算领域有很大应用。但产品来讲除了器件以外,我们包括了开发工具,也包括板卡和IP。
如何利用一颗FPGA实现CNN加速
我们选择CNN作为第一个切入点,因为CNN的网络运用非常广泛;另外CNN的网络也是深度学习一个典型的情况,会不停地往前演进。
FPGA效率达到最高的基本原则是,我里面刚刚讲到的乘加单元、存储器单元,他们能够尽可能的被使用到。
FPGA在CNN领域面临的3大挑战
因为FPGA还很新,那进入这个市场第一个挑战是怎么样让FPGA工作起来。
第二个挑战是机器学习是一个快变的一个技术领域,所以他的生态坏境、社区、软件都是非常重要的一个方面。那我们作为后来者,特别是跟这种FPGA的团队
第三个是FPGA还有一些原生的特点,比如开发周期是比较长。
在演讲的最后,在谈到为何今天应该采用英特尔FPGA来实现深度学习的时候,刘斌表示:“英特尔FPGA是技术和价值之选;英特尔机器学习战略将先进的器件(包括FPGA)与优化的软件库,高阶的框架,以及数据分析平台整合在一起;英特尔FPGA支持高效的OpenCL编程。”
页:
[1]