集成电路技术分享

 找回密码
 我要注册

QQ登录

只需一步,快速开始

搜索
查看: 14307|回复: 35

微软部署 FPGA 的实践

[复制链接]
小舍YZ 发表于 2017-3-14 10:35:01 | 显示全部楼层 |阅读模式
微软部署 FPGA 的实践

2016 年 9 月,《连线》(Wired)杂志发表了一篇《微软把未来押注在 FPGA 上》的报道,讲述了 Catapult 项目的前世今生。紧接着,Catapult 项目的老大 Doug Burger 在 Ignite 2016 大会上与微软 CEO Satya Nadella 一起做了 FPGA 加速机器翻译的演示。

Ignite 2016 上的演示:每秒 1 Exa-op (10^18) 的机器翻译运算能力

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| 小舍YZ 发表于 2017-3-14 10:36:04 | 显示全部楼层
这里就给大家扒一扒这个每秒 1 Exa-op 的数字是怎么算出来的。每块生产环境中部署的 Stratix V FPGA 有 1.8 T ops 的计算能力,每台服务器上插一块 FPGA。实际使用时,每 8 台服务器为一组,一台服务器作为 FPGA 的控制节点。控制节点的 CPU 也可以做机器翻译的计算,但是每个 CPU 核只能做 0.1 T ops,相比 FPGA 是聊胜于无。非控制节点上的 FPGA 通过网络从其他 FPGA 收发数据,不需要本地 CPU 处理数据平面。

截至演示时,微软 Azure 云有 46 万台服务器部署了 FPGA,必应有 1.5 万台,Exchange 服务有 9.5 万台,共计 57 万台。乘起来得到总的计算能力是 103 万 T ops,也就是 1.03 Exa-op,相当于 10 万块顶级 GPU 计算卡。一块 FPGA(加上板上内存和网络接口等)的功耗大约是 30 W,仅增加了整个服务器功耗的十分之一。
 楼主| 小舍YZ 发表于 2017-3-14 10:36:28 | 显示全部楼层
对于把 FPGA 部署在哪里这个问题,大致经历了三个阶段:

专用的 FPGA 集群,里面插满了 FPGA
每台机器一块 FPGA,采用专用网络连接
每台机器一块 FPGA,放在网卡和交换机之间,共享服务器网络
 楼主| 小舍YZ 发表于 2017-3-14 10:42:29 | 显示全部楼层
第一个阶段是专用集群,里面插满了 FPGA 加速卡,就像是一个 FPGA 组成的超级计算机。下图是最早的 BFB 实验板,一块 PCIe 卡上放了 6 块 FPGA,每台 1U 服务器上又插了 4 块 PCIe 卡。

最早的 BFB 实验板,上面放了 6 块 FPGA

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
 楼主| 小舍YZ 发表于 2017-3-14 10:50:04 | 显示全部楼层
本帖最后由 小舍YZ 于 2017-3-14 11:06 编辑

只要规模足够大,对 FPGA 价格过高的担心将是不必要的。
像超级计算机一样的部署方式,意味着有专门的一个机柜全是上图这种装了 24 块 FPGA 的服务器。这种方式有几个问题:
1.不同机器的 FPGA 之间无法通信,FPGA 所能处理问题的规模受限于单台服务器上 FPGA 的数量;
2.数据中心里的其他机器要把任务集中发到这个机柜,构成了 in-cast,网络延迟很难做到稳定。

3.FPGA 专用机柜构成了单点故障,只要它一坏,谁都别想加速了;
4.装 FPGA 的服务器是定制的,冷却、运维都增加了麻烦。
 楼主| 小舍YZ 发表于 2017-3-14 11:07:10 | 显示全部楼层
本帖最后由 小舍YZ 于 2017-3-14 11:26 编辑

一种不那么激进的方式是,在每个机柜一面部署一台装满 FPGA 的服务器。这避免了上述问题 (2)(3),但 (1)(4) 仍然没有解决。
 楼主| 小舍YZ 发表于 2017-3-14 11:08:18 | 显示全部楼层
本帖最后由 小舍YZ 于 2017-3-14 11:11 编辑

第二个阶段,为了保证数据中心中服务器的同构性(这也是不用 ASIC 的一个重要原因),在每台服务器上插一块 FPGA,FPGA 之间通过专用网络连接。这也是微软在 ISCA'14 上所发表论文采用的部署方式。
 楼主| 小舍YZ 发表于 2017-3-14 11:11:34 | 显示全部楼层
Open Compute Server 在机架中

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
我是一只小小鸟 发表于 2017-3-14 11:11:48 | 显示全部楼层
微软 Azure 云有 46 万台服务器部署了 FPGA
 楼主| 小舍YZ 发表于 2017-3-14 11:13:17 | 显示全部楼层
Open Compute Server 内景。
红框是放 FPGA 的位置

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?我要注册

x
您需要登录后才可以回帖 登录 | 我要注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|小黑屋|手机版|Archiver|集成电路技术分享 ( 京ICP备20003123号-1 )

GMT+8, 2024-5-20 07:39 , Processed in 0.077288 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表