Projects / The Hoard Scalable Memory A...

The Hoard Scalable Memory Allocator

Hoard is a scalable memory allocator (malloc replacement) for multithreaded applications. Hoard can dramatically improve your application's performance on multiprocessor machines. No changes to your source are necessary; just link it in. Hoard scales linearly up to at least 14 processors. The supported platforms include Linux, Solaris, Mac OS X, and Windows NT/2000/XP/64.

Tags
Licenses
Operating Systems
Implementation

RSS Recent releases

Release Notes: This release incorporates a number of fixes and improvements: better per-thread allocation, improving speed for Unix platforms that do not support __thread; interception of the Solaris threads API (thr_*) to work with older Solaris programs; a fix for a possible race condition; and increased checking to protect against heap corruption or other errors. Hoard now uses GNU-supported hooks on platforms with glibc (especially Linux), allowing it to work better with legacy programs.

  •  20 Feb 2008 10:43

Release Notes: This release fixes a serious bug for Windows in thread reclamation. It fixes a small memory leak in thread creation. It substantially increases performance for small objects on 64-bit platforms. It works on 64-bit Windows.

  •  19 Sep 2007 00:05

Release Notes: The fast path for allocation was streamlined, substantially accelerating both 32-bit and 64-bit code. pthread_* based thread-specific data is now used for x86-64, where it's faster. These combine to improve benchmark performance on x86-32 by up to 13%, and on x86-64 by up to 32%.

  •  25 May 2007 09:53

Release Notes: This release has fixes for building on Mac OS X (Darwin) and to support some older versions of the Sun compilers. It adds FreeBSD as a supported target.

  •  21 May 2007 20:47

Release Notes: An x86-64 target was added for Linux/GCC along with support for posix_memalign (for Unix systems), and a static library build option for Linux.

RSS Recent comments

22 Nov 1999 00:18 emeryberger

Red Hat 6.1 problem FIXED
Version 1.3.1 fixes the problem (a deadlock caused by a malloc call within atexit).

19 Nov 1999 20:31 emeryberger

Red Hat 6.1 incompatibility
I've just learned that Hoard does not work with Red Hat 6.1 (it works with 6.0). The problem is in the version of libc. A workaround using the libc and libpthread libraries from the 6.0 distribution is described on the Hoard home page. I'll release a new version as soon as I find a workaround I can implement in Hoard.

30 Sep 1999 17:01 emeryberger

Hoard update (oops)
Someone pointed out that I had unnecessary dependencies on
iostream.h (an artefact of debugging), so I removed them and updated the tarfile, but unfortunately didn't do a "make clean" before testing it -- a test program produced in the build requires iostream.h.

If you downloaded this version (that's around 20-40 people before I discovered the error), try the updated version (1.0.1).

Thanks,
Emery

Screenshot

Project Spotlight

ImpressCMS Deutschland

A powerful and secure content management system.

Screenshot

Project Spotlight

Protocol Buffers Editor

An editor for Google's Protocol Buffers binary files.