HMalloc: A Hybrid, Scalable, and Lock-free Memory Allocator for Multi-threaded Applications

被引:0
|
作者
Li, Tianlin [1 ]
Yao, Yiping [1 ]
Tang, Wenjie [1 ]
Lin, Zhongwei [2 ]
机构
[1] Natl Univ Def Technol, Changsha, Peoples R China
[2] Natl Univ Def Technol, Hefei, Peoples R China
基金
中国国家自然科学基金;
关键词
hybrid; lock-free; scalable; multi-threaded; memory allocator;
D O I
10.1109/ICPADS47876.2019.00064
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
An efficient multi-threaded memory allocator has great impact on performance of applications with frequent memory allocation and deallocation operations. Currently, most popular memory allocators ignore the difference between thread local and shared memory, and manage them in a unified manner, which cannot make good use of the spatiotemporal locality of memory access. To solve this problem, this paper proposes a hybrid and lock-free multi-threaded memory allocator, named HMalloc. The allocator separates local memory from shared memory. There is no false sharing and lock contentions in local memory allocation and deallocation process. Moreover, coalescence-free is used to optimize this process. Further, a flag-based shared memory allocation and deallocation method is proposed to achieve lock-free shared memory management. Experimental results show that HMalloc can achieve significant performance improvement when compared with existing well-known memory allocators.
引用
收藏
页码:406 / 409
页数:4
相关论文
共 50 条
  • [1] An efficient multi-threaded memory allocator for PDES applications
    Li, Tianlin
    Yao, Yiping
    Tang, Wenjie
    Zhu, Feng
    Lin, Zhongwei
    [J]. SIMULATION MODELLING PRACTICE AND THEORY, 2020, 100
  • [2] A lock-free multi-threaded algorithm for the maximum flow problem
    Hong, Bo
    [J]. 2008 IEEE INTERNATIONAL SYMPOSIUM ON PARALLEL & DISTRIBUTED PROCESSING, VOLS 1-8, 2008, : 2226 - 2233
  • [3] Scalable Lock-Free Dynamic Memory Allocation
    Michael, Maged M.
    [J]. ACM SIGPLAN NOTICES, 2015, 50 (08) : 11 - 22
  • [4] Scalable lock-free dynamic memory allocation
    Michael, MM
    [J]. ACM SIGPLAN NOTICES, 2004, 39 (06) : 35 - 46
  • [5] Lock-free and scalable multi-version software transactional memory
    Fernandes, Sérgio Miguel
    Cachopo, Joao
    [J]. ACM SIGPLAN Notices, 2011, 46 (08): : 179 - 188
  • [6] Lock-free and Scalable Multi-Version Software Transactional Memory
    Fernandes, Sergio Miguel
    Cachopo, Joao
    [J]. ACM SIGPLAN NOTICES, 2011, 46 (08) : 179 - 188
  • [7] Lock-free and scalable multi-version software transactional memory
    Fernandes, Sérgio Miguel
    Cachopo, João
    [J]. Proceedings of the ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, PPOPP, 2011, : 179 - 188
  • [8] Enabling Multi-threaded Applications on Hybrid Shared Memory Manycore Architectures
    Rawat, Tushar
    Shrivastava, Aviral
    [J]. 2015 DESIGN, AUTOMATION & TEST IN EUROPE CONFERENCE & EXHIBITION (DATE), 2015, : 742 - 747
  • [9] Lock-Free Memory Allocator Without Garbage Collection on Multicore Embedded Devices
    Cho, Youngjoong
    Lee, Dongwoo
    Jun, Hyung Kook
    Eom, Young Ik
    [J]. 2014 IEEE INTERNATIONAL CONFERENCE ON CONSUMER ELECTRONICS (ICCE), 2014, : 430 - 431
  • [10] A Fast Profiler for Compilation of Multi-Threaded Applications on a Hybrid Memory System
    Dadzie, Thomas Haywood
    Cho, SeungPyo
    Oh, Hyunok
    [J]. 2017 IEEE 6TH NON-VOLATILE MEMORY SYSTEMS AND APPLICATIONS SYMPOSIUM (NVMSA 2017), 2017,