NUMAlloc: A Faster NUMA Memory Allocator

NUMAlloc: A Faster NUMA Memory Allocator
复制标题

DOI:
10.1145/3591195.3595276
复制
发表时间:
2023-06
期刊:
Proceedings of the 2023 ACM SIGPLAN International Symposium on Memory Management
影响因子:
--
通讯作者:
Hanmei Yang;Xin Zhao;Jin Zhou;Wei Wang;S. Kundu;Bo Wu;Hui Guan;Tongping Liu
Hanmei Yang;Xin Zhao;Jin Zhou;Wei Wang;S. Kundu;Bo Wu;Hui Guan;Tongping Liu
中科院分区:
其他
文献类型:
--
作者:
Hanmei Yang;Xin Zhao;Jin Zhou;Wei Wang;S. Kundu;Bo Wu;Hui Guan;Tongping Liu

文献摘要

相似文献

NUMA体系结构适应了CPU核心数量不断增加的硬件趋势。它需要内存分配器的协作来实现多线程应用程序的良好性能。不幸的是,现有的分配器不能很好地支持NUMA体系结构。本文提出了一种新型的内存分配器- NUMAlloc,它是为NUMA体系结构设计的。集中在基于绑定的内存管理上。在此基础上,提出了一种“源感知内存管理”,以确保内存分配和释放的局部性,以及一种称为“增量共享”的方法,以平衡使用透明的巨大页面的性能优势和内存开销。根据我们的广泛评估,NUMAlloc在所有评估的分配器中具有最好的性能,比第二好的分配器(mimalloc)快15.7%,比默认的Linux分配器快20.9%,具有合理的内存开销。NUMalloc还可扩展到128个线程,并准备部署。
The NUMA architecture accommodates the hardware trend of an increasing number of CPU cores. It requires the cooperation of memory allocators to achieve good performance for multithreaded applications. Unfortunately, existing allocators do not support NUMA architecture well. This paper presents a novel memory allocator – NUMAlloc, that is designed for the NUMA architecture. is centered on a binding-based memory management. On top of it, proposes an “origin-aware memory management” to ensure the locality of memory allocations and deallocations, as well as a method called “incremental sharing” to balance the performance benefits and memory overhead of using transparent huge pages. According to our extensive evaluation, NUMAlloc has the best performance among all evaluated allocators, running 15.7% faster than the second-best allocator (mimalloc), and 20.9% faster than the default Linux allocator with reasonable memory overhead. NUMAlloc is also scalable to 128 threads and is ready for deployment.