一句话:提出 Mitosis,在 NUMA 大内存机器上透明复制与迁移页表,降低远程页表遍历开销。
多插槽机器可拥有 1–100TB 物理内存,但应用访问内存时面临 NUMA 非均匀带宽与延迟。以往研究关注数据分配与放置,却忽视了页表应放在哪个插槽。本文提出 Mitosis,通过透明复制与迁移页表来缓解页表遍历的 NUMA 效应,无需修改应用。它包含高效启用复制/迁移的机制,以及控制这些操作的有效策略。作者在 Linux 中实现 Mitosis 并在真实硬件上评估。结果表明,跨插槽复制页表可为大规模多插槽工作负载带来最高 1.34 倍性能提升;当 OS 跨插槽迁移进程时,跨插槽页表迁移可带来最高 3.24 倍提升。
Multi-socket machines with 1-100 TBs of physical memory are becoming prevalent. Applications running on such multi-socket machines suffer non-uniform bandwidth and latency when accessing physical memory. Decades of research have focused on data allocation and placement policies in NUMA settings, but there have been no studies on the question of how to place page-tables amongst sockets. We make the case for explicit page-table allocation policies and show that page-table placement is becoming crucial to overall performance. We propose Mitosis to mitigate NUMA effects on page-table walks by transparently replicating and migrating page-tables across sockets without application changes. This reduces the frequency of accesses to remote NUMA nodes when performing page-table walks. Mitosis uses two components: (i) a mechanism to efficiently enable and (ii) policies to effectively control -- page-table replication and migration. We implement Mitosis in Linux and evaluate its benefits on real hardware. Mitosis improves performance for large-scale multi-socket workloads by up to 1.34x by replicating page-tables across sockets. Moreover, it improves performance by up to 3.24x in cases when the OS migrates a process across sockets by enabling cross-socket page-table migration.
@inproceedings{paperbot5404,
title = {Mitosis: Transparently Self-Replicating Page-Tables for Large-Memory Machines},
author = {Reto Achermann and Ashish Panwar and Abhishek Bhattacharjee and Timothy Roscoe and Jayneel Gandhi},
booktitle = {ASPLOS},
year = {2020},
doi = {10.1145/3373376.3378468}
}