Persistent AutoNUMA
Abstract
Persistent Memory (PM) is an emerging memory technology that aims to eliminate the gap between main memory and stable storage. In a conventional Linux system, AutoNUMA is responsible for moving pages between memory regions and processes between hosts to optimize memory latency. For systems with heterogeneous memory types, e.g. DRAM and PM, AutoNUMA provides no support for automatic page balancing. The main reason is that moving pages in a persistent setting requires more attention, as the memory content might become inconsistent in the event of system crashes. This short paper presents our working-in-progress state in adapting AutoNUMA to a persistent environment. We discuss the current status of automatic NUMA balancing in Linux systems and explore some initial ideas to deal with the problem. The main insight behind our approach is to leverage techniques based on transaction processing and journaling.References
Baldassin, A., Barreto, J. a., Castro, D., and Romano, P. (2021). Persistent memory: A survey of programming support and implementations. ACM Comput. Surv., 54(7).
Castro, D., Baldassin, A., Barreto, J., and Romano, P. (2021). SPHT: Scalable persistent hardware transactions. In 19th USENIX Conference on File and Storage Technologies (FAST 21), pages 155–169. USENIX Association.
Corbet, J. (2012). AutoNUMA: the other approach to numa scheduling. Accessed on April 09, 2025.
Das Sharma, D., Blankenship, R., and Berger, D. (2024). An introduction to the compute express link (CXL) interconnect. ACM Comput. Surv., 56(11).
de Oliveira, M. I. (2016). PTB: An integrated page, thread and bandwidth allocation approach for numa architectures. Master’s thesis, Unicamp.
Islam, A. A. R. and Dai, D. (2023). DGAP: Efficient dynamic graph analysis on persistent memory. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, SC ’23, New York, NY, USA. Association for Computing Machinery.
Lameter, C. (2013). NUMA (non-uniform memory access): An overview: Numa becomes more common because memory controllers get close to execution units on microprocessors. Queue, 11(7):40–51.
Lee, S.-H. (2016). Technology scaling challenges and opportunities of memory devices. In 2016 IEEE International Electron Devices Meeting (IEDM), pages 1.1.1–1.1.8.
Maruf, H. A., Wang, H., Dhanotia, A., Weiner, J., Agarwal, N., Bhattacharya, P., Petersen, C., Chowdhury, M., Kanaujia, S., and Chauhan, P. (2023). TPP: Transparent page placement for cxl-enabled tiered-memory. In Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3, ASPLOS 2023, page 742–755, New York, NY, USA. Association for Computing Machinery.
Mellor, C. (2024). Numemory reinvents optane storage-class memory. Accessed on April 09, 2025.
Póvoas, J. d. L. A. (2024). Optimizing OS Support for Dynamic Page Placement in Heterogeneous Memory Architectures. Master’s thesis, Universidade de Lisboa.
Torvalds, L. (2025). torvalds/linux: Linux kernel source tree. Accessed on April 09, 2025.
Tyson, M. (2019). Intel Optane DC persistent memory launched. Accessed on April 09, 2025.
Wang, R., He, S., Zong, W., Li, Y., and Xu, Y. (2023). XPGraph: Xpline-friendly persistent memory graph stores for large-scale evolving graphs. In Proceedings of the 55th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO ’22, page 1308–1325. IEEE Press.
Castro, D., Baldassin, A., Barreto, J., and Romano, P. (2021). SPHT: Scalable persistent hardware transactions. In 19th USENIX Conference on File and Storage Technologies (FAST 21), pages 155–169. USENIX Association.
Corbet, J. (2012). AutoNUMA: the other approach to numa scheduling. Accessed on April 09, 2025.
Das Sharma, D., Blankenship, R., and Berger, D. (2024). An introduction to the compute express link (CXL) interconnect. ACM Comput. Surv., 56(11).
de Oliveira, M. I. (2016). PTB: An integrated page, thread and bandwidth allocation approach for numa architectures. Master’s thesis, Unicamp.
Islam, A. A. R. and Dai, D. (2023). DGAP: Efficient dynamic graph analysis on persistent memory. In Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, SC ’23, New York, NY, USA. Association for Computing Machinery.
Lameter, C. (2013). NUMA (non-uniform memory access): An overview: Numa becomes more common because memory controllers get close to execution units on microprocessors. Queue, 11(7):40–51.
Lee, S.-H. (2016). Technology scaling challenges and opportunities of memory devices. In 2016 IEEE International Electron Devices Meeting (IEDM), pages 1.1.1–1.1.8.
Maruf, H. A., Wang, H., Dhanotia, A., Weiner, J., Agarwal, N., Bhattacharya, P., Petersen, C., Chowdhury, M., Kanaujia, S., and Chauhan, P. (2023). TPP: Transparent page placement for cxl-enabled tiered-memory. In Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, Volume 3, ASPLOS 2023, page 742–755, New York, NY, USA. Association for Computing Machinery.
Mellor, C. (2024). Numemory reinvents optane storage-class memory. Accessed on April 09, 2025.
Póvoas, J. d. L. A. (2024). Optimizing OS Support for Dynamic Page Placement in Heterogeneous Memory Architectures. Master’s thesis, Universidade de Lisboa.
Torvalds, L. (2025). torvalds/linux: Linux kernel source tree. Accessed on April 09, 2025.
Tyson, M. (2019). Intel Optane DC persistent memory launched. Accessed on April 09, 2025.
Wang, R., He, S., Zong, W., Li, Y., and Xu, Y. (2023). XPGraph: Xpline-friendly persistent memory graph stores for large-scale evolving graphs. In Proceedings of the 55th Annual IEEE/ACM International Symposium on Microarchitecture, MICRO ’22, page 1308–1325. IEEE Press.
Published
2025-05-28
How to Cite
PASCHOAL, Eduardo Neves; BALDASSIN, Alexandro.
Persistent AutoNUMA. In: REGIONAL SCHOOL OF HIGH PERFORMANCE COMPUTING FROM SÃO PAULO (ERAD-SP), 16. , 2025, São José do Rio Preto/SP.
Anais [...].
Porto Alegre: Sociedade Brasileira de Computação,
2025
.
p. 66-69.
DOI: https://doi.org/10.5753/eradsp.2025.9711.
