CXL_Offlining에 대한 고찰

[Problem?]

Inefficient huge page migration in CXL memory systems restricts the runtime adaptability of dynamic memory topology, limiting the cost-effective operation of data centers.

[background? situation? motivation?]

기존의 legacy memory device 대비 CXL memory가 갖는 구분되는 특성 중 하나는 Hot-Plug 기능의 지원 여부입니다.

기존 DIMM 단위의 memory offline은 다음과 같은 이유로 현실적으로 어려웠습니다

이러한 기술적 제약으로 인해, 기존 메모리 시스템에서 dimm level의 offline 및 교체는 실질적으로 적용되기 어려웠고, Data Center 환경에서는 memory 교체는 server downtime을 유발할 수 밖에 없습니다. 이러한 memory 교체 cost는 곧 industry에서 매우 엄격한 memory reliability를 요구할 수 밖에 없는 현실적 배경이 됩니다.

이에 반해, Compute Express Link (CXL) memory는 Device-type memory로써, Hot-Add/Remove가 용이한 구조를 갖고, CXL 2.0 Spec.에서 Hot-Plug 기능이 공식적으로 구체화되었습니다. 이는 service의 중단 없이 memory device를 교체할 수 있음을 의미하며 다음과 같은 효과가 있을 것으로 예상됩니다.

이러한 관점에서 CXL 기반 Hot-Plug 기능은 향후 데이터센터에서 활용될 수 있는 유망한 cost-effective한 new feature가 될 것으로 판단합니다.

컴퓨터 아키텍처 측면에서 보면, 시스템 Runtime 중 Memory Topology가 동적으로 빈번하게 변경될 수 있음을 의미하며, 여러 Host machine이 Device 메모리 Resource를 공유하는 Memory Pool 환경에서는 변경의 빈도가 더욱 높아질 것으로 판단됩니다. 그러나 현재 CXL 기술은 상용화 초기 단계로, 기존 Linux 커널이 제공하는 메모리 오프라인 기능은 이러한 변화를 충분히 반영하지 못하고 있을 가능성이 클 것으로 예상되며 다음과 같은 요소에서 기인한 한계가 있을 것으로 보고 있습니다.