微软在过去几年当中一直在尝试利用FPGA提升必应与Azure的性能及效率表现。但从明年开始,微软计划将此类FPGA处理能力交付至开发人员手上,意味着大家将能够借此运行自己的任务,包括深层神经网络(简称DNN)等密集型人工智能工作负载。
在今年春季召开的Build开发者大会上,Azure业务CTO Mark Russinovich指出,微软的愿景目标在于通过Azure云交付“硬件微服务”。Russinovich向与会者们表示,一旦微软公司成功解决了安全性以及其它部分现有问题,“我们将真正拥有一套可全面进行配置的云体系。”
Russinovich进一步补充称,“这正是智能云的核心,同时也标志着FPGA能力的介入将实现人工智能民主化。”
所谓FPGA,是指一类在制造完成之后可进行定制化配置的芯片。微软公司研究人员们在过去十多年中一直致力于探索FPGA领域。
最近,微软已经将FPGA添加至其自有数据中心内的全部Azure服务器 ,同时亦着手利用FPGA支持部分必应索引服务器,并将此作为其Catapult项目中的重要组成部分。微软Azure加速网络服务目前已经面向Windows发布通用版,Linux则迎来预览版,其在底层架构内同样采用FPGA芯片。
今年5月,Russinovich曾介绍称微软还没有最终敲定何时向外部客户提供硬件微服务与FPGA云处理资源。但就在本周,微软公司的多位官员指出,这项工作将在2018年之内完成。
微软公司的硬件微服务以英特尔FGPA作为实现基础(英特尔曾于2015年收购FPGA制造商Altera公司)。这些芯片配合微软方面的框架,将能够带来与大数据工作负载高度匹配的速度、效率与延迟优化效果。
微软方面还通过Brainwave项目专门针对DDN开展了一系列工作。该公司曾在Ignite 2016大会上公开展示其BrainWave,即利用FPGA运行大量语言翻译任务。
微软公司官员们计划在近期于雷蒙德召开的Faculty Research峰会上致力于全面讨论人工智能相关议题,不过根据更新后的议程,BrainWave似乎将被排除在外。
BrainWave是一套深度学习平台,根据微软公司于2016年公布的可配置云计划所言,其运行在基于FPGA的硬件微服务之上。该次演示提到跨越数据中心甚至整个互联网提供“硬件加速即服务”方案。BrainWave项目能够根据需求在大量FPGA之间进行神经网络模型分布。
当然,微软公司绝非唯一有意在自家云数据中心内采用FPGA芯片的企业; Amazon与谷歌也都在运用定制化芯片支持各类AI类任务。
Amazon方面已经开始为编程用FPGA EC2 F1实例提供Xilinx FPGA,同时亦提供与FPGA配套的硬件开发工具包。谷歌方面则一直在尝试利用TensorFlow(其机器学习软件库)训练深度学习模型,同时亦开发出自己的Tensor处理器(Tensor Processing Unit,简称TPU)。