🤖 AI Summary
To address inefficient page migration and OS-dependent blind scheduling in NUMA and hierarchical memory systems, this paper proposes a workload-aware cooperative page migration mechanism. The method introduces a lightweight kernel extension—system call `move_pages2`—that integrates query locality modeling and migration cost estimation directly into kernel-level migration decisions, enabling tight DBMS–OS co-awareness. It jointly leverages YCSB workload characterization, NUMA-aware memory access profiling, and B+ tree index optimization. Experimental evaluation under representative YCSB workloads demonstrates a 1.84× improvement in query throughput and a 2.09× increase in page migration throughput over the native `move_pages` interface. These results establish a new, efficient, and deployable paradigm for page migration in NUMA-aware main-memory database systems.
📝 Abstract
Modern NUMA servers and tiered memory systems have significantly improved the DBMS performance, and are poised to deliver further improvements in the future. However, realizing this potential depends on the DBMS's ability to efficiently migrate pages among different NUMA nodes, and/or memory chips as the workload evolves. Modern DBMSs blindly offload the migration procedure to the operating system without accounting for the workload and its migration characteristics. In this paper, we propose a custom system call move_pages2 as an alternate to Linux's own move_pages system call. Experiments on a B$^+$-Tree for a YCSB-like workload show that the proposed move_pages2 custom system call outperforms the native Linux system call by up to 1.84$ imes$ and 2.09$ imes$, in terms of query and page migration throughputs, respectively.