0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

CXL是什么?为什么它是各种应用程序的游戏规则改变者?

半导体产业纵横 来源:半导体产业纵横 2023-06-25 10:21 次阅读

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

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

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

什么是 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 版本的功能比较。

37732ed2-11a8-11ee-962d-dac502259ad0.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、ASICFPGA)。要访问主机 CPU 和设备内存,设备可以使用 CXL.io、CXL.cache 和 CXL.mem 协议。它们可以支持连贯和非连贯事务。

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

基础设施用例

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

1.云计算

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

2.数据中心存储

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

3. 边缘计算

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

4. 网络

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

应用用例

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

1.AI/ML加速

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

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

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

3.高性能计算

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

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

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

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




审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19160

    浏览量

    229115
  • 电源管理
    +关注

    关注

    115

    文章

    6154

    浏览量

    144231
  • 加速器
    +关注

    关注

    2

    文章

    795

    浏览量

    37758
  • PCIe接口
    +关注

    关注

    0

    文章

    120

    浏览量

    9675

原文标题:CXL是什么?它是如何工作的?

文章出处:【微信号:ICViews,微信公众号:半导体产业纵横】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    内存扩展CXL加速发展,繁荣AI存储

    电子发烧友网报道(文/黄晶晶)CXL即Compute Express Link,是一种全新的互连协议,为各种处理器包括CPU、GPU、FPGA、加速器和存储设备提供统一接口标准,可以有效解决内存墙
    的头像 发表于 08-18 00:02 4748次阅读
    内存扩展<b class='flag-5'>CXL</b>加速发展,繁荣AI存储

    苹果正开发与App Store相似的新游戏应用程序

    10月23日讯,据最新媒体报道,苹果正加大对游戏领域的投入,并着手开发一款与App Store相似的新游戏应用程序。   这款新应用将整合App Store与Game Center的功能,设计有多个选项卡,包括“立即玩”(
    的头像 发表于 10-23 13:40 137次阅读

    低功耗,高效率:干簧开关如何改变游戏规则

    广泛应用于各行各业的干簧开关,如何实现低功耗?
    的头像 发表于 09-19 14:10 2399次阅读
    低功耗,高效率:干簧开关如何<b class='flag-5'>改变</b><b class='flag-5'>游戏规则</b>?

    所有的labview应用程序的三要素是什么

    /连线(Icon/Connector)。 1. 前面板(Front Panel) 前面板是LabVIEW应用程序的用户界面,它允许用户与程序交互。前面板的设计对于用户体验至关重要,因为它是用户与
    的头像 发表于 09-04 16:08 271次阅读

    基于 FPGA 的飞机大战游戏系统设计

    和结束游戏四个选项。可以通过按键上下移动光标,选择不同功能。 游戏逻辑控制:该模块主要进行了游戏规则的设计。 显示模块:主要负责文字显示和飞机图标、子弹显示。 (2) HDMI 显示驱动模块:驱动
    发表于 07-24 20:03

    Atlassian Intelligence工具集解析:从自然语言到JQL处理,从虚拟代理到AI摘要等

    每个团队的潜力: ☑  将AI集成至生产力应用程序 ☑  整个组织采用AI以提高其成就 ☑  改变游戏规则的创新
    的头像 发表于 07-22 10:49 259次阅读

    应用程序中的服务器错误怎么解决?

    在使用应用程序时,可能会遇到服务器错误的问题。这种错误通常会导致应用程序无法正常运行 ,给用户带来不便。下面将介绍应用程序中的服务器错误及其解决方法,帮助您快速解决这一问题。
    的头像 发表于 03-12 15:13 5753次阅读

    颠覆传统制造:PLC物联网如何彻底改变工厂设备数据采集的游戏规则

    颠覆传统制造:PLC物联网如何彻底改变工厂设备数据采集的游戏规则? 随着科技的不断发展,物联网技术正逐渐渗透到各个领域,其中PLC物联网技术在工厂设备数据采集方面发挥着越来越重要的作用。PLC物联网
    的头像 发表于 01-23 17:41 402次阅读
    颠覆传统制造:PLC物联网如何彻底<b class='flag-5'>改变</b>工厂设备数据采集的<b class='flag-5'>游戏规则</b>?

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

    CXL的目标:解决CPU和设备、设备和设备之间的内存鸿沟。服务器有巨大的内存池和数量庞大的基于PCIe运算加速器,每个上面都有很大的内存。内存的分割已经造成巨大的浪费、不便和性能下降。CXL就是为解决这个问题而诞生。
    的头像 发表于 01-11 16:53 2065次阅读
    什么是<b class='flag-5'>CXL</b>技术?<b class='flag-5'>CXL</b>的三种模式、类型、应用

    一种动态防御策略——移动目标防御(MTD)

    的网络攻击。文章速览:1、高级规避攻击2、用移动目标防御对抗欺骗常见做法操作系统和应用程序才是真正的战场打破游戏规则一、高级规避攻击高级规避攻击技术可以反复修改网络攻
    的头像 发表于 01-04 08:04 1441次阅读
    一种动态防御策略——移动目标防御(MTD)

    改变未来游戏规则,英特尔展示GaN新技术

    那么,为何要将驱动器与功率器件进行整合呢? 答案其实很简单,这种整合方式能够带来更加紧凑高效的解决方案,大大降低了寄生参数,从而使得半导体产业得以借助硅晶体管实现更为出色的供电处理能力。
    的头像 发表于 12-19 10:40 781次阅读

    改变游戏规则:银键合丝在电子制造中的崛起

    银键合丝作为一种先进的微电子封装材料,已经在各种高性能电子产品中得到广泛应用。银键合丝以其优异的电导性和热导性,成为了一种替代传统金键合丝的有效选择。然而,银键合丝的力学性能对于键合质量具有决定性的影响,这一点在微电子封装领域受到了广泛关注。以下内容将深入探讨银键合丝的力学性能及其对键合质量的影响。
    的头像 发表于 11-30 10:59 626次阅读
    <b class='flag-5'>改变</b><b class='flag-5'>游戏规则</b>:银键合丝在电子制造中的崛起

    什么是CXL?一文了解高速互联技术CXL

    Compute Express Link(CXL)作为一种先进的互连技术,在当今高性能计算领域引起了广泛关注
    的头像 发表于 11-29 15:26 5849次阅读
    什么是<b class='flag-5'>CXL</b>?一文了解高速互联技术<b class='flag-5'>CXL</b>

    开发java应用程序的基本步骤是

    ava是一种面向对象的编程语言,广泛用于开发各种类型的应用程序。在开发Java应用程序时,有一些基本步骤需要遵循,以确保应用程序的正确性和可靠性。 1.确定需求:这是开发任何
    的头像 发表于 11-28 16:52 1524次阅读

    如何把c语言源程序变成应用程序

    将C语言源程序转变为应用程序可以分为以下几个步骤:编写源代码、编译、链接和运行。在这篇文章中,我将详细介绍这些步骤以及相关的工具和技术。 第一步是编写源代码。在C语言中,源代码是以文本形式编写
    的头像 发表于 11-26 09:04 3355次阅读