Persistent AutoNUMA

  • Eduardo Neves Paschoal UNESP
  • Alexandro Baldassin UNESP

Resumo


A Memória Persistente (PM) é uma tecnologia de memória emergente que visa eliminar a lacuna entre a memória principal e o armazenamento secundário. Em um sistema Linux convencional, o AutoNUMA é responsável por mover páginas entre regiões de memória e processos entre hosts para otimizar o tempo de acesso à memória. Para sistemas com tipos de memória heterogêneos, por exemplo, DRAM e PM, o AutoNUMA não oferece suporte para o balanceamento automático de páginas. A principal razão é que mover páginas em um ambiente persistente exige mais cuidado, pois o conteúdo da memória pode se tornar inconsistente em caso de falhas no sistema. Este breve artigo apresenta o estado atual do nosso trabalho na adaptação do AutoNUMA para um ambiente persistente. Discutimos o status atual do balanceamento automático NUMA em sistemas Linux e exploramos algumas ideias iniciais para lidar com o problema. Nossa abordagem inicial é aproveitar técnicas baseadas em processamento de transações e journaling.

Referências

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.
Publicado
28/05/2025
PASCHOAL, Eduardo Neves; BALDASSIN, Alexandro. Persistent AutoNUMA. In: ESCOLA REGIONAL DE ALTO DESEMPENHO DE 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.

Artigos mais lidos do(s) mesmo(s) autor(es)

1 2 3 > >>