smdk v1.3
v1.3: CXL-Swap / CXL Composability / Userspace CLI Tool
This update reflects the voices of Industry partners who cooperate with us.
1. CXL Swap
- In addition to the usecase that uses CXL device as System RAM interface,
SMDK v1.3 allows another usecase that uses CXL device as Swap interface. CXL Swap implements Linux frontswap and is delivered as kernel module likewise zSwap. - However, it does not perform (de)compression while page swapping, thus, leads to CPU saving and latency QoS on swap handling. We believe it is more close to the philosophy of CXL memory expansion.
2. CXL Composability
- Composability is also a primary matter of CXL philosophy. By adopting previous Linux patches and algorithms, we enhanced compatibility and coverage of Linux VMM belows to better support of CXL composability.
- Page migration - manage CXL DRAM as movable page attribute
- Memory node on/offline - allow memory-node on/offline function for CXL DRAM
- Fragmentation avoidance - apply the algorithm for avoiding DRAM fragmentation issue to CXL DRAM
3. CXL-CLI
- CXL Swap control commands
enable_cxlswap, disable_cxlswap, flush_cxlswap, check_cxlswap
- CXL Device performance reporter
get-latency-matrix
4. Documentation
- Update and Refactoring user guide documents
SMDK Architecture - https://github.com/OpenMPDK/SMDK/wiki/2.-SMDK-Architecture
Installation Guide - https://github.com/OpenMPDK/SMDK/wiki/3.-Installation
Kernel Guide - https://github.com/OpenMPDK/SMDK/wiki/4.-Kernel
Plugin Guide - https://github.com/OpenMPDK/SMDK/wiki/5.-Plugin
Full Changelog: smdk_v1.2.2...smdk_v1.3