The emergence of symmetric multi-processing (SMP) systems with non-uniform memory access (NUMA) has prompted extensive research on process and data placement to mitigate the performance impact of NUMA on applications. However, existing solutions often overlook the coordination between the CPU scheduler and memory manager, leading to inefficient thread and page table placement. Moreover, replication techniques employed to improve locality suffer from redundant replicas, scalability barriers, and performance degradation due to memory bandwidth and inter-socket interference. This paper presents Phoenix, a novel integrated CPU scheduler and memory manager with an on-demand page table replication mechanism. Phoenix integrates the CPU scheduler and memory management subsystems, enabling coordinated thread and page table placement. By differentiating between data and page table pages, Phoenix enables direct migration or replication of page tables based on application behavior. Additionally, Phoenix employs a memory bandwidth management mechanism to maintain Quality of Service (QoS) while mitigating coherency maintenance overhead. Phoenix is implemented as a loadable kernel module for Linux, ensuring compatibility with legacy applications and ease of deployment. Evaluation on real hardware demonstrates that Phoenix reduces CPU cycles by 2.09x and page-walk cycles by 1.58x compared to state-of-the-art solutions.

Phoenix - A Novel Technique for Performance-Aware Orchestration of Thread and Page Table Placement in NUMA Systems

Antichi G.
2026-01-01

Abstract

The emergence of symmetric multi-processing (SMP) systems with non-uniform memory access (NUMA) has prompted extensive research on process and data placement to mitigate the performance impact of NUMA on applications. However, existing solutions often overlook the coordination between the CPU scheduler and memory manager, leading to inefficient thread and page table placement. Moreover, replication techniques employed to improve locality suffer from redundant replicas, scalability barriers, and performance degradation due to memory bandwidth and inter-socket interference. This paper presents Phoenix, a novel integrated CPU scheduler and memory manager with an on-demand page table replication mechanism. Phoenix integrates the CPU scheduler and memory management subsystems, enabling coordinated thread and page table placement. By differentiating between data and page table pages, Phoenix enables direct migration or replication of page tables based on application behavior. Additionally, Phoenix employs a memory bandwidth management mechanism to maintain Quality of Service (QoS) while mitigating coherency maintenance overhead. Phoenix is implemented as a loadable kernel module for Linux, ensuring compatibility with legacy applications and ease of deployment. Evaluation on real hardware demonstrates that Phoenix reduces CPU cycles by 2.09x and page-walk cycles by 1.58x compared to state-of-the-art solutions.
2026
CPU scheduling
Linux
NUMA
On-demand replication
Page table migration
Page table placement
Thread placement
TLB
File in questo prodotto:
Non ci sono file associati a questo prodotto.

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11311/1321085
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 0
  • ???jsp.display-item.citation.isi??? ND
  • OpenAlex ND
social impact