13.5. 管理 CXL 内存设备
CXL v2 内存热插拔允许您在 Red Hat Enterprise Linux 环境中动态添加和删除内存资源,从而支持数据中心灵活性。使用 CXL 设备和外部交换机,当您的系统支持 CXL v2 时,您可以创建超出传统硬件限制的共享内存池。
CXL v2 引入了增强的内存管理和热插拔功能,并扩展了对裸机系统的支持。这些增强功能有助于降低删除手动内存节点的风险,从而提高了系统的稳定性和可靠性。
在配置 CXL v2 内存热插拔前,请验证您的系统固件和硬件是否与 CXL v2 兼容。
13.5.1. CXL 内存设备状态级别 复制链接链接已复制到粘贴板!
计算 Express Link (CXL)内存设备转换了多个状态,以响应特定的系统事件。术语 "Level 0" through "Level 4" 描述在热插拔操作期间 CXL 内存设备的状态转换。
在 RHEL 中,CXL 内存以名为内存区域的单元进行管理。内存区域可以对应单个 CXL 设备,或通过创建过程中指定 interleave 来跨越多个设备。纳入内存区域的内存必须在操作系统可用前"在线"显示。
在几个场景中,您必须手动修改或配置内存区域。例如,在热添加事件中,驱动程序会检测硬件连接,但不会自动配置内存区域或使内存在线。同样,当希望在多个 CXL 设备间交错内存时,您必须手动创建内存区域,以提高性能,因为驱动程序无法自动决定您想要的 interleave 拓扑。
- 0 级
CXL 驱动程序不会检测 CXL 设备。
在这个阶段,该设备不被内核识别。
- 1 级
CXL 驱动程序检测到硬件并建立连接。
该设备可以在系统引导中识别,或引发中断来热添加 CXL 设备。这个级别表示设备已连接但未配置。
- 2 级
为 CXL 设备创建内存区域。
为设备定义并分配了特定的内存区域,但尚未启用。
- 3 级
内存区域已启用,但还没有为操作系统在线。
CXL 内存区域处于活动状态,但内存块还没有转换为内核使用的"在线"状态。
- 级别 4
OS 可以使用热添加的 CXL 内存设备。
此时,内存块在线并可用于操作系统。如果内存块离线,设备会返回第 3 级。