THIS SOFTWARE IS PROVIDED AS A DEVELOPMENT SNAPSHOT TO AID
COLLABORATION AND WAS NOT ISSUED AS A RELEASED PRODUCT BY INTEL.
DOCUMENTATION AND TEST CODE COVERAGE ARE INCOMPLETE.

jemalloc is a general purpose malloc(3) implementation that emphasizes
fragmentation avoidance and scalable concurrency support.  jemalloc
first came into use as the FreeBSD libc allocator in 2005, and since
then it has found its way into numerous applications that rely on its
predictable behavior.  In 2010 jemalloc development efforts broadened
to include developer support features such as heap profiling, Valgrind
integration, and extensive monitoring/tuning hooks.  Modern jemalloc
releases continue to be integrated back into FreeBSD, and therefore
versatility remains critical.  Ongoing development efforts trend
toward making jemalloc among the best allocators for a broad range of
demanding applications, and eliminating/mitigating weaknesses that
have practical repercussions for real world applications.

This version of jemalloc has been modified to enable the memkind
library.  This modification gives the user the ability to create
arenas which are tagged with a partition index.  All allocations done
within a tagged area are kept separate in the heap so that freed
memory segments with different partition indices are not coalesced.
The tagging of arenas and management of their allocations is done by
the memkind library.  The tag controls the flags passed to mmap() and
provides a wrapper implementation of mbind().  In this way page size
and NUMA features are enabled.


The COPYING file contains copyright and licensing information.

The INSTALL file contains information on how to configure, build, and install
jemalloc.

The ChangeLog file contains a brief summary of changes for each release.

URLs: http://www.canonware.com/jemalloc/
      https://github.com/memkind/jemalloc/
