cxl
TLDR
List CXL memory devices
SYNOPSIS
cxl command [options] [device]
DESCRIPTION
cxl is the management utility for Compute Express Link (CXL) devices, a new interconnect standard for attaching memory and accelerators to CPUs. It manages CXL memory expanders, configures memory regions, and monitors device health.
CXL enables disaggregated memory architectures where memory can be pooled and dynamically allocated to different hosts. The cxl tool configures how this memory appears to the operating system through regions and decoders.
Common operations include listing available CXL devices, checking health status, creating memory regions that can be used by the system, and managing the device lifecycle.
PARAMETERS
list
List CXL devices, regions, or decoders.enable-memdev device
Enable a memory device.disable-memdev device
Disable a memory device.create-region
Create a memory region.destroy-region region
Destroy a memory region.enable-region region
Enable a memory region.disable-region region
Disable a memory region.-m, --memdev device
Specify memory device.-d, --decoder decoder
Specify decoder.-R, --regions
List regions.-H, --health
Include health information.-v, --verbose
Increase verbosity (repeat for more).
CAVEATS
Requires kernel 5.15+ with CXL support enabled. Hardware must support CXL (Intel 4th gen Xeon, AMD EPYC, etc.). Configuration changes may require system restart. CXL is evolving technology; some features depend on specific kernel versions.
HISTORY
CXL was developed by the CXL Consortium, founded in 2019 by Intel, with specifications contributed by major hardware vendors. The Linux cxl tool was developed as part of the ndctl project by Dan Williams at Intel. CXL 1.1 support appeared in Linux 5.12 (2021), with ongoing development adding features for newer CXL specifications (2.0, 3.0).


