CXL是什么?它是如何工作的?

CXL技术分析 CXL,全称Compute Express Link,该技术由Intel牵头开发用于高性能计算、数据中心,主要解决处理器、加速器和内存之间的cache一致性问题,可消除CPU、专用加速器的计算密集型工作负载的传输瓶颈,显著提升系统性能。 阅读详情
关注、星标公众号,精彩内容每日送达
来源:网络素材

3d2fe3864d7ac362bb3ede46f7a1c4ac.jpeg

本文由半导体产业纵横(ID:ICVIEWS)编译自spiceworks

高带宽互连彻底改变了以数据为中心的计算。

7c45c6c71b6d75baa81e550b3c783291.png

CXL(Compute Express Link)可以提高数据中心内存的性能、可扩展性和灵活性。MemVerge 的 Steve Scargall 解释了 CXL 是什么、它是如何工作的,以及为什么它是各种应用程序的游戏规则改变者,例如 AI/ML、HPC、数据库和分析。他还强调了采用 CXL 标准化的云计算和数据中心基础设施的一些行业趋势。

CXL是一种新兴的开放式行业标准互连,彻底改变了以数据为中心的计算。凭借其在 CPU 和设备(例如加速器、内存扩展和持久内存设备)之间的高带宽和低延迟缓存一致性连接,CXL 有可能重塑数据中心内存的性能、可扩展性和灵活性。通过解决 AI/ML 应用程序面临的常见内存挑战并启用新的高性能内存架构,CXL 有望成为以数据为中心的计算的下一代互连。

07333f1914c8562704cb00708776ec0b.png 什么是 CXL?

CXL 是一种行业采用的开放标准,为处理器、内存扩展和加速器提供高速缓存一致性互连。它基于 PCI Express (PCIe) 规范物理和电气接口,但为 AI/ML 应用程序提供了额外的功能和优势。CXL 可实现 CPU 内存空间与附加设备(例如加速器、GPU 或内存设备)上的内存之间的内存一致性。这意味着 CPU 和设备可以共享相同的内存视图并访问它,而无需任何软件干预或同步。CXL 还通过允许 CPU 以低延迟和高带宽访问连接设备上更大的内存池来扩展内存。这可以增加 AI/ML 应用程序的内存容量和性能。

规范的三个主要版本描述了 CXL 标准。未来计划更多主要版本。现有主要版本的更新也将根据需要公布。每个主要版本都为以前的版本添加了新功能。

CXL 1.0 :CXL 的第一个版本,于 2019 年 3 月发布,基于 PCIe 5.0。它允许主机 CPU 使用缓存一致性协议 (CXL.cache) 访问加速器设备上的共享内存,并使用内存语义 (CXL.mem) 启用内存扩展。 

CXL 2.0 :CXL 的第二个版本,于 2020 年 11 月发布,基于 PCIe 5.0。它支持 CXL 交换,将多个 CXL 设备连接到一个主机处理器或将每个设备连接到多个主机处理器。它还实现了设备完整性和数据加密功能。 

CXL 3.0 :CXL 的第三个版本,于 2022 年 8 月发布,基于 PCIe 6.0。它支持比 CXL 2.0 更高的带宽和更低的延迟,并增加了设备热插拔、电源管理和错误处理等新功能。

图 1 显示了每个主要 CXL 版本的功能比较。

cb71e6bc6e8bf25baa1df8c7c0e08eda.png图 1:CXL 功能比较

CXL 规范描述了三种允许设备相互通信的协议。

  • CXL.io:PCIe 5.0 协议的增强版本,可用于初始化、链接、设备发现、枚举和寄存器访问。它为 I/O 设备提供非一致性加载/存储接口。

  • CXL.cache :一种缓存一致性协议,它定义了主机和设备之间的交互,允许连接的 CXL 设备使用请求和响应方法以极低的延迟有效地缓存主机内存。

  • CXL.mem :一种内存协议,它使用加载和存储命令为主机处理器提供对连接设备内存的访问,其中主机 CPU 充当主设备,CXL 设备充当从属设备。它可以支持易失性和持久性内存架构。

至少,所有 CXL 设备都必须使用 CXL.io,但可以选择支持 CXL.cache 或 CXL.mem,或同时支持两者。

这些组合派生出三种设备类型:

类型 1 :没有本地内存的专用加速器(例如智能 NIC)。设备依赖于使用 CXL.io 和 CXL.cache 协议对主机 CPU 内存进行一致访问。它们可以扩展 PCIe 协议功能(例如原子操作),并且可能需要实现自定义排序模型。 

类型 2 :具有高性能本地内存(GDDR 或 HBM)的通用加速器(GPU、ASIC 或 FPGA)。要访问主机 CPU 和设备内存,设备可以使用 CXL.io、CXL.cache 和 CXL.mem 协议。它们可以支持连贯和非连贯事务。 

类型 3 :没有本地缓存的内存扩展板和持久内存设备。设备可以使用 CXL.io 和 CXL.mem 协议通过加载和存储命令为主机 CPU 提供对内存的访问。它们可以支持易失性和持久性内存架构。

d7bf02b84cff245d5f8b6932384a9d34.png 基础设施用例

CXL 是云和本地数据中心基础设施的游戏规则改变者,预计将很快得到广泛采用和标准化,包括:

1.云计算

CXL 可以使云服务提供商通过利用支持 CXL 的设备(例如加速器、内存扩展设备和持久性内存设备)为其客户提供更快、更高效的服务。云服务提供商每年在未使用或未充分利用的主内存(称为“搁浅内存”)上花费数十亿美元。应用程序可以更优化地使用集群中的计算节点按需访问的 CXL 设备池,从而优化数据中心资源。

2.数据中心存储 

与云环境类似,虽然规模小得多,但 CXL 设备可以使数据中心运营商构建可持续发展的环境,并通过使用支持 CXL 的设备显著降低其基础设施成本和使用率。CXL 可以通过启用对内存驻留数据的低延迟和高带宽访问来提高块存储性能和可靠性。

3. 边缘计算

CXL 可以使边缘计算平台通过使用支持 CXL 的设备(例如加速器、智能 NIC、内存扩展设备和持久内存设备)来处理不断增加的数据量和复杂性。在将数据发送到主数据中心之前在边缘处理数据可以减少流量并提高边缘计算性能、效率和安全性。

4. 网络 

CXL 可以使网络平台通过使用支持 CXL 的网络设备(例如智能 NIC、FPGA 和 ASIC)来处理不断增加的网络流量和复杂性。CXL 可以通过实现对设备内存的一致和非一致访问以及支持原子操作和自定义排序模型来提高网络性能、可扩展性和功能。

31a5b7f2b98cbfcb9f832f61c5094bed.png 应用用例

应用程序将从支持 CXL 的基础架构中受益匪浅。一些主要的兴趣领域包括:

1.AI/ML加速

CXL 可以为 GPU、ASIC 或 FPGA 等 AI/ML 加速器实现更快、更高效的 CPU 到设备和 CPU 到内存的连接。CXL 可以支持异构设备之间的一致性和非一致性事务、内存扩展和资源共享。允许应用程序处理更大的数据集,同时减少主机之间传输的数据量,从而缩短获得结果的时间。

2.大规模内存、分析和图形数据库

CXL 允许数据库访问无限的低延迟和高带宽内存,从而使系统能够在更大的数据池上工作。

3.高性能计算

CXL 可以通过利用支持 CXL 的加速器和内存池来提高高性能计算的性能、可扩展性和灵活性。CXL 3.0 引入了共享内存功能,允许许多计算节点就地访问内存驻留数据,而无需在运行前将其复制到本地,然后再将结果复制回来。

e9e660d57ca9c2976102fbedf1f2508e.png 使用 CXL 的行业标准互连加速以数据为中心的计算

CXL 是一种新兴的开放式行业标准互连,可在 CPU 和设备(如加速器、内存扩展和持久内存设备)之间提供高带宽和低延迟缓存一致性连接。CXL 可以提高数据中心资源的性能、可扩展性和灵活性。CXL 可以帮助解决 AI/ML 应用程序面临的一些常见内存挑战,例如内存不足错误、溢出到磁盘以及数据/计算偏差。

CXL 还可以支持需要大规模和高性能内存架构的新应用程序和用例,例如内存数据库、实时分析和高性能计算。由英特尔、AMD、Arm、Astera Labs、三星、美光、X-Conn 等众多行业领导者和创新者组成的不断壮大的生态系统支持 CXL。作为以数据为中心的计算的下一代互连,CXL 有望在不久的将来得到广泛接受和标准化。

*声明:本文系原作者创作。文章内容系其个人观点,我方转载仅为分享与讨论,不代表我方赞成或认同,如有异议,请联系后台。

69c544b1e1f8e25b951461220b92c293.png

本文内容仅代表作者观点,不代表平台观点。

如有任何异议,欢迎联系我们。

如有侵权,请联系删除。

CXL: Compute Express Link 学习笔记 Compute Express Link (CXL) 是一种创新的高速互连标准,专为数据中心和高性能计算环境设计。CXL致力于解决处理器、加速器和内存之间的互联挑战,优化资源共享和数据一致性。 阅读详情

相关推荐

行业观察 | 内存接口芯片和CXL协议

本文对内存接口芯片的概念和CXL协议进行不完全总结。

MissMango0820的博客 1931

CXL 概述

CXL2.0 简介,对CXL简单介绍

这个地瓜真是甜啊 2万+

深入解析CXL协议链路层:CXL.io、CXL.mem与CXL.cache的协同工作机制

本文深入解析了CXL协议链路层中CXL.io、CXL.mem与CXL.cache的协同工作机制。CXL.io作为兼容PCIe的基础链路,负责设备管理与配置;而CXL.mem与CXL.cache共享高性能链路层,通过Flit单元实现低延迟内存访问与缓存一致性操作。三者协同工作,共同构建了高效、可扩展的内存互连方案,以应对AI、高性能计算等场景下的数据密集型需求。

weixin_29219189的博客 462

什么是CXL(Compute Express Link)技术?一文读懂CXL

CXL (Compute Express Link) 技术是一种新型的高速互联技术,旨在提供更高的数据吞吐量和更低的延迟,以满足现代计算和存储系统的需求。它最初由英特尔、AMD和其他公司联合推出,并得到了包括谷歌、微软等公司在内的大量支持。CXL的目标:解决CPU和设备、设备和设备之间的内存鸿沟。服务器有巨大的内存池和数量庞大的基于PCIe运算加速器,每个上面都有很大的内存。内存的分割已经造成巨大的浪费、不便和性能下降。CXL就是为解决这个问题而诞生。

Lion_Long的博客 1万+

新型存储介质应用:CXL内存扩展技术与AI工作负载适配

Compute Express Link(CXL)作为一种新兴的高速互连协议,为解决这一瓶颈提供了全新的解决方案。通过内存池化和扩展技术,CXL使得AI工作负载能够突破单个服务器的物理内存限制,以接近原生内存的性能访问远超本地内存容量的存储空间。本文将深入探讨CXL内存扩展技术在AI工作负载中的应用,重点分析统一内存空间构建、缓存一致性协议以及大模型KV缓存优化等关键技术。

AladdinEdu,你的AI学习实践工作坊。让想法落地,让研究加速。助力高校AI人才成长,点亮创新未来。 1922

CXL技术介绍-CXL是怎样发展出来的?又是如何工作的?

CXL(Compute Express Link)是一种基于PCIe的高速互连技术,旨在解决传统PCIe在带宽、延迟和扩展性方面的限制。它由英特尔、AMD等公司组成的CXL联盟开发,经历了1.0/1.1、2.0到3.0的演进。CXL 3.0基于PCIe 6.0,传输速率提升至64GT/s,支持256GB/s带宽,同时保持低延迟和向后兼容性。该技术通过统一内存空间实现处理器与加速器的高效协作,适用于数据中心和高性能计算场景,显著提升数据传输效率和资源共享能力。

weixin_44902358的博客 224

深入解析CXL协议中的链路层:CXL.io、CXL.mem与CXL.cache的协同工作机制

本文深入解析了CXL协议链路层如何协同CXL.io、CXL.mem与CXL.cache三种协议。CXL.io复用成熟的PCIe链路层,负责设备管理与配置;CXL.mem与CXL.cache则共享一套基于Flit的高性能专用链路层,通过精密的打包与调度规则,在物理链路上实现高效、低延迟的内存访问与缓存一致性操作。

weixin_29204121的博客 311

【人工智能-AI训练场景】CXL内存池与GPU显存的协同工作

CXL协议的核心特性:低延迟、高带宽、内存一致性CXL内存池的硬件实现:支持动态扩展和共享内存资源与传统内存架构(如NUMA)的对比。

u013701886的博客 1032

Kioxia将展出适用于AI工作负载、支持CXL™的KIOXIA XL1系列内存扩展模块

Kioxia致力于通过提供产品、服务和系统来为客户创造选择,并为社会创造基于存储技术的价值,从而提升世界的“记忆”。Kioxia创新的3D闪存技术BiCS FLASH™正在塑造存储技术在高密度应用领域(包括高级智能手机、PC、SSD、汽车系统、数据中心和生成式AI系统)的未来。KIOXIA XL1系列内存扩展模块将低延迟、高性能的XL-FLASH™与CXL™接口相结合,通过将访问频率较低的数据存放在该模块上,提升了DRAM的利用效率。此外,该产品在设计研发阶段便旨在支持日益增长的内存密集型AI应用。

美国商业资讯的博客 188

大数据存储:Intel--CXL加速存储堆栈服务工作

1.高性能存储构建的挑战与需求:高性能存储系统需要满足可扩展性、去中心化和高安全性的需求,但现有加速器卸载技术在面对不断增长的性能要求时已显得不足,尤其在存储和计算资源整合上面临挑战。2.DPU与CXL的创新应用:利用DPU作为基础设施的核心处理单元可以增强存储节点的计算能力,同时,通过引入CXL互连标准实现CPU和DPU间的高效数据交换,解决PCIe带来的协同处理限制,从而提高系统整体性能。3.软件栈优化与云服务架构:通过SPDK软件栈优化存储操作,减少数据移动,提高I/O性能。

hzp666的博客 336

CXL论文阅读笔记整理(持续更新)

阅读CXL相关论文,整理其目标、挑战、创新点、局限性

重新开始写博客 6980

3.6【A】cxl.cache,mem(1,1)

协议依赖图用于定义不同协议通道之间的和,目标是确保系统在无循环依赖(Acyclic Dependencies)的前提下实现。主机厂商自定义的**,未在CXL标准中强制规定。主机厂商可根据自身硬件架构(如CPU类型、缓存层级、互联拓扑)设计私有协议,用于管理内部缓存一致性、内存访问优化等。

m0_73553411的博客 862

什么是CXL技术?CXL的三种模式、类型、应用

点击蓝字关注我们关注、星标公众号,精彩内容每日送达 来源:网络素材CXL (Compute Express Link) 技术是一种新型的高速互联技术,旨在提供更高的数据吞吐量和更低的延迟,以满足现代计算和存储系统的需求。它最初由英特尔、AMD和其他公司联合推出,并得到了包括谷歌、微软等公司在内的大量支持。一、CXL介绍CXL的目标:解决CPU和设备、设备和设备之间的内存鸿沟。服务器有巨大的内存池和...

HackEle的博客 3406

一文告诉你CXL是什么,有什么新的机会 (上)

一文告诉你CXL是什么,有什么新的机会

weixin_42471446的博客 3280

CXL概述(二)

CXL1.0 2.0. 3.0 差异对比,应用场景。CXL 提供内存一致性和内存语义(load/store),其带宽可与 PCIe 带宽相匹配,同时延迟大大低于 PCIe。

这个地瓜真是甜啊 6208

CXL协议

ARB/MUX 在来自 CXL 链路层的 CXL.io 和 CXL.cache/mem 的请求之间进行仲裁,跟据仲裁结果对数据进行多路复用,该结果使用加权轮询仲裁和主机设置的权重。CXL.mem是访问内存的,使用加载和存储命令为处理器提供了对设备附加存储器的访问,其中处理器作为主设备,CXL 设备作为从设备,能够支持易失性和持久性的存储器架构。CXL.cache是访问缓存的,定义了处理器与设备之间的交互,允许连接的 CXL 设备使用请求和响应方法,以极低的延迟高效地缓存处理器内存。

m0_70772379的博客 2949

一文读懂CXL协议

CXL全称为Compute Express Link,作为一种全新的开放式互联技术标准,其能够让CPU与GPU、FPGA或其他加速器之间实现高速高效的互联,从而满足高性能异构计算的要求,并且其维护CPU内存空间和连接设备内存之间的一致性。

mochenbaobei的博客 7850
上一篇: 中国独角兽排行榜2023
下一篇: Vivado HLS 能否取代HDL开发
Hack电子
博客等级 码龄5年 878粉丝 29原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值