IB反攻CPU:ARM SoC能否逆袭NVMe闪存阵列?

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

Intel__从HPC__互连领域向InfiniBand__出击,而Mellanox__在SoC__上的布局能延伸其生命力吗?

在《_Xeon Phi x200要自我互连,CPU靠边站_》一文中,我提到了Intel通过该产品线在HPC技术方面的2个调整——提供不再依赖CPU独立运行的Xeon Phi,还有集成Omni-Path互连的版本。

如上图,代号KNL的Intel Xeon Phi x200不只集成了大容量DDR4内存控制器,还支持2种网络扩展选项。包括PCIe口连接常规网卡,或者在处理器上集成Omni-Path控制器。

其实让“协处理器”自我启动的方式,可能不是Intel最先想出来的。我记得最早在GPU高性能计算领域取得成功的NVIDIA,也曾提出过集成少量ARM核心用于OS boot,但最终估计因为相关生态而不够成熟而未能实际应用。从另一个角度来说,x86的ALU在当时还是非常重要的存在(毕竟Power贵很多),不过现在ARM已经开始进军服务器了。

上一篇里提到了Omni-Path对InfiniBand的威胁,其实Xeon Phi x200的集成度和独立性也对NVIDIA形成更大的挑战,因为现在GPU还需要CPU和网卡的配合才能组成系统。而当看到下面这款SoC时,我意识到当年的规划以另一种方式实现了。

BlueFieldSoC:ARM + IB/以太网+ PCIe Switch

有趣的是,这个BlueField SoC架构恰好来自最大的InfiniBand网络厂商Mellanox,而我是从一篇翻译自国外的新闻《_Mellanox__公司计划利用系统芯片提升存储产品速度_》(http://stor-age.zdnet.com.cn/…)中了解到它。大家都知道高速网络对高性能计算的意义,而IB最初却是因为存储而出现的。

在BlueField中我看到包括主要的几大模块:

1、 多核ARM A72。这部分与Mellanox在去年宣布以8.11亿美元收购EzChip有关,而BlueField架构正是以EzChip公司的Tilera多核心芯片技术作为主干。

2、 DDR4内存控制器。资料里写“多通道”——每通道支持2个DIMM最多256GB,而图中画了2个单通道内存控制器。那么我理解如果用BlueField+GPU组建HPC系统的话,ARM内存带宽对GPU的帮助与Xeon Phix200直连6通道DDR4还是有差距的。

3、 PCIe Switch。我还不确定这个交换模块的总lane数量,但用途却很明显——在下面要介绍到的存储应用中连接NVMe SSD。PCIe Gen4规范正式版本还未发布,相关产品应该都处于测试状态。下图中的25GT/s是怎么回事?有知道答案的朋友可以在本文底部留言告诉我。

4、 上面架构图左边的“ConnectX-5网络控制器子系统”,一看就是Mellanox自家的东西。它可以支持两个100GbE以太网或者EDR InfiniBand端口,并向下兼容低速网络标准。这个规格PCIe Gen3 x16的带宽无法充分满足,所以ConnectX-5也支持PCIe Gen4。从图示来看可以这个“高速网卡”可以连接到PCIe Switch或者直连ARM Core,具体细节有待进一步确认。

集成了这么多东西,我想到一个问题就是该SoC的功耗。听说在接受收购之前EzChip就已经公布过一款百核ARM芯片,但如果BlueField包含的ARM核心比较多的话,一些低功耗嵌入式应用场合可能就会受限了?

三大应用领域:存储控制器、网络和GPU集群

在BlueField SoC的目标应用中,资料里把存储排在了最前面。说实话网络和HPC领域我比较外行,感兴趣的朋友可以自行了解,下面重点谈存储。上图列出了几点:

-NVMe SSD全闪存阵列(AFAs)

-NVMe over Fabric (NVMf) 存储控制器

-服务器缓存

-非聚合机架存储

-横向扩展直连存储(DAS)

-存储RAID

稍后就围绕这几个方向,大致回顾下我之前写过的一些相关内容,看能否从中获得基于BlueField存储形态的借鉴。在这之前我想先看下另外两款当红的存储控制器SoC/RoC芯片。

上面是Intel Xeon D SoC的架构图,其特点就是集成度较高,除了CPU之外,包含了PCH南桥的功能,还有双万兆以太网MAC,最新一代产品16核才45W。相比之下,ARM的32核性能也未见得赶上这个,再加上制造工艺的因素,BlueField估计达不到Intel的能耗比。

Xeon D比较适合中低端阵列控制器,因为它不支持双路,内存和PCIe通道数也都无法与XeonE5相比,扩展性受限。在去年底的《_存储峰会随笔:写缓存掉电保护那点事_》一文中,我曾介绍过使用XeonD的台湾和国产存储,当时应该还是8核。

BlueField相对Xeon D的优势之处也比较明显,那就是集成的Mellanox ConnectX-5高速IB/以太网控制器和PCIe Switch,几乎就是为NVMe over Fabric存储控制器量身定制的。

这个Dell MD3200i控制器的架构图我在多年前就曾引用过。它的主控是“800MHz Power PC”的Avago/LSI21166Gb/s SAS RoC,相当于除了CPU还集成16端口SAS控制器。为了扩展连接硬盘/SSD,不加一颗SAS Expander还是不够的,另外LSI RoC也没有集成网卡,8个PCIe lane不够所以还使用了一颗PCIe Switch。

我不确定千兆iSCSI接口的MD3200i是否还在销售,该系列包括另外2款6Gb/s SAS的MD32x0、8Gb/s FC的MD36x0f型号。同属于LSI 2600(NetApp E)血统的还有IBM DS3500,以及国内外若干OEM产品。如果您遇到新一代的Dell MD3400/3800,它们应该是使用了LSI 12Gb/s SAS RoC。

LSI RoC也是用于入门级阵列控制器,比早期的Xeon还能少配一颗南桥和SAS控制器,而与Xeon D SoC相比优势可能只剩下便宜了吧?

NVMe闪存阵列:Apeiron、E8和Mangstor

第一款事实上的NVMe over Fabric(当时标准还没达到1.0版)闪存系统EMC DSSD,使用FPGA和PCIe主机连接达到高性能,其软件特点我在《_解析DSSD对象机制:内存APIAtomic读写再现_》中有过介绍。

在《_NVMe over Ethernet:又一家FPGA互连闪存的Apeiron_》,我介绍了另外一款使用FPGA的NVMe闪存系统。严格地说,它应该是将NVMe SSD转接以太网的JBOD,自身并没有冗余和HA设计。Apeiron除了将FPGA用于服务器端专用HBA网卡之外,控制器里也有3颗。那么Mellanox BlueField有点像把它们集成到一起,当然FPGA里应该没有SoC那么多的ARM计算资源和内存控制器。

Apeiron使用了私有的NoE协议,在以太网帧中以最小的开销来传输PCIe TLP;而BlueField的灵活性要更大,除了RDMA传输之外,它甚至还能在ARM上运行DPDK。

在《_IDF16:NVMe Over Fabric、SPDK和双控存储元年》一文中,我提到了E8 Storage这家NVMe双控阵列,资料显示它使用了IntelXeon处理器。在经历了DataCore“伪双副本”事件(详见:《检讨&真相:SPC-1 500万IOPS报告存重要漏洞_》)之后,我对各种高IOPS都有点半信半疑的态度,还好上面这个330万是4KB随机读,平均每控制器165万而且不需要缓存镜像I/O。

尽管E8的资料里还写了1000万4KB随机读IOPS,但我真的有点怀疑测试方法了,毕竟它应该没有像DSSD那样重新设计整条I/O路径?

上图是另外一家NVMe over Fabric存储厂商Mangstor,他们网站资料里的NX3260看来还是一款单控产品,硬件上使用了戴尔服务器、AIC形态的PCIe闪存卡。按照300/225万4KB读/写IOPS的参数,估计是没有做RAID保护,平均每块卡的写IOPS还是让我有点吃惊了。考虑到他们没提是随机I/O,也许先在DRAM中合并再写入Flash吧。

BlueField前景:Xeon之外的第二选择?

在本文开头提到的那篇报道中,提到了“_希捷公司的__DotHill__与 ClusterStor__阵列将使用这项技术,Nexsan__、戴尔Compellent__阵列、HDS VSP__等方案也很可能做出同样的选择_…”。对戴尔SC(Compellent)了解的朋友,应该知道该产品家族一直使用Xeon处理器。但如果允许我不负责任随便聊几句,Dell或者说合并后的Dell EMC,未来会不会使用这种高速ARM SoC设计一款产品呢?毕竟国内某司的新一代低端阵列已经把CPU换成了ARM,而戴尔PS(EqualLogic)在此之前有多代产品坚持使用非x86控制器的历史。

上面的控制器照片,引用自我在4年多之前撰写的《_EQL__动力揭秘:PS6100/4100__控制器设计分析》_(http://stor-age.zdnet.com.cn/…)一文。其中红圈标出的那颗芯片就是它的CPU——NetLogic XLS616。

NetLogic XLS616处理器应该更多是针对网络应用设计(嵌入式Xeon其实也可以),从架构图看出它包含了4个64-bit MIPS CPU核心,在EqualLogic控制器中的角色应该是核心处理器+网络控制器(MAC,媒介访问控制层)。

至于RISC阵营后来的发展许多朋友应该都有了解,MIPS不太理想,而ARM如日中天。再加上多核ARM在服务器和HPC领域(都是Linux系统)的前景,我估计NVMe闪存系统控制器仍然会由Intel主导,而像BlueField这样的ARM SoC从中分一杯羹也是有可能的。

推荐阅读

  • IDF16:NVMe Over Fabric、SPDK和双控存储元年
  • 学习笔记 – 无交换机实现集群网络互联

本文转载自企业存储技术微信公众号,[原文链接点这里]。
注:本文只代表作者个人观点,与任何组织机构无关,如有错误和不足之处欢迎在留言中批评指正。 进一步交流技术可以加我的微信/QQ:490834312。
尊重知识,转载时请保留全文,并包括本行及如下二维码。感谢您的阅读和支持!《企业存储技术》微信公众号:HL_Storage,也欢迎关注企业存储技术极术专栏,定期更新。