Hoard memory allocator
| Hoard | |
|---|---|
| Original authors | Emery Berger, Kathryn S. McKinley, Robert D. Blumofe, Paul R. Wilson |
| Developer | Emery Berger |
| Initial release | September 29, 1999 |
| Stable release | 3.13
/ January 1, 2019 |
| Operating system | Linux, OS X, Microsoft Windows |
| Available in | C++ |
| Type | Memory allocation |
| License | Apache License v2 |
| Website | hoard |
| Repository | |
The Hoard memory allocator, or Hoard, is a memory allocator for Linux, OS X, and Microsoft Windows. Hoard is designed to be efficient when used by multithreaded applications on multiprocessor computers. Hoard is distributed under the Apache License, version 2.0.
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]
Hoard continues to be maintained and improved, and is in use by a number of open source and commercial projects.[2][3]
It has also inspired changes to other memory allocators such as the one in OS X since February 2008 (first released in Mac OS X Snow Leopard).[4][5]
See also
- C dynamic memory allocation – Dynamic memory management in the C programming language
- Manual memory management – Computer memory management methodology
- Dynamic memory allocation – Computer memory management methodology
- mimalloc – Microsoft open source library
References
- ^ 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")". 26 October 2010.
- ^ "A look at how malloc works on the Mac".
External links
- The Hoard web page.
- Emery Berger, Hoard's author and a professor at the University of Massachusetts Amherst.
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.