专栏名称: 企业存储技术
企业存储、服务器、SSD、灾备等领域技术分享,交流 | @唐僧_huangliang (新浪微博 )
目录
相关文章推荐
51好读  ›  专栏  ›  企业存储技术

从Power9互连技术看Intel与IBM的生存之道

企业存储技术  · 公众号  ·  · 2017-11-27 08:00

正文

请到「今天看啥」查看全文


本文内容非商业用途可无需授权转载,请务必注明作者及本微信公众号、微博 @唐僧_huangliang,以便更好地与读者互动。


一周没更新微信公众号,有点快要长草的感觉,正好周末赶上点想写的东西。

下面这张图,来自一篇国外的报道《 IBM Preps Power9 For AI And HPC Launch, Forges BigNUMA Iron 》,简单说就是 16 插槽 Power9 系统的互连设计。

16 路互连拓扑图引发的疑问


首先,每个“横排”的 4 CPU 应该在 一个 CEC 机箱内 ,每个 CPU 都有 3 条蓝色连接通往另外 3 CPU

CEC 之间,每个 CPU 又通过 3 条绿色的 SMP 线缆 “纵向”连接同一列上的 3 CPU ,这样所有 16 个插槽之间最多只需要“ 2 跳”。

这里有朋友提出疑问:“ CEC 内部连接的 16 Gb/s 带宽还不如跨机箱的 25 Gb/s ?”另外如果这些连接只是单 bit 宽度,换算成 GB/s 也太低了点吧?

显然上图交待的还不够全面,或者说 应该写成 GT/s 更准确 。那么,实际带宽到底是多少?


在同一篇报道中,我还看到 Power9 SU ”最大只到 12 核心 。最小内存 1TB 也就是每颗 CPU 都要配 64GB DDR4 内存的频率只有 1.6GHz ,在这些背后又有哪些玄机呢?

为此我翻出自己一年前写的《 初探 OpenPOWER9 服务器设计: x86 不再寂寞 》,找到其中一部分答案。


- “每颗 POWER9 LaGrange CPU 拥有 8 DDR4 内存通道,每通道支持 2 DIMM 插槽(每 CPU 16 DIMM ,总共 32 DIMM );

- CPU 之间通信经过 2 30-bit X-bus ,工作在 16Gbps 的一致性互连;

- POWER9 LaGrange 整合 PCI Gen4 控制器,两颗 CPU 一共引出 84 lane

- 每个 CPU 支持 2 x8 lane NVLink/OpenCAPI@ 25Gbps

不难计算出, POWER 9 每条 X-bus 的带宽为 60GB/s ,两条就是 120GB/s ;每个 x8 lane NVLink/OpenCAPI 的带宽为 25GB/s 。”

可以看到,在一块主板 /CEC 机箱内部 CPU 之间的 16Gbps 互连是 30-bit X-bus ,而跨 CEC SMP 线缆应该走的就是 25Gbps8 信道 CAPI

紧接着问题又来了:上图中 OCP 项目 的设计,每颗 CPU X-bus NVLink/OpenCAPI 都只有 2 Power9 要互连 16 路至少需要 3 组才对啊?

Power9 Scale Out Scale Up 两个版本

然后我又翻出了另一篇新闻:

Power9 2 个版本—— SO (横向扩展)和 SU (纵向堆叠)

首先 Power9 应该有 2 Core SMT8 (同步 8 线程)的“大核”和 SMT4 (同步 4 线程)的“小核”。左边 Scale Out 系列 SMT4 的最大 24 ,对应就是 OCP 使用的 OpenPOWER ;而只有最大 12 SMT8 Scale Up 系列,才能支持到 16 插槽互连

这个原因在 CPU 四周围就可以看出来, Power9 SU 4B SMP (严格说 32bit X-bus ,估计含 2 位校验码)增加到 3 组, 25G I/O 增加到 4 组。 代价是的 8 通道内存控制器没有完全内置 ,而是像以前 Intel Xeon E7 那样通过 DMI 连接外面的控制 / 缓冲芯片。( Power8 以前也这么设计过)

Dell PowerEdge R910 服务器的内存板,当年它支持 4 Intel Xeon 7500 和第一代 Xeon E7 处理器。散热片下有 2 SMB 内存缓冲芯片。

在《 四路 Xeon SP 服务器内存减半: Intel 葫芦里卖的什么药? 》一文中我就提到, Intel 最新一代 Xeon Scalble 平台全部采用 CPU 直连内存的设计,包括支持四路的型号也 不再需要 SMB 内存缓冲芯片。这样做除了成本之外,降低了内存插槽数量和最大容量支持,但也保证了内存频率和性能(特别是延时)。

所以,这大概就是我们看到通过 DMI 桥接内存的 Power9 SU DDR4 内存频率只支持到 1.6GHz 的原因吧。

CAPI NVLink PCIe Gen4 物理连接的复用


这张图反映的是 Power9 25G I/O 用于连接 NVIDIA GPU (也就是 NVLink 工作模式)。前面我们提到每一组 x8 lane 的单向带宽是 25GB/s ,全双工就是 50GB/s ,那么 300GB/s 应该对应 6 NVLink 。这与上文中 Power9 SU 示意图的 4 25G 似乎有些不符,后面我会讲可能的原因。


CAPI 支持模式下, 4 25G I/O 被定义为 OpenCAPI 3.0 (蓝色箭头),提供总共 200GB/s 的双向带宽。而共用部分 PCIeGen4 物理层资源的 CAPI 2.0 (红色箭头,也可以被定义为 NVLink ?),由于速率限制在 16GT/s ,所以 2 x16 lane 或者 4 x8 lane 的最大双向带宽就是 128GB/s

扩展阅读

PCI Express 4.0 规范全文下载, SSD 和网卡何时能受益?

上图中列出 CAPI 连接的设备是 ASIC 或者 FPGA ,而看下面这张图我们就能理解它们也能用于互连 Power9 CPU


首先,刚才我们就提到 3 x16 PCIe Gen4 中的 2 组可以重定义为 CAPI 2.0 。另一方面,我还认为如果 NVLink 的最大带宽要想达到 300GB/s ,很可能也会复用这部分 PCIe 资源。

Intel Xeon 抱定 QPI+PCIe ?与 Power 不同的生存之道

相比传统 PCIe 连接, CAPI 的一大好处是设备( FPGA/ASIC )可以与 CPU 共享内存地址 ,这样也就为用于 CPU 之间的 NUMA 对等连接 建立了基础。当然 PCIe 也支持 DMA ,像 EMC VMAX 高端存储的 Scale-out 架构应该说也相当于实现了 NUMA ,而真正将 PCIe 重定义为 CPU 互连的还有 AMD


上图我在《 AMD EPYC 官方资料乌龙?谈服务器 CPU 互连效率 》一文中曾经列出,不过 AMD 目前的“胶水封装”只是将“重定义的 PCIe ”用于 2 CPU 互连。

话题似乎总要回到目前占据主流市场优势的 Intel 。我们知道 Intel 支持 PCIe Gen4 的进度比 Power9 要晚,而 之前 PCIe 基本一直是 Intel 在主导 IBM 等跟随。对于 NVLink/OpenCAPI GenZ 似乎 Intel 也无动于衷?

扩展阅读

Gen-Z 互连 ( ) Intel 缺席的内存中心架构

Gen-Z 互连 ( ) :第一步 25-100GB/s PCI-SIG 的反应

显然,我认为 Intel 选择这样的策略不是因为技术门槛,只用 3 QPI 互连 CPU 是他们觉得 4 路以上服务器的市场太小 。而 IBM Power 的目标则不同——用户群则较小且针对性强一些(同时保持较高的利润率来支撑研发), 部分高端关键业务和 HPC 用户更需要在单机上实现 Scale Up 的高性能“胖节点”

同时, Intel 也不是自己一个人在战斗,还有些服务器厂商提供了第三方 Node Controller 芯片来支持更大规模( 8 路及以上)的 Xeon 服务器。比如下图就是我在《 Bull 8-16 路服务器:为何基于双 CPU 模块互连? 》一文中介绍过的架构。


至于 协处理器的连接 / 互连 ,大家可能知道当前 Xeon Phi 的命运, Intel 未来重点在 FPGA 还是“ GPU ”我也不确定,所以现在不太好评论和推测。

距离 Power9 正式发布的日子应该越来越近了,到时候我哪里写的不对请大家在下面留言:)

:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。 进一步交流 技术 可以 加我的 QQ/ 微信: 490834312 。如果您想在这个公众号上分享自己的技术干货,也欢迎联系我:)


尊重知识,转载时请保留全文,并包括本行及如下二维码。感谢您的阅读和支持!《企业存储技术》微信公众号: HL_Storage


长按二维码可直接识别关注

历史文章汇总 http://www.10tiao.com/author/index?authorId=691

点击下方“阅读原文”,查看更多历史文章
↓↓↓






请到「今天看啥」查看全文