Amadeus如何使用FPGA来打破Moore的法律门槛
计算机行业由一个简单的公式驱动,这些公式,各种规定的计算能力每18个月将增加一次。这是摩尔定律的本质,它意味着软件能够利用处理器性能加倍,而无需客户在硬件上花费两倍。
尽管如此,芯片制造商越来越困难,以便以维持摩尔定律所需的步伐继续创新。随着组织开始开发机器学习和人工智能(AI)应用程序,这已成为最明显的,传统处理器 - 或CPU - 未能提供所需的性能水平。
相反,查看乘坐AI的组织开始使用替代硬件,如图形处理单元(GPU),最近,现场可编程门阵列(FPGA),这承诺提供更好的性能水平。
“在过去的10年里,Moore的法律已经达到了门槛。所有依赖CPU的公司都面临这个门槛,需要改变他们接近计算的方式,“Amadeus的研究中心高级经理Pierre-etienne Melet说。
他说,软件工程的复杂技术有助于限制摩尔法的绩效高度的影响。但是今天基于GPU,FPGA和ASICS(应用专用集成电路)的硬件创新也有不断增长的认识,这承诺加速计算上的计算密集型应用。
“在我们的创新集团中,我们开始看看FPGA如何用于加速机器学习,”Seletsmelet。
Amadeus在苏黎世的Eth ech的一支硬件工程师团队致力于研究基于机器学习的决策的推理应用中的使用FPGA。
GPU往往是人们需要克服与使用传统CPU的延迟问题进行高性能AIAPplications时的第一个人。然而,虽然GPU解决了延迟问题,但Melet表示,它们往往是饥饿的动力,因此不是很有功率效率。因此,挑战不仅能够快速地运行AI算法,还可以通过有效地使用电力来实现高性能。
从功率效率的角度来看,MELet表示FPGA与GPU相比,该数量级较低的功耗,这可能使它们有效地运行AI算法的良好候选者。
超越了电力效率的论点,Melet表示GPU不是运行某些数据重型AI应用的最佳选择。“GPU并行过程”,“他说。“这意味着只能在数据集中运行单个GPU指令。”
如何在AWS中编程FPGA实例
“当您在Amazon Web服务(AWS)上拍摄了FPGA的实例时,它配备了Xilinx Vivado Design Suite,”Amadeus应用研究中心高级经理Pierre-etienne Melet说。
这提供了硬件合成引擎和用于模拟设计的工具,并将程序上传到FPGA上。工程师使用硬件描述语言“程序”FPGA,然后将其合成为二进制FPGA图像文件。这是用于编程FPGA的文件。
MELET说,在AWS上编程FPGA实例有点像将程序放入随机存取内存(RAM):“当机器启动时,它是非常快速的。”Vivado用于将二进制文件复制到FPGA上。
对程序的任何修改都需要修改硬件描述语言,综合二进制图像并重新编程FPGA。虽然可以模拟FPGA以避免编程错误,在MEMet的经验中,这是非常慢的。
但是,他补充说:“在FPGA上,你有无限的粒度。您可以并行处理不同数据的不同指令。“
与GPU方法相比,这是福利,但显然是缺点。从技能角度来看,编程GPU比较成熟。人们了解如何做到它和软件开发工具处于丰富。然而,Melet Notes,“FPGA不太柔韧;编程更为古代“。
这是由于其遗产。过去,硬件工程师使用FPGA来原型集成电路。在将它们融入硅之前,工程师将使用FPGA测试其设计。MELET表示,这意味着编程FPGA更复杂,声称与软件工程相比它是不同的思维。
但是,在与ETH进行的研究中,该团队发现,当算法被编程到FPGA上运行时,最终结果可能比在最先进的GPU上运行相同的程序时更好。
研究涉及使用CPU实例,GPU实例和FPGA实例在AWS上运行决策树算法。该团队发现,在AWS FPGA实例上运行相同的算法,吞吐量的吞吐量比在AWS CPU实例上运行相同的算法时提供了130倍。FPGA还提供了GPU实例的吞吐量的四倍。实际上,与在AWS上使用GPU实例相比,MELET表示可以在FPGA上处理更多数据的过程。
通过在AWS上运行相同的算法,Eth和Amadeus的团队能够展示相当大的节省成本。他们发现,在FPGA实例上运行其决策树算法比在CPU或GPU实例上运行的等效工作负载显着更具成本效益。根据MELET,FPGA实例比在AWS GPU实例上运行等效工作量便宜七倍; CPU版本昂贵28倍。
对于MELET,该研究表明,使用FPGA可以更快地处理AI数据,有效地且以较低的成本,因此是可行的。“我们知道我们可以加速的那种算法,”他补充道。
FPGA代表了一个新的软件工程前沿。第一个挑战将是具有正确技能的人缺乏。
在Amadeus,MELET发现了许多签约,他在学院和大学学习了硬件工程技术。
“很多人都在大学学习五金工程师,所以他们有一定的理解程度,”他说。“他们发现他们直到现在地没有用过这些技能。现在可以在生产中使用用于原型设计集成电路的FPGA的技能。这让他们更新他们的知识。“
这是早期,但Melet预计芯片制造商和初创公司可以开发和改进软件堆栈,工具和库,以使软件工程师更容易编程FPGA。
下一步
了解有关可适应数据中心的未来