snmalloc is an implementation of malloc aimed at workloads 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 structure 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.
Snmalloc is available at https://github.com/Microsoft/snmalloc.
Sun 23 Jun
|16:00 - 16:25|
Paul Lietar, Theodore ButlerDrexel University, USA, Sylvan ClebschImperial College London, Sophia DrossopoulouImperial College London, Juliana FrancoMicrosoft Research, Cambridge, Matthew ParkinsonMicrosoft Research, UK, Alex ShamisMicrosoft Research / Imperial College London, Christoph M. WintersteigerMicrosoft Research, UK, David ChisnallUniversity of Cambridge
|16:25 - 16:50|
Steve BlackburnAustralian National University
|16:50 - 17:14|
Koichi SasadaCookpad, JapanLink to publication DOI
|17:14 - 17:15|