软件工具将GPU代码迁移到fpga以用于AI应用

软件工具将GPU代码迁移到fpga以用于AI应用

Software tools migrate GPU code to FPGAs for AI applications

人工智能软件初创公司Mipsology正与Xilinx合作,使fpga能够仅使用一个额外的命令就可以替换AI加速器应用程序中的gpu。Mipsology的“zero effort零努力”软件Zebra将GPU代码转换为在FPGA上运行Mipsology的AI计算引擎,而无需进行任何代码更改或重新培训。
Xilinx今天宣布,它将为Zebra运送最新版本的Alveo U50卡。Zebra已经在其他Xilinx板上支持推理加速,包括Alveo U200和Alveo U250。
软件工具将GPU代码迁移到fpga以用于AI应用_第1张图片
The latest build of Xilinx’ Alveo U50 data center accelerator card now comes with Mipsology’s Zebra software for conversion of GPU AI code to run on FPGAs

“Zebra为我们的Alveo卡带来的加速水平让CPU和GPU加速器相形见绌,”Xilinx市场副总裁Ramine Roane说。“与Zebra相结合,Alveo U50满足了AI工作负载的灵活性和性能需求,并为任何部署提供了高吞吐量和低延迟性能优势。”

Plug-and-play即插即用

FPGA历来被视为非专业人士难以编程,但Mipsology希望将FPGA打造成一种即插即用解决方案,与CPU或GPU一样易于使用。其目的是尽可能容易地从其他类型的加速转换到FPGA。

Mipsology首席执行官拉祖尔(Ludovic Larzul)在接受《电子时报》(EE Times)采访时表示:“了解(Mipsology)的最佳方法是,我们在FPGA上安装软件,使其透明,就像Nvidia为AI用户打造的Cuda
CuDNN一样。”。

关键的是,这可以由非专家完成,不需要深厚的人工智能专业知识或FPGA技能,因为转换不需要模型再培训。

拉祖尔说:“易用性非常重要,因为当你看到人们的人工智能项目时,他们通常无法接触到设计神经网络的人工智能团队。”。“一般来说,如果有人建立了一个机器人系统,或者视频监控系统……他们会有其他团队或其他团体开发并训练神经网络。一旦他们得到(经过训练的模型),他们就不想改变它,因为他们没有专业知识。”
软件工具将GPU代码迁移到fpga以用于AI应用_第2张图片
Zebra’s stack. The technology is applicable across data center, edge and embedded applications

Versus Vitis

既然Xilinx已经有了一个全面的解决方案,让数据科学家和软件开发人员(即Vitis)都可以访问fpga,那么为什么Xilinx还要支持第三方软件呢?

拉祖尔说:“一句话的意思是:我们做得更好。”。“另一句话就是:我们的作品。”

Mipsology不使用Vitis的任何部分,也不以任何方式与之联系,也不使用XDNN,Xilinx的神经网络加速器引擎。Mipsology在Zebra中有自己的计算引擎,支持客户现有的卷积神经网络(CNN)模型,不像XDNN那样,Larzul说XDNN支持大量演示,但不太适合定制神经网络。他说,这使得使用XDNN建立和运行自定义网络变得“痛苦”。虽然XDNN可以在没有GPU威胁的应用程序中竞争,但Zebra的目标是使FPGA能够基于性能、成本和易用性迎头赶上GPU。
软件工具将GPU代码迁移到fpga以用于AI应用_第3张图片
Zebra’s stack in detail. The aim is to make FPGAs a simpler switch from GPUs or CPUs for AI acceleration by hiding the hardware as much as possible

拉祖尔说,大多数客户改变GPU解决方案的动机是成本。

他说:“他们想降低硬件成本,但又不想重新设计神经网络。”。“有一个非经常性的成本(这是避免的),因为我们能够透明地替换GPU,而且不需要重新训练或修改神经网络。”

根据Larzul的说法,fpga还提供了可靠性,部分原因是它们在硅不动产上的攻击性较小,而且通常比其他类型的加速器(包括gpu)运行得更冷。这对于长期维护成本很高的数据中心尤其重要。

拉祖尔说:“总拥有成本不仅仅是董事会的价格。“确保系统正常运行也是要付出代价的。”

Zebra也致力于使FPGA在性能上具有竞争力。Larzul说,虽然FPGA通常比其他加速器提供更少的top(每秒tera操作),但由于Zebra精心设计的计算引擎,它们能够更有效地使用这些top。

他们说的是,他们不是在用一个更大的芯片来加速芯片的速度,而是用一个更大的芯片来加速6倍于顶部的数量。

这是如何实现的?虽然Larzul没有给出确切的细节,但他确实表示,他们不依赖于剪枝,因为准确度的降低太大了,不经过再培训是无法接受的。出于同样的原因,它们不使用极端量化(低于8位)。

Zebra的引擎加速了CNN,而CNN目前主要用于图像和视频处理应用,但Zebra也可以应用于BERT(谷歌的自然语言处理模型),后者使用类似的数学概念。Zebra的未来迭代可能会覆盖其他类型的神经网络,包括LSTM(长短期记忆)和RNNs(递归神经网络),但这是很难实现的,因为rnn在数学上更加多样化。

Team from EVE

Mipsology成立于2015年,约有30人在法国从事研发工作,在加州有一个小团队主要负责业务开发。该公司已获得总额700万美元的资金,其中200万美元是2019年法国政府创新竞赛的奖金。

Mipsology的核心团队来自EVE——Synopsys于2012年收购的一家ASIC仿真器公司,该公司生产ZeBu(零缺陷)硬件辅助验证产品,当时是Cadence钯验证平台的竞争对手。据Larzul称,几乎所有主要的ASIC公司都使用EVE技术在设计周期内验证ASIC;这项技术依赖于连接在一起的数千个fpga来重现ASIC的行为。

Mipsology有12项专利正在申请中,与Xilinx密切合作,并兼容第三方加速卡,如Western Digital small-form factor(SFF U.2)卡和Advantech卡(如Vega-4001)。

你可能感兴趣的:(FPGA,GPU,人工智能)