Commit graph

  • 1e0a636c11 Simplify small object allocation/deallocation. Jason Evans 2010-03-13 13:41:58 -08:00
  • 3fa9a2fad8 Simplify tcache object caching. Jason Evans 2010-03-07 15:34:14 -08:00
  • 2caa4715ed Modify dirty page purging algorithm. Jason Evans 2010-03-04 21:35:07 -08:00
  • 3c2d9c899c Print version in malloc_stats_print(). Jason Evans 2010-03-03 17:55:03 -08:00
  • 698805c525 Simplify malloc_message(). Jason Evans 2010-03-03 17:45:38 -08:00
  • cfeccd34a3 Fix various config/build issues. Jason Evans 2010-03-03 15:48:20 -08:00
  • 9df0215f9b Move sampling init into prof_alloc_prep(). Jason Evans 2010-03-03 11:53:11 -08:00
  • ca6bd4f1c8 Add the --with-static-libunwind configure option. Jason Evans 2010-03-02 14:12:58 -08:00
  • a40bc7afe8 Add release versioning support. 0.0.0 Jason Evans 2010-03-02 13:01:16 -08:00
  • 22ca855e8f Allow prof.dump mallctl to specify filename. Jason Evans 2010-03-02 11:57:30 -08:00
  • 74025c85bf Edit rb documentation. Jason Evans 2010-02-28 15:23:17 -08:00
  • b9477e782b Implement sampling for heap profiling. Jason Evans 2010-03-01 20:15:26 -08:00
  • f3ff75289b Rewrite red-black trees. Jason Evans 2010-02-28 15:00:18 -08:00
  • fbb504def6 Don't implicitly enable interval-based profiling. Jason Evans 2010-02-16 15:46:57 -08:00
  • f894f74d36 Fix a bug in nmalloc stats. Jason Evans 2010-02-12 14:46:37 -08:00
  • 65aae2cf57 Fix a man page typo. Jason Evans 2010-02-11 16:46:42 -08:00
  • 3b5ee5e857 Fix #include ordering for mb.h. Jason Evans 2010-02-11 15:56:23 -08:00
  • 59e9be0f5f Avoid extra dumping for JEMALLOC_OPTIONS=L. Jason Evans 2010-02-11 15:18:17 -08:00
  • cd90fca928 Wrap mallctl* references with JEMALLOC_P(). Jason Evans 2010-02-11 14:55:25 -08:00
  • 376b1529a3 Restructure source tree. Jason Evans 2010-02-11 14:45:59 -08:00
  • fe5faa2cc5 Remove tracing (--enable-trace). Jason Evans 2010-02-11 13:38:12 -08:00
  • d34f9e7e93 Implement interval-based heap profile dumping. Jason Evans 2010-02-11 13:19:21 -08:00
  • b01a6c2057 Add JEMALLOC_PROF_PREFIX support. Jason Evans 2010-02-11 10:25:36 -08:00
  • c717718115 Dump /proc/<pid>/maps in heap profiles. Jason Evans 2010-02-11 09:25:56 -08:00
  • 3383af6c2d Fix a profiling bootstrap bug. Jason Evans 2010-02-11 08:59:06 -08:00
  • b27805b363 Various heap profiling improvements. Jason Evans 2010-02-10 18:15:53 -08:00
  • 6109fe07a1 Implement allocation profiling and leack checking. Jason Evans 2010-02-10 10:37:56 -08:00
  • 13668262d1 Fix some comments and whitespace. Jason Evans 2010-01-31 03:57:29 -08:00
  • 990d10cefb Fix large object stats collection bugs. Jason Evans 2010-01-31 03:49:35 -08:00
  • a0bf242230 Fix bootstrapping crash. Jason Evans 2010-01-29 14:30:41 -08:00
  • d8f565f239 Remove tcache bin sorting during flush. Jason Evans 2010-01-29 13:37:31 -08:00
  • c66aaf1476 Statistics fixes and cleanup. Jason Evans 2010-01-29 11:24:19 -08:00
  • 4fb7f51337 Fix a chunk leak in chunk_alloc_mmap(). Jason Evans 2010-01-27 18:27:09 -08:00
  • 95833311f1 madvise(..., MADV_{RANODOM,NOSYNC}) swap files. Jason Evans 2010-01-27 13:45:21 -08:00
  • 3c2343518c Implement mallctl{nametomib,bymib}(). Jason Evans 2010-01-27 13:10:55 -08:00
  • fbbb624fc1 Simplify malloc_{pre,post}fork(). Jason Evans 2010-01-24 17:56:48 -08:00
  • 68ddb6736d Print merged arena stats iff multiple arenas. Jason Evans 2010-01-24 17:21:47 -08:00
  • 41631d0061 Modify chunk_alloc() to support optional zeroing. Jason Evans 2010-01-24 17:13:07 -08:00
  • bc25a47ee0 Various minor cleanups. Jason Evans 2010-01-24 16:41:01 -08:00
  • 4201af0542 Add the --enable-swap configure option. Jason Evans 2010-01-24 02:53:40 -08:00
  • ed1bf457fb Add the w4opaque argument to numerous functions. Jason Evans 2010-01-19 12:11:25 -08:00
  • b34e8684ec Add merged arena stats printing. Jason Evans 2010-01-17 17:35:19 -08:00
  • 3363a841ca Merge branch 'disable-tls' Jason Evans 2010-01-17 15:51:35 -08:00
  • 00b5c93347 Add the write4 parameter to malloc_stats_print(). Jason Evans 2010-01-17 15:49:25 -08:00
  • 78d815c9de Add the --disable-tls configure option. Jason Evans 2010-01-17 14:06:20 -08:00
  • b0fd5016db Add the --with-install-suffix configure option. Jason Evans 2010-01-17 01:49:20 -08:00
  • bbaaecb729 Convert .hgignore to .gitignore. Jason Evans 2010-01-16 22:41:23 -08:00
  • e476f8a161 Refactor jemalloc.c into multiple source files. Jason Evans 2010-01-16 09:53:50 -08:00
  • 64bd7661a8 Support malloc() even after tcache destruction has occurred, since other tsd destructors may run after tcache_tsd's. Jason Evans 2010-01-12 18:13:39 -08:00
  • 79a78691b6 Fix some other minor build system bugs. Jason Evans 2010-01-03 16:17:55 -08:00
  • e9db6c92ab Add the S/s JEMALLOC_OPTIONS flags to enable/disable tcache bin sorting. Jason Evans 2010-01-03 16:17:52 -08:00
  • 279e09d1ff Enhance the H/h MALLOC_OPTIONS flags to control the number of tcache bin slots, rather than just enabling/disabling the tcache. Jason Evans 2010-01-03 16:16:10 -08:00
  • 3f3ecfb8e8 Enhance the G/g MALLOC_OPTIONS flags to control GC sweep interval, rather than just enabling/disabling GC. Jason Evans 2010-01-03 14:45:26 -08:00
  • 952b7d192b Split run deallocation out of arena_dalloc_bin(), into arena_dalloc_bin_run(). Enhance bin run deallocation to avoid marking all pages as dirty, since the dirty bits are already correct for all but the first page, due to the use of arena_run_rc_{incr,decr}(). This tends to dramatically reduce the number of pages that are marked dirty. Jason Evans 2010-01-03 12:10:47 -08:00
  • 03c2237af3 Make malloc_stats_print() a public symbol, and make it repeatedly callable. Jason Evans 2010-01-03 12:10:42 -08:00
  • 9ad48230ed Simplify JEMALLOC_ATTR_* macros to become JEMALLOC_ATTR(). Jason Evans 2010-01-03 11:59:20 -08:00
  • bf10ae64a7 Build libjemalloc_pic.a. Jason Evans 2010-01-03 11:59:19 -08:00
  • 0b2368a6a2 Add the COPYING file, and consolidate copyright/licensing information. Jason Evans 2010-01-03 11:59:14 -08:00
  • 41e008b87d Fix the 'clean' build target to delete binaries. Jason Evans 2009-12-29 00:09:15 -08:00
  • e888879e9c Implement per size class stats collection for large objects. Jason Evans 2009-12-29 00:09:15 -08:00
  • 45c128d1a9 Base maximum dirty page count on proportion of active memory. Jason Evans 2009-12-29 00:09:15 -08:00
  • 6c8b13bf43 Update description of --with-rpath. Jason Evans 2009-12-29 00:09:15 -08:00
  • 94ad2b57c3 Use "lg" prefix rather than "2pow" suffix to indicate base 2 logarithms. Jason Evans 2009-12-29 00:09:15 -08:00
  • d64d4448cd Modify pthread_create() wrapper such that isthreaded is only set once. Jason Evans 2009-12-29 00:09:15 -08:00
  • f251814779 Handle 0-size allocation requests in posix_memalign(). Jason Evans 2009-12-29 00:09:15 -08:00
  • 84cbbcb90a Convert thread-specific caching from magazines, and implement incremental GC. Jason Evans 2009-12-29 00:09:15 -08:00
  • b2378168a4 Add support for medium size classes, [4KiB..32KiB], 2KiB apart by default. Jason Evans 2009-12-29 00:09:15 -08:00
  • 6d7bb5357a Remove opt_dss and opt_mmap, such that if DSS allocation is enabled, both DSS and heap allocation are always enabled. Jason Evans 2009-12-29 00:09:15 -08:00
  • 5463a5298d Streamline the fast path for magazine-based allocation/deallocation. Jason Evans 2009-12-29 00:09:15 -08:00
  • 3ee7a5c5b0 Remove the dynamic rebalancing code, since magazines reduce its utility. Jason Evans 2009-12-29 00:09:15 -08:00
  • 569432cffd Implement thread-aware allocation event tracing. Jason Evans 2009-12-29 00:09:15 -08:00
  • 90895cf859 Add --with-jemalloc-prefix, which supports API mangling. Jason Evans 2009-12-29 00:09:15 -08:00
  • bca042dfeb Use __restrict rather than restrict. Jason Evans 2009-12-29 00:09:15 -08:00
  • 87704ea339 Make sure that there are no more than 256 size clases, since size2bin can only encode bin indices in [0..255]. Jason Evans 2009-11-12 17:57:57 -08:00
  • 1517cc6df7 Integrate architecture portability fixes. Jason Evans 2009-11-09 15:25:02 -08:00
  • a162402282 Fix configure docs (--enable-lazy-lock --> --disable-lazy-lock). Jason Evans 2009-11-09 14:58:12 -08:00
  • d3068c3f46 _pt_thread_death_internal(), which is part of Linux's nptl pthreads implementation, calls free() after calling TSD destructors. This was causing a crash during thread exit, since the magazine rack was no longer valid for the thread. Fix this by using a special mag_rack value to indicate that deallocation should bypass the magazine machinery. Jason Evans 2009-11-09 14:58:12 -08:00
  • 6f89d4b806 Modify chunk_alloc_mmap() to support address space layout randomization (ASLR). Jason Evans 2009-11-09 14:58:12 -08:00
  • a25d0a8a72 Update assertions in realloc() and free() to allow for deallocation during initializtion. Jason Evans 2009-11-09 14:57:38 -08:00
  • 662a017c1d Integrate mtrgraph and mtrplay. Jason Evans 2009-07-01 19:24:31 -07:00
  • f3340ca8d5 Add configure tests for CFLAGS settings. Jason Evans 2009-06-30 16:17:05 -07:00
  • b8f0a65173 Fix various compiler warnings. Jason Evans 2009-06-29 09:41:43 -07:00
  • a9b0125e97 Minor documentation and comment cleanups. Jason Evans 2009-06-26 16:34:13 -07:00
  • cc00a15770 Clean up the manpage and conditionalize various portions according to how jemalloc is configured. Jason Evans 2009-06-25 18:06:48 -07:00
  • b7924f50c0 Implement configuration system. Jason Evans 2009-06-23 19:01:18 -07:00
  • 4450b830b6 Merge FreeBSD's malloc(3) and posix_memalign(3) manpages to create jemalloc(3). Jason Evans 2009-06-22 17:44:39 -07:00
  • 804c9ec3af Fix various namespace issues. Jason Evans 2009-06-22 17:44:33 -07:00
  • c9658dd35c Merge code from the original jemalloc_linux port. Jason Evans 2009-06-22 14:44:08 -07:00
  • 289053c95b Import pristine FreeBSD sources. Jason Evans 2009-06-22 12:08:42 -07:00