[2025. 05. 02 대비]
[문제 정의]
The presence of unmovable pages in pageblocks prevents page migration, degrading the performance of tiered memory systems and constraining the hot-remove capability of CXL devices.
[문제 배경]
Unmovable Pages in Local Memory (Fast Tier)
- Tiered memory system에서 hot data의 working set size가 fast tier memory의 capacity를 초과할 경우, 반복되는 swapping으로 memory bandwidth는 최대 95%까지 under-utilization 될 수 있습니다 [Xiang et al., OSDI 2024], [Yan et al., ASPLOS 2019].
- 이에 migration 효율을 높이기 위한 다양한 solution이 논의되었고, 확장된 page size를 활용하는 Transparent Huge Page (THP)를 기반으로 한 tiered memory system design이 제안되었습니다. 이는 migration에서 기존 Linux baseline 대비 2.8배 향상된 throughput을 보였습니다 [Yan et al., ASPLOS 2019].
- 그러나 pageblock에 포함된 unmovable page는 fragmentation을 유발하여 연속된 메모리 공간을 요구하는 huge page allocation을 방해합니다. 이로 인해 migration failure 및 compaction overhead가 발생할 수 있고, page size가 확장될수록 unmovable page의 영향은 증가합니다. 관련 연구에선 runtime이 지속된 system 환경에서 huge page 단위 (2 MB) 전체 pageblock 중 약 70%가 최소한 하나 이상의 unmovable page (4 KB)를 포함하는 상황이 지적되었습니다 [Panwar et al., ASPLOS 2018].
- 따라서 huge page 기반의 tiered memory system에서는 fast tier에 분포된 unmovable page의 존재가 demotion overhead의 요인으로 작용할 수 있으며, 이는 전체 memory system의 성능 저하로 이어질 수 있다고 판단하였습니다.
Unmovable Pages in CXL Memory (Slow Tier)
- 정밀한 page movability 관리에 대한 논의는 성능 뿐 아니라 기능적 측면에서도 유효합니다. CXL 2.0 specification은 기존의 legacy DIMM 타입과 달리 runtime중에 memory topology를 동적으로 변경할 수 있는 hot-plug 기능을 명시합니다.
- 이는 memory 교체 및 resizing으로 인한 server downtime을 제거할 수 있는 기술적 기반이자, CXL memory에 완화된 reliability 기준을 적용할 수 있는 근거가 됩니다. 따라서 데이터센터 운영 간 활용할 수 있는 cost-effective한 특성이 될 것으로 생각합니다.
- Unmovable 속성은 일반적으로 kernel 공간에서의 memory 할당으로 발생합니다. Memory pressure 상황에서 kernel memory 할당이 remote node로 fallback될 경우, CXL memory boundary 내 unmovable page가 포함될 가능성이 있다고 판단하였습니다. 이는 device 전체 memory block에 대한 offlining이 요구되는 과정에서 remove failure의 직접적인 원인으로 작용하며 결과적으로 CXL device의 실용성을 제한하는 요소가 될 수 있습니다 [Intel, CXL Hot Plug, 2024], [kernel-doc, Admin Guide for Hot Plug, 2024].
현재는 전체 메모리 공간 내에서 unmovable page의 실질적인 분포를 추정할 수 있도록, 커널 공간에서의 메모리 할당 방식과 unmovable 속성이 부여되는 메커니즘에 대해 고민하고 있습니다.
연구실의 기존 구성원들이 보여준 뛰어난 결과들을 보며, 제가 많이 부족하다는 점을 절감한 계기가 되기도 했습니다. 어려움을 알면서도 행동으로 극복하는 용기로 발전하는 모습을 보일 수 있도록 노력하겠습니다.
F/B: 김경빈 박재용 김종민 최상운