freebsd-dev/lib/libc/include
Jason Evans d6742bfbd3 Add thread-specific caching for small size classes, based on magazines.
This caching allows for completely lock-free allocation/deallocation in the
steady state, at the expense of likely increased memory use and
fragmentation.

Reduce the default number of arenas to 2*ncpus, since thread-specific
caching typically reduces arena contention.

Modify size class spacing to include ranges of 2^n-spaced, quantum-spaced,
cacheline-spaced, and subpage-spaced size classes.  The advantages are:
fewer size classes, reduced false cacheline sharing, and reduced internal
fragmentation for allocations that are slightly over 512, 1024, etc.

Increase RUN_MAX_SMALL, in order to limit fragmentation for the
subpage-spaced size classes.

Add a size-->bin lookup table for small sizes to simplify translating sizes
to size classes.  Include a hard-coded constant table that is used unless
custom size class spacing is specified at run time.

Add the ability to disable tiny size classes at compile time via
MALLOC_TINY.
2008-08-27 02:00:53 +00:00
..
isc Merge BIND 9.4.1 into main chunk. 2007-06-03 18:13:59 +00:00
fpmath.h
libc_private.h Add thread-specific caching for small size classes, based on magazines. 2008-08-27 02:00:53 +00:00
namespace.h Make pthread_cleanup_push() and pthread_cleanup_pop() as a pair of macros, 2008-06-09 01:14:10 +00:00
nscache.h - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
nscachedcli.h - Extend the nsswitch to support Services, Protocols and Rpc 2006-04-28 12:03:38 +00:00
nss_tls.h
port_after.h We have gmtime_r(3). 2006-03-21 18:31:24 +00:00
port_before.h - Merge our local changes. 2006-03-21 15:37:16 +00:00
reentrant.h
resolv_mt.h Vendor import of BIND 9.3.2 2006-03-21 15:03:19 +00:00
spinlock.h Remove 3rd clause, renumber, ok per email 2007-01-12 07:31:30 +00:00
un-namespace.h Make pthread_cleanup_push() and pthread_cleanup_pop() as a pair of macros, 2008-06-09 01:14:10 +00:00