freebsd-nq/lib/libc
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
..
amd64 Two FP-related setjmp/longjmp changes: 2008-06-28 17:55:43 +00:00
arm Arrange so that the NaN returned by strtod("nan", NULL) is the same as 2007-12-16 21:15:09 +00:00
compat-43
db getopt(3) returns -1, not EOF. 2008-02-18 03:19:25 +00:00
gdtoa Unbreak the build for arm and powerpc. 2008-04-12 14:53:52 +00:00
gen Set "max" to a reasonable value if BLOCKSIZE has a bogus unit. Prior 2008-08-04 06:53:13 +00:00
gmon
i386 We should also save and restore the MXCSR as on amd64, but detecting 2008-06-28 17:58:06 +00:00
ia64 Add an alternative view of the bits in an 80-bit long double (64+16 2008-01-17 16:39:07 +00:00
include Add thread-specific caching for small size classes, based on magazines. 2008-08-27 02:00:53 +00:00
inet Fix issues which allow snooping on ptys. [08:01] 2008-01-14 22:56:05 +00:00
isc
locale Don't allocate the constant array "props" on the stack in wctype. 2008-03-17 18:22:23 +00:00
mips Add mips support libc from the mips2-jnpr branch of perforce. 2008-04-26 12:08:02 +00:00
nameser This commit was generated by cvs2svn to compensate for changes in r174223, 2007-12-03 15:07:58 +00:00
net - AI_ALL and AI_V4MAPPED flags are currently not supported 2008-07-01 22:59:20 +00:00
nls
posix1e The libc acl_valid(3) function validates the contents of a POSIX.1e ACL. 2008-07-13 16:37:51 +00:00
powerpc Add support files for compiling with soft-float. This has been 2008-04-27 18:34:34 +00:00
quad
regex getopt(3) returns -1, not EOF. 2008-02-18 03:19:25 +00:00
resolv Allow underscore in domain names while resolving. While having underscore 2008-02-16 00:16:49 +00:00
rpc Add an implementation of the RPCSEC_GSS authentication protocol for RPC. This 2008-08-06 14:02:05 +00:00
softfloat
sparc64 Fix some bugs that caused sparc64's quad precision sqrt to get 2008-04-12 03:10:13 +00:00
stdio Initialize "nconv" to a reasonable value in all code paths. Prior to 2008-08-04 06:55:42 +00:00
stdlib Add thread-specific caching for small size classes, based on magazines. 2008-08-27 02:00:53 +00:00
stdtime Clarify that "ante meridiem" and "post meridiem" mean the same thing 2008-05-16 04:33:04 +00:00
string Add memrchr(3). 2008-04-10 00:12:44 +00:00
sys Implement WNOWAIT flag for wait4(2). It specifies that process whose status 2008-08-26 12:37:16 +00:00
uuid Import the uuid_enc_le(), uuid_dec_le(), uuid_enc_be() and 2008-08-14 22:23:16 +00:00
xdr Add an implementation of the RPCSEC_GSS authentication protocol for RPC. This 2008-08-06 14:02:05 +00:00
yp Fix some "in in" typos in comments. 2008-03-26 07:32:08 +00:00
Makefile Enable GCC stack protection (aka Propolice) for userland: 2008-06-25 21:33:28 +00:00
Versions.def Keep versions on a dependency chain to exclude even remote possiblity 2008-05-07 15:39:34 +00:00