summaryrefslogtreecommitdiffstats
path: root/src/stats.c
diff options
context:
space:
mode:
authorQi Wang <interwq@gwu.edu>2017-05-30 22:56:01 (GMT)
committerQi Wang <interwq@gmail.com>2017-05-31 05:25:11 (GMT)
commit2e4d1a4e30ec602a692707ca2aa576ee9df2be76 (patch)
treed829a7330252e9db45bae534562971389a6cc13f /src/stats.c
parentff8062a511f2f3e727891c21238d98c6757ee27e (diff)
downloadjemalloc-2e4d1a4e30ec602a692707ca2aa576ee9df2be76.zip
jemalloc-2e4d1a4e30ec602a692707ca2aa576ee9df2be76.tar.gz
jemalloc-2e4d1a4e30ec602a692707ca2aa576ee9df2be76.tar.bz2
Output total_wait_ns for bin mutexes.
Diffstat (limited to 'src/stats.c')
-rw-r--r--src/stats.c24
1 files changed, 5 insertions, 19 deletions
diff --git a/src/stats.c b/src/stats.c
index 268862b..087df76 100644
--- a/src/stats.c
+++ b/src/stats.c
@@ -131,7 +131,7 @@ stats_arena_bins_print(void (*write_cb)(void *, const char *), void *cbopaque,
"\t\t\t\t\"bins\": [\n");
} else {
char *mutex_counters = " n_lock_ops n_waiting"
- " n_spin_acq max_wait_ns\n";
+ " n_spin_acq total_wait_ns max_wait_ns\n";
malloc_cprintf(write_cb, cbopaque,
"bins: size ind allocated nmalloc"
" ndalloc nrequests curregs curslabs regs"
@@ -221,28 +221,11 @@ stats_arena_bins_print(void (*write_cb)(void *, const char *), void *cbopaque,
not_reached();
}
}
- /* Output less info for bin mutexes to save space. */
- uint64_t num_ops, num_wait, max_wait;
- CTL_M2_M4_GET("stats.arenas.0.bins.0.mutex.num_wait",
- i, j, &num_wait, uint64_t);
- CTL_M2_M4_GET(
- "stats.arenas.0.bins.0.mutex.max_wait_time", i, j,
- &max_wait, uint64_t);
- CTL_M2_M4_GET("stats.arenas.0.bins.0.mutex.num_ops",
- i, j, &num_ops, uint64_t);
uint64_t mutex_stats[mutex_prof_num_counters];
if (mutex) {
read_arena_bin_mutex_stats(i, j, mutex_stats);
}
- char rate[6];
- if (get_rate_str(num_wait, num_ops, rate)) {
- if (num_ops == 0) {
- malloc_snprintf(rate, sizeof(rate),
- "0");
- }
- }
-
malloc_cprintf(write_cb, cbopaque, "%20zu %3u %12zu %12"
FMTu64" %12"FMTu64" %12"FMTu64" %12zu %12zu %4u"
" %3zu %-5s %12"FMTu64" %12"FMTu64" %12"FMTu64
@@ -250,13 +233,16 @@ stats_arena_bins_print(void (*write_cb)(void *, const char *), void *cbopaque,
nmalloc, ndalloc, nrequests, curregs, curslabs,
nregs, slab_size / page, util, nfills, nflushes,
nslabs, nreslabs);
+
+ /* Output less info for bin mutexes to save space. */
if (mutex) {
malloc_cprintf(write_cb, cbopaque,
" %12"FMTu64" %12"FMTu64" %12"FMTu64
- " %12"FMTu64"\n",
+ " %14"FMTu64" %12"FMTu64"\n",
mutex_stats[mutex_counter_num_ops],
mutex_stats[mutex_counter_num_wait],
mutex_stats[mutex_counter_num_spin_acq],
+ mutex_stats[mutex_counter_total_wait_time],
mutex_stats[mutex_counter_max_wait_time]);
} else {
malloc_cprintf(write_cb, cbopaque, "\n");