gecko-dev/memory/build
Mike Hommey 538706caba Bug 1203840 - Trigger dirty pages purge after CC. r=njn,r=smaug,r=mccr8
Jemalloc 4 purges dirty pages regularly during free() when the ratio of dirty
pages compared to active pages is higher than 1 << lg_dirty_mult.  We set
lg_dirty_mult in jemalloc_config to limit RSS usage, but it also has an impact
on performance.

So instead of enforcing a high ratio to force more pages being purged, we keep
jemalloc's default ratio of 8, and force a regular purge of all dirty pages,
after cycle collection.

Keeping jemalloc's default ratio avoids cycle-collection-triggered purge to
have to go through really all dirty pages when there are a lot, in which case
the normal jemalloc purge during free() will already have kicked in. It also
takes care of everything that doesn't run the cycle collector still having
a level of purge, like plugins in the plugin-container.

At the same time, since jemalloc_purge_freed_pages does nothing with jemalloc 4,
repurpose the MEMORY_FREE_PURGED_PAGES_MS telemetry probe to track the time
spent in this cycle-collector-triggered purge.
2015-09-20 17:43:43 +09:00
..
Makefile.in Bug 1141079 - Make jemalloc_config.c a C++ source file. r=ted 2015-09-04 14:35:54 +09:00
jemalloc_config.cpp Bug 1203840 - Trigger dirty pages purge after CC. r=njn,r=smaug,r=mccr8 2015-09-20 17:43:43 +09:00
malloc_decls.h Bug 1168719 - Generic replace-malloc library. r=njn 2015-06-05 10:40:58 +09:00
moz.build Bug 1201792 - s/MOZ_JEMALLOC3/MOZ_JEMALLOC4/. r=njn 2015-09-04 15:15:47 +09:00
mozjemalloc_compat.c Bug 1201792 - s/MOZ_JEMALLOC3/MOZ_JEMALLOC4/. r=njn 2015-09-04 15:15:47 +09:00
mozmemory.h Bug 928210 - Get rid of MOZ_INLINE 2013-10-22 06:34:24 +09:00
mozmemory_wrap.c Bug 1120272 - Expose _aligned_alloc and _aligned_free from mozglue. r=njn 2015-01-20 13:10:00 +09:00
mozmemory_wrap.h Bug 1104173 - Properly export jemalloc_* symbols from the jemalloc3 replace-malloc library. r=njn 2014-11-26 16:04:25 +09:00
replace_malloc.c Bug 818922 - Add bidirectional method calls with replace-malloc library. r=njn 2014-11-18 19:21:06 +09:00
replace_malloc.h Bug 1168719 - Generic replace-malloc library. r=njn 2015-06-05 10:40:58 +09:00
replace_malloc_bridge.h Bug 1182996 - Fix and add missing namespace comments. rs=ehsan 2015-07-13 08:25:42 -07:00