赛灵思为何用“软件”推动其自适应计算平台
2020-11-10王莹
王莹
不久前,赛灵思推出了Vitis统一软件平台,并宣布其重要组件vitis AI开放下载,使人工智能(AI)和机器学习开发者可利用赛灵思的高性能自适应计算平台的加速度。一家硬件平台公司,为何重磅推出软件平台?为此,电子产品世界等媒体采访了赛灵思软件与AI产品市场营销副总裁Ramine Roane(罗明)。
1赛灵思整体的业务战略及对计算的看法
所有的电子系统应该是自适应的,就像有机物种一样,这样才能跟上创新的速度。同样,“所有的硬件和计算应该是自适应的”观点,也得到越来越多的行业认可。
直到2000年之前,根据摩尔定律,业界还接受着芯片或硅工艺的密度每18个月翻一番的速度,当时所有的应用和软件开发人员不用多做什么,就等着新芯片出现。直到2000年时,工艺方面的登纳德缩放比例定律(Dennard scaling)走到尽头,认为随着工艺密度的进一步翻番,频率不可能再进一步提高了,所有的CPU和计算机最多也就到(2-4)GHz的速度,而且迄今维持了20年。为了提升所有的应用性能,要进一步扩展,后来使用多核CPU,因此,这个问题从硬件转向软件(如图1)。
之后出现了向异构CPU和加速器的转移,到目前为止,这种方向是可行的。问题在于所有这些架构包括CPU都是固定的,这就很难跟上AI的创新速度。
赛灵思的思路是打造自适应的平台,非常灵活多变,而且赛灵思的芯片也可针对不同的应用进一步进行硬件的优化。所以现在开发者就不用等着新芯片出来,就可以建立一些特定架构的应用。
赛灵思提供的解决方案,如何追赶上像AI这样的创新速度?从图2可见,CNN等深度学习模型在2012-2018年发展的趋势,可看出每3个月会出现新的AI模型,会取代之前的模型,一般是1年半到2年的时间来构造1个全新的ASIC或GPU。
从图2可见,蓝色的,之前最主流的是GoogLeNet,1年半到2年后是ResNet,现在ResNet是最尖端的技术,但是无法在原有的架构上运行。赛灵思的器件以及可自适应的硬件,就可以来构建这种特有的架构。
2Vitis和VitiS AI的特点
Vitis的名字来自于法语,意思是生命力,解释到中文有“至关重要”的含义。
Vitis和Vitis AI開发工具可以助力软件开发人员和AI科学家,用他们选择的语言,例如c++进行开发,也可以使用相关的架构和库进行开发。
1)Vitis统一软件平台是针对软件开发人员的,包括AI的软件开发人员。
不过,对于软件人员和A1人员,赛灵思并不是那么知名,因为过去长久以来,赛灵思的开发工具主要面向硬件的开发人员。随着赛灵思推出Vitis和Vitis AI,想要改变人们对于赛灵思的认识一一现在也针对软件开发人员(如图3)。
而且软件开发人员的机会更多,因为软件人员的数量大大高于硬件开发人员。现在全球硬件开发者可能是一二十万的规模,而软件开发人员是数以几百万计的。而且现在美国大学里学硬件开发的已经很少了,大部分人选择学习软件开发。赛灵思传统的Vivado是针对硬件开发人员的平台,新推出的Vitis和Vitis AI是针对软件开发者以及AI科学家的。
2)Vitis统一软件平台的特点是统一了所有应用平台的开发,包括:①把AI和传统的软件开发统一起来。②把云和边缘也都统一起来,包括终端计算以及边缘和云计算,不同的架构全都统一起来。③可以使用统一的语言进行异构的加速。
赛灵思现在也在进行一个战略转型:从传统硬件公司转型成为软件的平台公司。赛灵思的理念是拥抱开源,把免费工具贡献给大家。现在赛灵思还有开源库,例如Github,还有SRT的运行库,有AI模型的例子,都是经过优化的,可以在FPGA上运行,还有赛灵思收购深鉴科技公司获得的技术。
实际上,Vitis和Vitis AI是抛砖引玉一一采用免费的模式,主要从硬件赚取利润。
一个问题是:在深度学习加速方面,虽然现在FPGA成长快,但是在AI培训I方面,主流的还是GPU居多,一方面是因为GPU硬件性能高,另一方面,英伟达在软件工具方面针对各个垂直领域做了很多工作。那么,Xilinx推出Vitis平台之后,是不是有助于加速到各个垂直应用的进程?
Ramine Roane解释道,GPU在AI培训I上的市场份额很大,但在AI的推断上面效率并不是很高。AI推断最大的市场份额还是由CPU占据的,不过现在CPU加速的效率还不高,例如在边缘的一个案例是北京小马智行公司的自动驾驶,时延是一个很关键的问题,GPU最大的问题是时延太高了。不过,过去人们认为FPGA有点难用,需要用硬件开发,随着Vitis、Vitis AI的推出,这个难度会降低。