X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=rts%2FStats.c;h=9fc702a2a3a789934d60d760a3a6d21e29499926;hb=7d9eb2e45b4a9ff4cb053b1ec37602be88528b62;hp=fa38472129b2151d623c31b1e4ab02eba963a992;hpb=cfe22ecbdac3b2340787110e0093239956f17c3d;p=ghc-hetmet.git diff --git a/rts/Stats.c b/rts/Stats.c index fa38472..9fc702a 100644 --- a/rts/Stats.c +++ b/rts/Stats.c @@ -547,6 +547,18 @@ stat_exit(int alloc) gc_elapsed += GC_coll_elapsed[i]; } + init_cpu = end_init_cpu - start_init_cpu; + init_elapsed = end_init_elapsed - start_init_elapsed; + + exit_cpu = end_exit_cpu - start_exit_cpu; + exit_elapsed = end_exit_elapsed - start_exit_elapsed; + + mut_elapsed = start_exit_elapsed - end_init_elapsed - gc_elapsed; + + mut_cpu = start_exit_cpu - end_init_cpu - gc_cpu + - PROF_VAL(RP_tot_time + HC_tot_time); + if (mut_cpu < 0) { mut_cpu = 0; } + if (RtsFlags.GcFlags.giveStats >= SUMMARY_GC_STATS) { showStgWord64(GC_tot_alloc*sizeof(W_), temp, rtsTrue/*commas*/); @@ -635,21 +647,9 @@ stat_exit(int alloc) } #endif - init_cpu = end_init_cpu - start_init_cpu; - init_elapsed = end_init_elapsed - start_init_elapsed; - - exit_cpu = end_exit_cpu - start_exit_cpu; - exit_elapsed = end_exit_elapsed - start_exit_elapsed; - statsPrintf(" INIT time %6.2fs (%6.2fs elapsed)\n", TICK_TO_DBL(init_cpu), TICK_TO_DBL(init_elapsed)); - mut_elapsed = start_exit_elapsed - end_init_elapsed - gc_elapsed; - - mut_cpu = start_exit_cpu - end_init_cpu - gc_cpu - - PROF_VAL(RP_tot_time + HC_tot_time); - if (mut_cpu < 0) { mut_cpu = 0; } - statsPrintf(" MUT time %6.2fs (%6.2fs elapsed)\n", TICK_TO_DBL(mut_cpu), TICK_TO_DBL(mut_elapsed)); statsPrintf(" GC time %6.2fs (%6.2fs elapsed)\n", @@ -813,11 +813,10 @@ statDescribeGens(void) } gen_live += gcThreadLiveWords(i,g); - gen_live += gcThreadLiveWords(i,g); gen_blocks += gcThreadLiveBlocks(i,g); } - debugBelch("%5d %7d %9d", g, gen->max_blocks, mut); + debugBelch("%5d %7ld %9d", g, (lnat)gen->max_blocks, mut); gen_slop = gen_blocks * BLOCK_SIZE_W - gen_live;