1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-02-05 15:11:30 -08:00

mps br/vmem: simple-chunk-return:

arenavm.c, trace.c, mpmst.h -- trace->preTraceArenaReserved, to show pre- and peak-vmem during collection

Copied from Perforce
 Change: 170098
 ServerID: perforce.ravenbrook.com
This commit is contained in:
Richard Kistruck 2010-03-23 04:07:43 +00:00
parent 7bdbbeb2c9
commit d1e04a6dd5
3 changed files with 5 additions and 1 deletions

View file

@ -1675,6 +1675,7 @@ static void VMCompact(Arena arena, Trace trace)
}
DIAG(
Size vmem0 = trace->preTraceArenaReserved;
Size vmem2 = VMArenaReserved(arena);
Size vmemD = vmem1 - vmem2;
Size live = trace->forwardedSize + trace->preservedInPlaceSize;
@ -1684,7 +1685,8 @@ static void VMCompact(Arena arena, Trace trace)
|| trace->why == TraceStartWhyCLIENTFULL_INCREMENTAL
|| trace->why == TraceStartWhyCLIENTFULL_BLOCK) {
DIAG_SINGLEF(( "VMCompact",
"vmem was $Um$3, ", M_whole(vmem1), M_frac(vmem1),
"pre-collection vmem was $Um$3, ", M_whole(vmem0), M_frac(vmem0),
"peaked at $Um$3, ", M_whole(vmem1), M_frac(vmem1),
"released $Um$3, ", M_whole(vmemD), M_frac(vmemD),
"now $Um$3", M_whole(vmem2), M_frac(vmem2),
" (why $U", trace->why,

View file

@ -506,6 +506,7 @@ typedef struct TraceStruct {
Bool firstStretch; /* in first stretch of band (see accessor) */
Bool emergency; /* ran out of memory during trace */
Chain chain; /* chain being incrementally collected */
STATISTIC_DECL(Size preTraceArenaReserved); /* ArenaReserved before this trace */
Size condemned; /* condemned bytes */
Size notCondemned; /* collectable but not condemned */
Size foundation; /* initial grey set size */

View file

@ -663,6 +663,7 @@ found:
trace->band = RankAMBIG; /* Required to be the earliest rank. */
trace->emergency = FALSE;
trace->chain = NULL;
STATISTIC(trace->preTraceArenaReserved = ArenaReserved(arena));
trace->condemned = (Size)0; /* nothing condemned yet */
trace->notCondemned = (Size)0;
trace->foundation = (Size)0; /* nothing grey yet */