无意中发现了一款比较有特色的硬件,在网上查阅资料,费了好大劲才算基本搞清楚。说高密度吧?计算可能不是最强;说高可扩展性吧?网络I/O带宽并不惊人。然而我却在其中看到了RSD(Rack Scale Design)资源池化的影子,也算是补充了自己知识的空白吧。
Artesyn MaxCore Hyperscale平台
这款设备的名字叫做MaxCore Hyperscale(超大规模平台)——适用于DellDSS 9000的机架式高密度计算和媒体平台,也可用于OCP环境。它来自Artesyn(雅特生),一家专业做嵌入式计算和嵌入式电源的公司,之前我也不熟悉。
具体点说,就是可用于DSS 9000整机架服务器中的一个半宽子机箱(DSS 9050 sub-chassis)里,支持最多288个Xeon D CPU内核(全宽2个节点就是576 Core)、100Gb输入输出,还支持各种用于媒体转码和优化的PCIe加速卡。内建PCI ExpressFabric架构,完整的SDN/NFV 数据包转发和虚拟化支持。
单论计算密度的话,以上图中的2U PowerEdge FX2平台为例,配置8个FC430双路Xeon E5服务器节点,虽然也能支持288个核心,但E5的主频要比Xeon D高不少。如果只是纯CPU计算的HPC集群,我想MaxCore Hyperscale估计不划算,这种不太标准化的设备销量有限估计不便宜。显然它还有别的长处。
Dell DSS 9000机架,我在《RSA整机架服务器DSS 9000现身数博会》一文中写过实物解析
上图就是两台MaxCore Hyperscale并排放在一起,我感觉应该是3U的高度。下面来看看它的规格概要:
MaxCore Hyperscale
设计用于戴尔 DSS 9000 机架架构
灵活的可配置型 PCIe 交换,半标准宽度托架可容纳多达九 (9) 个 PCIe 卡
每插槽最高 150W
2x 10G 接口,支持 SR-IOV,所有插槽中的所有卡之间均可共用
4x 2.5”驱动盘位和 14x M.2 SSD 插槽
SharpServer 英特尔 Xeon D 微服务器卡
SharpSwitch 双 100G 智能 NIC,具备vSwitch 卸荷功能
可选配媒体转码加速器
首先,在一个半宽机箱中可以插9块PCIe卡(不是普通的卡哦),6个PCIe Gen3x16 和3个Gen3 x8之间通过PCIe交换互连。2个10Gb以太网口,通过SR-IOV在所有插槽的PCIe卡之间共用,这只是基本网络。
在2个热插拔托架上的4个2.5英寸SATA驱动器位,用于机箱中PCIe插槽1和9的主机;最多14个M.2 2280(80mm尺寸)SSD插槽直接访问PCIe插槽2-8的主机。有点意思吧:)
3种“PCIe插卡”:SharpServer是Intel Xeon DCPU服务器子卡;SharpSwitch不是个普通的双100Gb端口网卡,从名字可以看出它带有交换功能;另外,还可以选配一种SharpStreamer媒体转码加速器。
双Xeon D微服务器计算子卡
不难看出2个Xeon D SoC和对应内存的分布位置。连接“底板”的金手指,左边是一个PCIe x16,右边的不太标准,具体用途后面我再解释。
SharpServer™ PCIE-7410
MaxCore™ 服务器卡
双 Intel® Xeon® D 处理器卡,适用于高密度微服务器应用
标准高度、标准长度的 PCI Express 外形尺寸,单插槽
一个或两个 8 核英特尔 Xeon D-1541 处理器
• 每个处理器最大支持 64GB DDR4 内存
• 多达 4 个 PCI Express Gen3 x4 接口
• 每个处理器均支持本地闪存大容量存储
• 2x 1Gbps 以太网,可选配内部以太网基础架构
每个处理器配备 USB、重置按钮和 COM端口
软件支持包括:
• Linux KVM
• Intel® DPDK
• 多主机 PCI Express 输入/输出虚拟化
上面引用的中文资料可能有点老,写的还是8核Xeon D处理器,要满配2颗16核CPU才能达到前面所说的半宽机箱288核密度。Xeon D的好处是SoC不用加PCH芯片,但不支持多处理器,所以一块SharpServer PCIE-7410上就是2个节点,前面提到的M.2 SSD正好每节点1个。
4个PCIe Gen3 x4应该是合并在物理x16的金手指上,如果SharpServer插在x16插槽里,每个Xeon DCPU分到2个PCIe x4;要是在x8插槽里工作,每个CPU就只有1个PCIe x4了。
暂时先介绍这么多,互连啥的后面还会讲。
PCIeto双100Gb智能交换网卡
这块卡上可以看出2颗不同的处理器,还有金属挡片上2个QSFP高速网络接口。
SharpSwitch™ PCIE-9205
MaxCore 智能网络接口卡
适用于高带宽应用的高性能 输入/输出卡
标准高度、标准长度的 PCI Express 外形尺寸,单插槽
Intel® 以太网多主机控制器 FM10840,配备:
• 2x QSFP28 实现最高 200Gbps 的输入/输出带宽
• PCIe 3x16 ~ 100GE 聚合系统带宽
软件支持包括:
• L2/3 交换
• 负载均衡
• 虚拟交换机
• 通过 Open vSwitch 和 OVSDB 实现OpenFlow
• 基于 LBaaS 代理和 DPDK 的 OpenStack
软件
Intel® Xeon® D-1541 处理器
• 最大 64GB DDR4
• PCI Express Gen3 x8 接口,连接到FM10840 交换机
SharpSwitch PCIE-9205的作用是SharpServer之间的高速网络交换,并对外提供2个100Gb以太网口,也会占用1个PCIe插槽。它的主芯片缺不是常规网卡用的,下面先看看“以太网多主机控制器FM10840”的特点:
Intel Ethernet Multi-host Controller FM10000家族我多少有点印象,在前几年的IDF上好像介绍过。用途大概和RSD(Rack Scale Design)整机架资源池化的互连有关。
在SharpSwitch卡上似乎还不能充分发挥FM10840的规格。我理解在MaxCore Hyperscale机箱里它应该插在PCIe插槽1和9,并且是PCIe x16规格。提供4个PCIeendpoint以太网控制器连接到SharpServer(最多64个VF),另外2个PCIe endpoints面向卡上本地的一颗Xeon-D CPU——用于MaxCore系统管理。
对内一共PCIe Gen3 x16提供相当于100GbE的12.5GB/s单向带宽应该ok,对外可以是2个100Gb以太网,也可以向下兼容40Gb,或者通过转接线分出8个25Gb / 8个10Gb端口。
本文中介绍的Artesyn就是将Intel FM10000用于多主机模块化服务器平台。
网络和SDN我比较外行,OpenStack也了解有限。上图一方面给大家参考,另一方面也是想说明“基于PCIe的网络通信”,PEX-VF估计是用于虚拟机的网卡吧。
利用Intel GT4e集成显卡转码/编码视频
左上方的短卡带有1颗Xeon E3-1578Lv5 CPU,长卡则是2颗
SharpStreamer™ Pro PCIE-7210
高密度视频处理加速器
H.264/AVC 与 H.265/HEVC 转码和编码、VDI 应用和图像处理设备等应用的理想选择
标准高度、半标准长度或标准长度的 PCI Express 外形尺寸
每张卡多达 4 路 HD HEVC 转码流
每张卡多达两 (2) 路 4KP30 HEVC 编码流
1x 或 2x IntelXeonE3-1578L v5 GT4e 可扩展视频处理引擎
每个 CPU 配备 PCI Express Gen3 x8 接口
看完了服务器和网络子卡,再来看看SharpStreamer Pro PCIE-7210,它的主要用途就是视频转码和编码,和我之前在《一块卡上有3颗Xeon:这是干啥用的?》一文里介绍的IntelVisual Compute Accelerator(VCA)是干同样事情的。
PCIE-7210上使用的CPU已经是新一代的Skylake——Xeon E3-1578L v5,而其视频处理引擎是靠集成的GT4e显卡,Intel Iris ProGraphics P580是VCA上面GT3e的下一代产品,同样128MB eDRAM。它们能够提供的功能,是普通集成显卡和《当Xeon核显遇上3ds Max、Solidworks:T30评测之二》中介绍过的入门级工作站显卡HD Graphic P530所不具备的。
具体到性能指标,每张卡可以实时转码4路HD HEVC高清视频流,或者编码2路4KP30 HEVC。注意这里可是实时处理哦,4K分辨率逐行、每秒30帧。
这个架构图帮我了解很多。与Xeon D SoC不同,为了Xeon E3需要搭配PCH,此外一块SharpStreamer上的2套子系统还各自添加Intel 82599网卡实现内部通信。这里可以看到两段金手指的定义了——First Edge是来自两颗CPU的PCIe x8;Second Edge则包括了PCH引出的4个SATA、2个USB、PCIe 3.0 x1和LPC。
SharpStreamer加速卡是做为一个特殊的PCIe设备,连接到SharpServer子卡。
关于视频转码应用方案,我借用了MaxCore平台中另一款3000机型的资料。
MaxCore架构与硅光互连的思考
全宽机箱的MaxCore 3000支持15个PCIe子卡模块
由于MaxCore Hyperscale的资料有限,我再引用一些MaxCore 3000的资料做为辅助说明。
在MaxCore 3000的底板上,中间两颗最大的芯片就是PCIe Switch。
MaxCore 3000有上面这种配置方式:11个PCIe 7410计算子卡+4个RRC(SharpSwitch PCIE-9205)网络子卡。SharpSwitch经由PCI ExpressFabric交换架构将网卡映射给SharpServer,可以SR-IOV的形式“直通”给虚拟机。
上图引用自OCP资料中的Intel草案文档《DesignGuide for Photonic Architecture》,也就是有段宣传比较多的“硅光互连”(我曾经把它和Omni-Path搞混过)。其中的Switch应该就有Intel FM10000系列,种种因素导致它未能在RSD整机架服务器中普及,而这次却出现在了MaxCore机箱内部。
我还班门弄斧写过两篇《IDF随笔:RSA|天蝎存储池化的理想与现实》、《ODCC随笔:整机柜资源池化需要高可用吗?》,朋友们给出的结论是一个PCIe Fabric覆盖的故障域内允许单点故障。不过,在机架范围内,PCIe用于箱外连接其数量和长度还是可能影响可用性。相比之下,Artesyn MaxCore的机箱内PCI ExpressFabric我觉得倒是一种不错的应用。
主要针对互联网/云服务商的Dell DSS9000样机
最后,再简单聊下MaxCore Hyperscale与Dell之间的关系,会不会是某一家大客户在DSS 9000整机架服务器上产生了相关需求,从而促成该产品出现呢?