- if ( ResidencySamples > 0 ) {
- ullong_format_string(MaxResidency*sizeof(W_), temp, rtsTrue/*commas*/);
- fprintf(sf, "%11s bytes maximum residency (%ld sample(s))\n",
- temp,
- ResidencySamples);
- }
- fprintf(sf,"\n");
-
- { /* Count garbage collections */
- nat g;
- for (g = 0; g < RtsFlags.GcFlags.generations; g++) {
- fprintf(sf, "%11d collections in generation %d (%6.2fs)\n",
- generations[g].collections, g, GC_coll_times[g]);
- }
- }
- fprintf(sf,"\n%11ld Mb total memory in use\n\n",
- mblocks_allocated * MBLOCK_SIZE / (1024 * 1024));
-
- MutTime = time - GC_tot_time - InitUserTime;
- if (MutTime < 0) { MutTime = 0; }
- MutElapsedTime = etime - GCe_tot_time - InitElapsedTime;
- if (MutElapsedTime < 0) { MutElapsedTime = 0; } /* sometimes -0.00 */
-
- fprintf(sf, " INIT time %6.2fs (%6.2fs elapsed)\n",
- InitUserTime, InitElapsedTime);
- fprintf(sf, " MUT time %6.2fs (%6.2fs elapsed)\n",
- MutTime, MutElapsedTime);
- fprintf(sf, " GC time %6.2fs (%6.2fs elapsed)\n",
- GC_tot_time, GCe_tot_time);
- fprintf(sf, " Total time %6.2fs (%6.2fs elapsed)\n\n",
- time, etime);
-
- fprintf(sf, " %%GC time %5.1f%% (%.1f%% elapsed)\n\n",
- GC_tot_time*100./time, GCe_tot_time*100./etime);
-
- if (time - GC_tot_time == 0.0)
+ fprintf(sf, " INIT time %6.2fs (%6.2fs elapsed)\n",
+ TICK_TO_DBL(InitUserTime), TICK_TO_DBL(InitElapsedTime));
+ fprintf(sf, " MUT time %6.2fs (%6.2fs elapsed)\n",
+ TICK_TO_DBL(MutUserTime), TICK_TO_DBL(MutElapsedTime));
+ fprintf(sf, " GC time %6.2fs (%6.2fs elapsed)\n",
+ TICK_TO_DBL(GC_tot_time), TICK_TO_DBL(GCe_tot_time));
+ fprintf(sf, " EXIT time %6.2fs (%6.2fs elapsed)\n",
+ TICK_TO_DBL(ExitUserTime), TICK_TO_DBL(ExitElapsedTime));
+ fprintf(sf, " Total time %6.2fs (%6.2fs elapsed)\n\n",
+ TICK_TO_DBL(time), TICK_TO_DBL(etime));
+ fprintf(sf, " %%GC time %5.1f%% (%.1f%% elapsed)\n\n",
+ TICK_TO_DBL(GC_tot_time)*100/time,
+ TICK_TO_DBL(GCe_tot_time)*100/etime);
+
+ if (time - GC_tot_time == 0)