diff options
Diffstat (limited to 'examples/redis-unstable/deps/jemalloc/test/unit/prof_stats.c')
| -rw-r--r-- | examples/redis-unstable/deps/jemalloc/test/unit/prof_stats.c | 151 |
1 files changed, 0 insertions, 151 deletions
diff --git a/examples/redis-unstable/deps/jemalloc/test/unit/prof_stats.c b/examples/redis-unstable/deps/jemalloc/test/unit/prof_stats.c deleted file mode 100644 index c88c4ae..0000000 --- a/examples/redis-unstable/deps/jemalloc/test/unit/prof_stats.c +++ /dev/null @@ -1,151 +0,0 @@ -#include "test/jemalloc_test.h" - -#define N_PTRS 3 - -static void -test_combinations(szind_t ind, size_t sizes_array[N_PTRS], - int flags_array[N_PTRS]) { -#define MALLCTL_STR_LEN 64 - assert(opt_prof && opt_prof_stats); - - char mallctl_live_str[MALLCTL_STR_LEN]; - char mallctl_accum_str[MALLCTL_STR_LEN]; - if (ind < SC_NBINS) { - malloc_snprintf(mallctl_live_str, MALLCTL_STR_LEN, - "prof.stats.bins.%u.live", (unsigned)ind); - malloc_snprintf(mallctl_accum_str, MALLCTL_STR_LEN, - "prof.stats.bins.%u.accum", (unsigned)ind); - } else { - malloc_snprintf(mallctl_live_str, MALLCTL_STR_LEN, - "prof.stats.lextents.%u.live", (unsigned)(ind - SC_NBINS)); - malloc_snprintf(mallctl_accum_str, MALLCTL_STR_LEN, - "prof.stats.lextents.%u.accum", (unsigned)(ind - SC_NBINS)); - } - - size_t stats_len = 2 * sizeof(uint64_t); - - uint64_t live_stats_orig[2]; - assert_d_eq(mallctl(mallctl_live_str, &live_stats_orig, &stats_len, - NULL, 0), 0, ""); - uint64_t accum_stats_orig[2]; - assert_d_eq(mallctl(mallctl_accum_str, &accum_stats_orig, &stats_len, - NULL, 0), 0, ""); - - void *ptrs[N_PTRS]; - - uint64_t live_req_sum = 0; - uint64_t live_count = 0; - uint64_t accum_req_sum = 0; - uint64_t accum_count = 0; - - for (size_t i = 0; i < N_PTRS; ++i) { - size_t sz = sizes_array[i]; - int flags = flags_array[i]; - void *p = mallocx(sz, flags); - assert_ptr_not_null(p, "malloc() failed"); - assert(TEST_MALLOC_SIZE(p) == sz_index2size(ind)); - ptrs[i] = p; - live_req_sum += sz; - live_count++; - accum_req_sum += sz; - accum_count++; - uint64_t live_stats[2]; - assert_d_eq(mallctl(mallctl_live_str, &live_stats, &stats_len, - NULL, 0), 0, ""); - expect_u64_eq(live_stats[0] - live_stats_orig[0], - live_req_sum, ""); - expect_u64_eq(live_stats[1] - live_stats_orig[1], - live_count, ""); - uint64_t accum_stats[2]; - assert_d_eq(mallctl(mallctl_accum_str, &accum_stats, &stats_len, - NULL, 0), 0, ""); - expect_u64_eq(accum_stats[0] - accum_stats_orig[0], - accum_req_sum, ""); - expect_u64_eq(accum_stats[1] - accum_stats_orig[1], - accum_count, ""); - } - - for (size_t i = 0; i < N_PTRS; ++i) { - size_t sz = sizes_array[i]; - int flags = flags_array[i]; - sdallocx(ptrs[i], sz, flags); - live_req_sum -= sz; - live_count--; - uint64_t live_stats[2]; - assert_d_eq(mallctl(mallctl_live_str, &live_stats, &stats_len, - NULL, 0), 0, ""); - expect_u64_eq(live_stats[0] - live_stats_orig[0], - live_req_sum, ""); - expect_u64_eq(live_stats[1] - live_stats_orig[1], - live_count, ""); - uint64_t accum_stats[2]; - assert_d_eq(mallctl(mallctl_accum_str, &accum_stats, &stats_len, - NULL, 0), 0, ""); - expect_u64_eq(accum_stats[0] - accum_stats_orig[0], - accum_req_sum, ""); - expect_u64_eq(accum_stats[1] - accum_stats_orig[1], - accum_count, ""); - } -#undef MALLCTL_STR_LEN -} - -static void -test_szind_wrapper(szind_t ind) { - size_t sizes_array[N_PTRS]; - int flags_array[N_PTRS]; - for (size_t i = 0, sz = sz_index2size(ind) - N_PTRS; i < N_PTRS; - ++i, ++sz) { - sizes_array[i] = sz; - flags_array[i] = 0; - } - test_combinations(ind, sizes_array, flags_array); -} - -TEST_BEGIN(test_prof_stats) { - test_skip_if(!config_prof); - test_szind_wrapper(0); - test_szind_wrapper(1); - test_szind_wrapper(2); - test_szind_wrapper(SC_NBINS); - test_szind_wrapper(SC_NBINS + 1); - test_szind_wrapper(SC_NBINS + 2); -} -TEST_END - -static void -test_szind_aligned_wrapper(szind_t ind, unsigned lg_align) { - size_t sizes_array[N_PTRS]; - int flags_array[N_PTRS]; - int flags = MALLOCX_LG_ALIGN(lg_align); - for (size_t i = 0, sz = sz_index2size(ind) - N_PTRS; i < N_PTRS; - ++i, ++sz) { - sizes_array[i] = sz; - flags_array[i] = flags; - } - test_combinations( - sz_size2index(sz_sa2u(sz_index2size(ind), 1 << lg_align)), - sizes_array, flags_array); -} - -TEST_BEGIN(test_prof_stats_aligned) { - test_skip_if(!config_prof); - for (szind_t ind = 0; ind < 10; ++ind) { - for (unsigned lg_align = 0; lg_align < 10; ++lg_align) { - test_szind_aligned_wrapper(ind, lg_align); - } - } - for (szind_t ind = SC_NBINS - 5; ind < SC_NBINS + 5; ++ind) { - for (unsigned lg_align = SC_LG_LARGE_MINCLASS - 5; - lg_align < SC_LG_LARGE_MINCLASS + 5; ++lg_align) { - test_szind_aligned_wrapper(ind, lg_align); - } - } -} -TEST_END - -int -main(void) { - return test( - test_prof_stats, - test_prof_stats_aligned); -} |
