数据中心解耦架构技术路线(上)
受限于服务器内部总线的局部访问和有限容量等特性,各类资源之间只能以一种紧耦合的关系存在,因此传统数据中心往往采购各式各样型号的服务器以满足不同应用的计算、存储需求。
总的来说,以服务器为部署单元的数据中心存在硬件可拓展性不足、资源利用率低、资源使用弹性不足、容错粒度低等局限性,进而无法有效满足以无服务器计算、分布式训练等为代表的新兴应用对存算资源的多样性需求。
资源解耦的数据中心架构,其主要形态是分别构建CPU、GPU、FPGA、RAM、SSD、HDD 等异构存算资源池,并通过网络连接各个硬件资源池,实现资源池之间的互联互通。
上述的资源解耦数据中心架构打破了传统服务器间的物理边界,同时由于网络具有全局访问和高度扩展的能力,因此可摆脱传统以服务器作为部署单元数据中心架构的种种约束。
随着应用对存算资源需求的多样化、网络技术的高速化以及硬件控制的高能化,基于资源解耦架构的数据中心迎来了其发展机遇。
(1)应用需求多样化
在资源的性能方面,不同领域的应用涉及的数据操作类型不同,适宜用特定的计算芯片来处理,如人工智能领域涉及较多的矩阵或向量的乘法和加法,专用性高,对算力消耗过大,不适合用通用 CPU 进行计算。
应用在存算资源的需求量和性能两个方面的多样化需求,促进了数据中心向资源解耦架构演进。
(2)网络连接高速化
CPU、GPU、RAM、SSD 等存算单元的解耦,使得之前耦合在同一服务器中的资源间通信现在必须经由网络,极大地增加了彼此之间的数据交互时延。因此,网络技术决定了上层应用的运行性能,也决定了硬件资源池化的能力范围。
(3)硬件控制高能化
为了解决服务器本地资源利用率低的问题,将单类资源拉远进行池化是目前的主流发展方向之一,吸引了众多厂商地加入,其关键技术在于对远端资源的高效管理与使用。
随着网络与硬件技术地快速发展,资源解耦架构因其资源利用率高、硬件拓展性好等诸多优势,成为了未来数据中心的主要发展方向之一,从资源管理的角度出发,目前的方案主要分为三个技术路线,包括“以 CPU 为中心”、“以内存为中心”和“资源去中心化”。
1、以CPU 为中心
在“以 CPU 为中心”的技术路线下,各种计算和数据处理任务都由 CPU 来完成,而其他组件则为 CPU 提供支持和服务,其也是目前资源耦合服务器的操作系统设计依据。
“以 CPU 为中心+算力卸载”是目前构建资源解耦数据中心的技术路线之一,其中,内存与 CPU 还是紧耦合的,以减少对传统“以 CPU 为中心”操作系统的修改。在此技术路线上,目前只有一些潜在的提案,如 Fungible DPU、Intel IPU、阿里云 CIPU、CXL 等,因为其目前针对的部署场景中仍存在大量的整机服务器。
1.1 Fungible DPU
Fungible F1 硬件架构,主要由数据集群、控制集群和网络单元三个功能部分组成。数据集群总共 8 个,每个集群包含六核四线程,用于运行数据面来加速数据相关操作,如移动、查找、分析、安全等。控制集群是四核两线程,运行 Linux 系统的控制面,主要负责安全认证和不同加密算法的加速,如 RSA、Elliptic Curve 等。
网络单元总共支持 800G 带宽,支持 TCP/UDP、RDMA over TCP 以及TrueFabric 端点的卸载,支持使用 P4 语言对数据包路径进行编程,支持 IEEE1588 精确时间校准协议(Precision Time Protocol,PTP)等。
TrueFabric 是由 Fungible 提出的新型大规模数据中心网络互联标准,通过基于标准 UDP/ IP 以太网的新型 Fabric 控制协议实现的。Fungible F1 DPU 原生支持 TrueFabric,因此 F1 DPU 可以用于大规模 TrueFabric数据中心网络,不同类型的服务器都可以将 Fungible DPU 作为网络接入点。
TrueFabric 可以从使用 100GE 接口的小规模部署的服务器集群扩展到使用 200GE-400GE 接口的数十万台服务器的大规模部署,且可增量地扩展部署而无需关闭网络,以实现真正的始终在线操作。所有部署都使用相同的互连拓扑,小型到中型部署使用单层 Spine 交换机,大型部署使用 Spine 层和 Leaf 层。
上图是基于TrueFabric 和 F1 DPU 的数据中心部署抽象视图,其包含四种服务器类型的多个实例:CPU 服务器、AI/数据分析服务器、SSD 服务器和 HDD 服务器。每个服务器实例包含一个 Fungible DPU,它以固定的带宽(比如 100GE)连接到网络。同时,在大规模部署下,每个 DPU 之间都有一条专用的 100GE 链路。
1.2 Intel IPU
在高度虚拟化的数据中心中,大量的服务器资源被消耗在处理用户应用之外的任务上,例如管理程序、容器引擎、网络和存储功能、安全性以及大量的网络流量。为此,英特尔推出了一款基础设施处理器(Infrastructure Processing Unit,IPU),下图利用基于IPU 的架构,云服务提供商(Cloud Service Provider,CSP)可以将基础设施相关任务从 CPU 卸载到 IPU,将释放的服务器 CPU 周期用于处理任务,以此提高数据中心收益。
通过将基础设施相关任务卸载到IPU,CSP 可以把自己的服务器 CPU 全部都租给客户。目前,Intel推出了两种 IPU 架构,包括基于 FPGA 的 IPU 和基于专用 ASIC 的IPU。
目前,基于 FPGA 的 IPU 有两款,分别是 Oak Springs Canyon 和Arrow Creek。Oak Springs Canyon是基于英特尔的Agilex FPGA 和 Xeon-D CPU 实现,两者协同工作,以减轻 2x 100G的工作负载,并围绕 x86 优化了丰富的软件生态系统。
Oak Springs Canyon 利用了 Intel OpenFPGA 堆栈,这是一个可扩展源可访问的软件和硬件基础设施堆栈,符合 100G CSP 的部署需求。Oak Springs Canyon 还具有一个加固的加密块,允许以线速率性能确保所有基础设施流量、存储和网络的安全。
Arrow Creek是基于Agilex FPGA 和 E810 100G 以太网控制器的加速开发平台。它建立在英特尔 N3000 Pack 的基础上,该 Pack 目前已部署在全球一些通信服务提供商中。Arrow Creek 可提供灵活的加速工作负载,如 Juniper Contrail、OVS 和 SRv6。
Mount Evans 是Intel 第一颗基于ASIC的IPU,通过 PCIe 最高可以链接四个 Xeon 处理器,并将其中的计算负载卸载至 IPU 中进行处理。Mount Evans 具有数据包处理引擎,支持大量现有用例,如 vSwitch 卸载、防火墙和虚拟路由等;通过扩展 Optane NVMe 控制器来模拟 NVMe 设备;采用 Quick Assist 技术,部署高级加密和压缩加速;支持 DPDK、SPDK 等软件环境进行编程和自研的P4 编程语言来配置管线。
1.3 阿里云 CIPU
云基础设施处理器(Cloud Infrastructure Processing Units,CIPU)是阿里巴巴集团提出了一种云端处理器,专门用于连接服务器内硬件和云上虚拟化资源。CIPU 其向下对数据中心的计算、存储、网络资源快速云化并进行硬件加速,向上接入飞天云操作系统。
在计算方面,CIPU 支持协同计算,可将计算任务分配到多个节点上进行处理,以实现更高的计算效率和可靠性。在存储方面,CIPU 提供“飞天分布式存储”技术,可以将数据分布存储在多个节点上,以提高数据的可靠性和可扩展性。在虚拟化方面,CIPU 可以将多个虚拟机运行在同一个物理服务器上,以实现更高的资源利用率,同时支持容器化管理,可以快速部署、管理和扩展各种应用程序。在编程方面,阿里 CIPU 架构提供了一套完整的 AI 框架,包括 TensorFlow、PyTorch 等,以支持各种 AI 应用场景。
1.4 CXL
CXL(Compute Express Link)由英特尔、戴尔和惠普等公司于2020 推出,是一种基于 PCIe 的开放式互联技术标准,其能够让 CPU与 GPU、FPGA 或其他加速器之间实现高速高效的互联,从而满足高性能异构计算的要求,并且其维护 CPU 内存空间和连接设备内存之间的一致性。
CXL 定义了 CXL.io、CXL.cache 和 CXL.mem 三种协议。CXL.io协议是改进的 PCIe 5.0 协议,用于初始化、链接、设备发现和列举以及寄存器访问,同时为 I/O 设备提供了非一致的加载/存储接口。
CXL.cache 协议定义了主机和设备之间的交互,允许连接的 CXL 设备使用请求和响应方法来低时延高效地缓存主机内存。CXL.mem 协议使 CPU 可将外部设备作为主内存来使用,进而实现更大的内存容量。通过这三种协议的组合,可实现不同类型设备的接入,包括高性能计算中的 PGAS NIC 等网卡(Type-1)、带有内存的 GPU、FPGA 等加速器(Type-2)和内存拓展设备(Type-3)。
目前,CXL 标准已经演进至 CXL3.0。相比于 PCIe 和前几代 CXL的传统树形结构,CXL3.0 新增了对二层交换机的支持,实现了 Leaf spine 等非树形网络架构,如图 2-9 所示。该 CXL 网络可支持 4096个节点,并通过基于端口的路由机制实现两两之间的互通。这里,节点可是主机 CPU、CXL 加速器、PCIe 设备或者 GFAM(Global Fabric Attached Memory)设备。GFAM 设备类似于传统的 CXL Type-3 设备,不同之处在于它可以使用基于端口的路由以灵活的方式被多个节点(最多 4095 个)访问。因此,CXL 3.0 不但可以在一个机柜内实现计算资源和存储资源的池化和解耦,而且,可以在多个机柜之间建立更大的资源池。
申明:感谢原创作者的辛勤付出。本号转载的文章均会在文中注明,若遇到版权问题请联系我们处理。
推荐阅读
更多架构相关技术知识总结请参考“架构师全店铺技术资料打包”相关电子书(41本技术资料打包汇总详情可通过“阅读原文”获取)。
1、全店内容持续更新,现下单“架构师技术全店资料打包汇总(全)”一起发送服务器基础知识全解(终极版)和存储系统基础知识全解 pdf及ppt版本,后续可享全店内容更新“免费”赠阅,价格仅收249元(原总价439元)。
2、随着电子书数量增加及内容更新,价格会随之增加,所以现在下单最划算,购买后续可享全店内容更新“免费”赠阅。
温馨提示:
扫描二维码关注公众号,点击阅读原文链接获取“架构师技术全店资料打包汇总(全)”电子书资料详情。
微信扫码关注该文公众号作者