Hoard memory allocator
Original author(s) | Emery Berger Kathryn S. McKinley Robert D. Blumofe Paul R. Willson |
---|---|
Developer(s) | Emery Berger |
Initial release | September 29, 1999 |
Stable release | 3.10
/ October 23, 2013 |
Repository | |
Operating system | Unix-like, Microsoft Windows and others |
Platform | Cross-platform |
Available in | C++ |
Type | Memory allocation |
License | GPL v2 and another one for proprietary software |
Website | www |
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.
History
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.[1]
In 2004, Maged Michael implemented a new memory allocator and benchmarked it with Hoard and some other famous memory allocators. He stated its new memory allocator is more efficient than Hoard.[2] Then Maged Michael contributed to improve Hoard's quality.[3]
Hoard continues to be maintained and improved, and is in use by a number of open source and commercial projects.[4][5]
References
- ^ Attention: This template ({{cite doi}}) is deprecated. To cite the publication identified by doi:10.1145/378993.379232, please use {{cite journal}} (if it was published in a bona fide academic journal, otherwise {{cite report}} with
|doi=10.1145/378993.379232
instead. - ^ Attention: This template ({{cite doi}}) is deprecated. To cite the publication identified by doi:10.1145/996841.996848, please use {{cite journal}} (if it was published in a bona fide academic journal, otherwise {{cite report}} with
|doi=10.1145/996841.996848
instead. - ^ See THANKS file in source code
- ^ "An alternative Memory Allocator for the standard glibc". 2007-09-16. Archived from the original on 2011-10-07.
- ^ "GNU Common C++ Downloading".
External links
- The Hoard web page.
- Emery Berger, Hoard's author and a professor at the University of Massachusetts Amherst.