Jason Evans
3c2343518c
Implement mallctl{nametomib,bymib}().
...
Replace chunk stats code that was missing locking; this fixes a race
condition that could corrupt chunk statistics.
Converting malloc_stats_print() to use mallctl*().
Add a missing semicolon in th DSS code.
Convert malloc_tcache_flush() to a mallctl.
Convert malloc_swap_enable() to a set of mallctl's.
2010-01-27 13:10:56 -08:00
Jason Evans
4201af0542
Add the --enable-swap configure option.
...
Add malloc_swap_enable().
Add the O/o JEMALLOC_OPTIONS flags, which control memory overcommit.
Fix mapped memory stats reporting for arenas.
2010-01-24 02:53:40 -08:00
Jason Evans
ed1bf457fb
Add the w4opaque argument to numerous functions.
...
Add the w4opaque argument malloc_message() and malloc_stats_print(), and
propagate the change through all the internal APIs as necessary.
2010-01-19 12:11:25 -08:00
Jason Evans
b34e8684ec
Add merged arena stats printing.
...
Add the "m" and "a" opts flags for malloc_stats_print().
2010-01-17 17:35:19 -08:00
Jason Evans
00b5c93347
Add the write4 parameter to malloc_stats_print().
...
Add malloc_cprintf() and malloc_vcprintf().
2010-01-17 15:49:25 -08:00
Jason Evans
b0fd5016db
Add the --with-install-suffix configure option.
...
Fix some bugs in the Makefile's install target.
2010-01-17 01:49:20 -08:00
Jason Evans
e9db6c92ab
Add the S/s JEMALLOC_OPTIONS flags to enable/disable tcache bin sorting.
2010-01-03 16:17:52 -08:00
Jason Evans
279e09d1ff
Enhance the H/h MALLOC_OPTIONS flags to control the number of tcache bin slots,
...
rather than just enabling/disabling the tcache.
Fix an off-by-one bug in large object stats recording.
2010-01-03 16:16:10 -08:00
Jason Evans
3f3ecfb8e8
Enhance the G/g MALLOC_OPTIONS flags to control GC sweep interval, rather than
...
just enabling/disabling GC.
2010-01-03 14:45:26 -08:00
Jason Evans
03c2237af3
Make malloc_stats_print() a public symbol, and make it repeatedly callable.
...
Incrementally merge tcache stats, so that malloc_stats_print() always reports
at least most events that have occurred thus far.
2010-01-03 12:10:42 -08:00
Jason Evans
0b2368a6a2
Add the COPYING file, and consolidate copyright/licensing information.
2010-01-03 11:59:14 -08:00
Jason Evans
45c128d1a9
Base maximum dirty page count on proportion of active memory.
...
Add dirty page tracking for pages within active small/medium object runs.
Reduce chunks_dirty red-black tree operations via lazy updating.
2009-12-29 00:09:15 -08:00
Jason Evans
84cbbcb90a
Convert thread-specific caching from magazines, and implement incremental GC.
...
Add the 'G'/'g' and 'H'/'h' MALLOC_OPTIONS flags.
Add the malloc_tcache_flush() function.
Disable thread-specific caching until the application goes multi-threaded.
2009-12-29 00:09:15 -08:00
Jason Evans
b2378168a4
Add support for medium size classes, [4KiB..32KiB], 2KiB apart by default.
...
Add the 'M' and 'm' MALLOC_OPTIONS flags, which control the maximum medium size
class.
Relax the cap on small/medium run size to arena_maxclass.
Reduce arena_run_reg_dalloc() integer division code complexity.
Increase the default chunk size from 1MiB to 4MiB.
2009-12-29 00:09:15 -08:00
Jason Evans
6d7bb5357a
Remove opt_dss and opt_mmap, such that if DSS allocation is enabled, both DSS
...
and heap allocation are always enabled.
2009-12-29 00:09:15 -08:00
Jason Evans
3ee7a5c5b0
Remove the dynamic rebalancing code, since magazines reduce its utility.
2009-12-29 00:09:15 -08:00
Jason Evans
569432cffd
Implement thread-aware allocation event tracing.
2009-12-29 00:09:15 -08:00
Jason Evans
90895cf859
Add --with-jemalloc-prefix, which supports API mangling.
...
Rename jemalloc_options-->malloc_options and jemalloc_message-->malloc_message.
2009-12-29 00:09:15 -08:00
Jason Evans
cc00a15770
Clean up the manpage and conditionalize various portions according to how
...
jemalloc is configured.
Modify arena_malloc() API to avoid unnecessary choose_arena() calls. Remove
unnecessary code from choose_arena().
Enable lazy-lock by default, now that choose_arena() is both faster and out of
the critical path.
Implement objdir support in the build system.
2009-06-25 18:06:48 -07:00
Jason Evans
4450b830b6
Merge FreeBSD's malloc(3) and posix_memalign(3) manpages to create jemalloc(3).
2009-06-22 17:44:39 -07:00