snmalloc: a message passing allocator
File(s) snmalloc.pdf (1.33 MB)
Published version
Author(s)
Type
Conference Paper
Abstract
snmalloc is an implementation of malloc aimed at work- loads in which objects are typically deallocated by a different thread than the one that had allocated them. We use the term producer/consumer for such workloads. snmalloc uses a novel message passing scheme which returns deallocated objects to the originating allocator in batches without taking any locks. It also uses a novel bump pointer-free list data struc- ture with which just 64-bits of meta-data are sufficient for each 64 KiB slab. On such producer/consumer benchmarks our approach performs better than existing allocators.
Date Issued
2019-06-23
Date Acceptance
2019-04-16
Citation
ISMM 2019 Proceedings of the 2019 ACM SIGPLAN International Symposium on Memory Management, 2019, pp.122-135
ISBN
978-1-4503-6722-6
Publisher
ACM
Start Page
122
End Page
135
Journal / Book Title
ISMM 2019 Proceedings of the 2019 ACM SIGPLAN International Symposium on Memory Management
Copyright Statement
©2019 Copyright held by the owner/author(s). Publication rights licensedto ACM.
Source
Proceedings of the 2019 ACM SIGPLAN International Symposium on Memory Management
Publication Status
Published
Start Date
2019-06-23
Finish Date
2019-06-24
Coverage Spatial
Arizona, USA
