Hoard memory allocator
|Original author(s)||Emery Berger, Kathryn S. McKinley, Robert D. Blumofe, Paul R. Willson|
|Developer(s)||Emery Berger, Martin Bachtold, Trey Boudreau, John Calcote, Robert Fleischman, Bo Granlund, John Hickin, Paul Larson, Maged Michael, Kevin Mills, Ganesan Rajagopal, Benoit Rignault|
|Initial release||September 29, 1999|
3.11 / August 5, 2015
|Operating system||Linux, OS X, Microsoft Windows, Solaris and others[which?]|
|License||GPL v2 and another one for proprietary software|
The Hoard memory allocator, or Hoard, is a memory allocator for Linux, Solaris, Microsoft Windows and other operating systems. Hoard is designed to be efficient when used by multithreaded applications on multiprocessor computers. Hoard is distributed under the GPL, but can be purchased for proprietary software.
In 2000, its author Emery Berger benchmarked some famous memory allocators and stated Hoard improves the performance of multithreaded applications by providing fast, scalable memory management functions (malloc and free). In particular, it reduces contention for the heap (the central data structure used in dynamic memory allocation) caused when multiple threads allocate or free memory, and avoids the false sharing that can be introduced by memory allocators. At the same time, Hoard has strict bounds on fragmentation.
- Berger, E. D.; McKinley, K. S.; Blumofe, R. D.; Wilson, P. R. (November 2000). Hoard: A Scalable Memory Allocator for Multithreaded Applications (PDF). ASPLOS-IX. Proceedings of the ninth international conference on Architectural support for programming languages and operating systems. pp. 117–128. CiteSeerX 10.1.1.1.4174. doi:10.1145/378993.379232. ISBN 1-58113-317-0.
- "An alternative Memory Allocator for the standard glibc". 2007-09-16. Archived from the original on 2011-10-07.
- "GNU Common C++ Downloading".
- "I'm a Mac (or, "Emery Inside")".
- "A look at how malloc works on the Mac".