深度学习算法有望在FPGA和超级计算机上运行

机器学习在过去的几年里取得了很大的进步,在很大程度上归功于计算密集型工作负载扩展新技术的发展。NSF最新的资助项目似乎暗示我们看到的可能只是冰山一角,因为研究人员试图将类似深度学习的技术扩展到更多的计算机和新型的处理器上。

由纽约州立大学石溪分校团队实施的一个特别有趣项目,该项目旨在证明FPGA(现场可编程门阵列)优于GPU,他们发现深度学习算法在FPGA上能够更快、更有效地运行,这突破了当前传统的认识。

根据项目概要:

研究人员预计在GPU上算法的最慢部分,运行在FPGA上将实现明显的加速,同时,在GPU上算法最快的部分在FPGA上将有类似的运行性能,但是功耗会极低。

实际上,除了不同于GPU,在硬件上运行这些模型想法并不新奇,例如,IBM最近凭借一个新的brain-inspired芯片轰动一时,它声称可以完美支持神经网络和其他cognitive-inspired工作负载。微软在今年7月演示了它的Adam项目,这个项目是重新修改了一个流行的深度学习技术使其在通用英特尔 CPU处理器上运行。

由于其可定制的特点,FPGA有着独特的优势,今年6月,微软解释它如何通过卸载某些进程部分到FPGA来加快Bing搜索。当月晚些时候,在Gigaom的Structure大会上,英特尔宣布即将推出的混合芯片架构将FPGA在CPU共置在一起(实际上它们会共享内存),这主要针对专业大数据负载与微软必应这样的案例。

然而,FPGA对于深度学习模型来说并不是唯一的、潜在的基础架构选择。NSF还资助纽约大学的研究人员,让他们通过基于以太网远程直接内存访问技术来测试深度学习算法以及其他工作负载,这在超级计算机上广泛使用,但现在要将它带到企业系统,RDMA连接器通过直接发送消息到内存,避免了CPU、交换机和其他组件给进程带来的延迟,从而加快计算机之间传输数据速度。

说到超级计算机,另一个新的NSF资助项目,由机器学习专家斯坦福大学(百度和Coursera)的Andrew Ng和超级计算机专家田纳西大学的Jack Dongarra以及印第安纳大学的Geoffrey Fox领导,旨在使深度学习模型利用Python可编程,并且将它带到超级计算机和扩展云系统。据悉,这个得到了NSF将近100万美元的资助的项目被称为Rapid Python Deep Learning Infrastructure。

RaPyDLI将被构建成一套开源的模块,可以从Python用户界面访问,但是可以放心地在最大规模超级计算机或云的C / C++或Java环境中通过互动分析和可视化执行。RaPyDLI将支持GPU加速器和英特尔Phi协处理器以及广泛的存储技术包括Files、NoSQL、HDFS和数据库。

目前做的所有工作都是让深入学习算法更容易并且改善它们的性能,这三个项目只是一小部分,但是如果这些技术能够被科技巨头用到商业领域,或者进入研究中心以及国家实验室利用计算机解决真正的复杂问题将是非常有益的。