Home
last modified time | relevance | path

Searched refs:arena (Results 1 – 25 of 35) sorted by relevance

12

/f-stack/app/redis-5.0.5/deps/jemalloc/src/
H A Darena.c93 + arena_stats_read_zu(tsdn, &arena->stats, &arena->stats.mapped)); in arena_stats_merge()
214 extents_dalloc(tsdn, arena, r_extent_hooks, &arena->extents_dirty, in arena_extents_dirty_dalloc()
712 return arena_decay_ms_set(tsdn, arena, &arena->decay_dirty, in arena_dirty_decay_ms_set()
719 return arena_decay_ms_set(tsdn, arena, &arena->decay_muzzy, in arena_muzzy_decay_ms_set()
800 arena_stats_sub_zu(tsdn, &arena->stats, &arena->stats.mapped, in arena_decay_stashed()
885 return arena_decay_impl(tsdn, arena, &arena->decay_dirty, in arena_decay_dirty()
892 return arena_decay_impl(tsdn, arena, &arena->decay_muzzy, in arena_decay_muzzy()
1376 arena = arena_choose(tsdn_tsd(tsdn), arena); in arena_malloc_hard()
1763 arena_t *arena; in arena_new() local
1909 return arena; in arena_new()
[all …]
H A Dlarge.c28 assert(!tsdn_null(tsdn) || arena != NULL); in large_palloc()
45 arena = arena_choose(tsdn_tsd(tsdn), arena); in large_palloc()
53 if (!arena_is_auto(arena)) { in large_palloc()
55 malloc_mutex_lock(tsdn, &arena->large_mtx); in large_palloc()
56 extent_list_append(&arena->large, extent); in large_palloc()
70 arena_decay_tick(tsdn, arena); in large_palloc()
97 arena_t *arena = extent_arena_get(extent); in large_ralloc_no_move_shrink() local
133 arena_t *arena = extent_arena_get(extent); in large_ralloc_no_move_expand() local
313 if (!arena_is_auto(arena)) { in large_dalloc_prep_impl()
322 if (!arena_is_auto(arena)) { in large_dalloc_prep_impl()
[all …]
H A Dextent.c1183 arena_t *arena; in extent_alloc_default() local
1191 assert(arena != NULL); in extent_alloc_default()
1210 pre_reentrancy(tsd, arena); in extent_hook_pre_reentrancy()
1270 arena_ind_get(arena)); in extent_grow_retained()
1355 arena->extent_grow_next = arena->retain_grow_limit; in extent_grow_retained()
1752 extent_record(tsdn, arena, r_extent_hooks, &arena->extents_retained, in extent_dalloc_wrapper()
1857 arena_ind_get(arena))); in extent_decommit_wrapper()
1896 arena_ind_get(arena)); in extent_purge_lazy_impl()
1943 arena_ind_get(arena)); in extent_purge_forced_impl()
2028 arena_ind_get(arena)); in extent_split_impl()
[all …]
H A Dtcache.c111 arena_t *arena = tcache->arena; in tcache_bin_flush_small() local
112 assert(arena != NULL); in tcache_bin_flush_small()
196 arena_t *arena = tcache->arena; in tcache_bin_flush_large() local
197 assert(arena != NULL); in tcache_bin_flush_large()
289 tcache->arena = arena; in tcache_arena_associate()
309 arena_t *arena = tcache->arena; in tcache_arena_dissociate() local
331 tcache->arena = NULL; in tcache_arena_dissociate()
360 tcache->arena = NULL; in tcache_init()
412 tcache->arena = NULL; in tsd_tcache_data_init()
413 arena_t *arena; in tsd_tcache_data_init() local
[all …]
H A Dextent_dss.c110 extent_alloc_dss(tsdn_t *tsdn, arena_t *arena, void *new_addr, size_t size, in extent_alloc_dss() argument
126 gap = extent_alloc(tsdn, arena); in extent_alloc_dss()
156 extent_init(gap, arena, gap_addr_page, in extent_alloc_dss()
158 arena_extent_sn_next(arena), in extent_alloc_dss()
188 extent_dalloc_gap(tsdn, arena, gap); in extent_alloc_dss()
190 extent_dalloc(tsdn, arena, gap); in extent_alloc_dss()
200 extent_init(&extent, arena, ret, size, in extent_alloc_dss()
205 arena, &extent_hooks, &extent, 0, in extent_alloc_dss()
226 extent_dalloc(tsdn, arena, gap); in extent_alloc_dss()
H A Djemalloc.c313 arena_t *arena; in arena_init_locked() local
330 return arena; in arena_init_locked()
336 return arena; in arena_init_locked()
359 arena_t *arena; in arena_init() local
367 return arena; in arena_init()
395 arena_t *arena; in arena_unbind() local
574 ret = arena; in arena_choose_hard()
610 arena_t *arena; in arena_cleanup() local
1675 arena_t *arena; in imalloc_no_sample() local
1699 arena = NULL; in imalloc_no_sample()
[all …]
H A Dctl.c2031 if (*arena == NULL || arena_is_auto(*arena)) { in arena_i_reset_destroy_helper()
2079 arena_t *arena; in arena_i_reset_ctl() local
2099 arena_t *arena; in arena_i_destroy_ctl() local
2108 if (arena_nthreads_get(arena, false) != 0 || arena_nthreads_get(arena, in arena_i_destroy_ctl()
2201 arena_t *arena; in arena_i_decay_ms_ctl_impl() local
2205 if (arena == NULL) { in arena_i_decay_ms_ctl_impl()
2252 arena_t *arena; in arena_i_extent_hooks_ctl() local
2307 arena_t *arena; in arena_i_retain_grow_limit_ctl() local
2483 arena_t *arena; in arenas_lookup_ctl() local
2494 if (arena == NULL) in arenas_lookup_ctl()
[all …]
H A Dbackground_thread.c59 void background_thread_interval_check(tsdn_t *tsdn, arena_t *arena, in background_thread_create()
207 &arena->extents_dirty);
212 &arena->extents_muzzy);
293 arena_t *arena = arena_get(tsdn, i, false);
294 if (!arena) {
297 arena_decay(tsdn, arena, true, false);
303 arena);
645 background_thread_interval_check(tsdn_t *tsdn, arena_t *arena,
648 arena);
709 (extents_npages_get(&arena->extents_dirty) > 0 ||
[all …]
/f-stack/app/redis-5.0.5/deps/jemalloc/include/jemalloc/internal/
H A Darena_externs.h39 ssize_t arena_dirty_decay_ms_get(arena_t *arena);
41 ssize_t arena_muzzy_decay_ms_get(arena_t *arena);
45 void arena_reset(tsd_t *tsd, arena_t *arena);
46 void arena_destroy(tsd_t *tsd, arena_t *arena);
69 dss_prec_t arena_dss_prec_get(arena_t *arena);
80 size_t arena_extent_sn_next(arena_t *arena);
83 void arena_prefork0(tsdn_t *tsdn, arena_t *arena);
84 void arena_prefork1(tsdn_t *tsdn, arena_t *arena);
85 void arena_prefork2(tsdn_t *tsdn, arena_t *arena);
86 void arena_prefork3(tsdn_t *tsdn, arena_t *arena);
[all …]
H A Dextent_externs.h15 extent_t *extent_alloc(tsdn_t *tsdn, arena_t *arena);
18 extent_hooks_t *extent_hooks_get(arena_t *arena);
19 extent_hooks_t *extent_hooks_set(tsd_t *tsd, arena_t *arena,
34 extent_t *extents_alloc(tsdn_t *tsdn, arena_t *arena,
38 void extents_dalloc(tsdn_t *tsdn, arena_t *arena,
40 extent_t *extents_evict(tsdn_t *tsdn, arena_t *arena,
49 void extent_dalloc_wrapper(tsdn_t *tsdn, arena_t *arena,
51 void extent_destroy_wrapper(tsdn_t *tsdn, arena_t *arena,
53 bool extent_commit_wrapper(tsdn_t *tsdn, arena_t *arena,
56 bool extent_decommit_wrapper(tsdn_t *tsdn, arena_t *arena,
[all …]
H A Djemalloc_internal_inlines_b.h11 if (arena != NULL) { in arena_choose_impl()
12 return arena; in arena_choose_impl()
26 if (tcache->arena != NULL) { in arena_choose_impl()
28 assert(tcache->arena == in arena_choose_impl()
30 if (tcache->arena != ret) { in arena_choose_impl()
62 arena_choose(tsd_t *tsd, arena_t *arena) { in arena_choose() argument
63 return arena_choose_impl(tsd, arena, false); in arena_choose()
67 arena_ichoose(tsd_t *tsd, arena_t *arena) { in arena_ichoose() argument
68 return arena_choose_impl(tsd, arena, true); in arena_ichoose()
72 arena_is_auto(arena_t *arena) { in arena_is_auto() argument
[all …]
H A Darena_inlines_a.h5 arena_ind_get(const arena_t *arena) { in arena_ind_get() argument
6 return base_ind_get(arena->base); in arena_ind_get()
10 arena_internal_add(arena_t *arena, size_t size) { in arena_internal_add() argument
11 atomic_fetch_add_zu(&arena->stats.internal, size, ATOMIC_RELAXED); in arena_internal_add()
15 arena_internal_sub(arena_t *arena, size_t size) { in arena_internal_sub() argument
16 atomic_fetch_sub_zu(&arena->stats.internal, size, ATOMIC_RELAXED); in arena_internal_sub()
20 arena_internal_get(arena_t *arena) { in arena_internal_get() argument
21 return atomic_load_zu(&arena->stats.internal, ATOMIC_RELAXED); in arena_internal_get()
25 arena_prof_accum(tsdn_t *tsdn, arena_t *arena, uint64_t accumbytes) { in arena_prof_accum() argument
32 return prof_accum_add(tsdn, &arena->prof_accum, accumbytes); in arena_prof_accum()
H A Djemalloc_internal_inlines_c.h42 bool is_internal, arena_t *arena, bool slow_path) { in iallocztm() argument
47 assert(!is_internal || arena == NULL || arena_is_auto(arena)); in iallocztm()
68 tcache_t *tcache, bool is_internal, arena_t *arena) { in ipallocztm() argument
74 assert(!is_internal || arena == NULL || arena_is_auto(arena)); in ipallocztm()
88 tcache_t *tcache, arena_t *arena) { in ipalloct() argument
137 arena_t *arena) { in iralloct_realign() argument
147 p = ipalloct(tsdn, usize, alignment, zero, tcache, arena); in iralloct_realign()
174 bool zero, tcache_t *tcache, arena_t *arena) { in iralloct() argument
187 zero, tcache, arena); in iralloct()
229 arena_t *arena = extent_arena_get(slab); in iget_defrag_hint() local
[all …]
H A Dbackground_thread_inlines.h16 arena_background_thread_info_get(arena_t *arena) { in arena_background_thread_info_get() argument
17 unsigned arena_ind = arena_ind_get(arena); in arena_background_thread_info_get()
44 arena_background_thread_inactivity_check(tsdn_t *tsdn, arena_t *arena, in arena_background_thread_inactivity_check() argument
50 arena_background_thread_info_get(arena); in arena_background_thread_inactivity_check()
52 background_thread_interval_check(tsdn, arena, in arena_background_thread_inactivity_check()
53 &arena->decay_dirty, 0); in arena_background_thread_inactivity_check()
H A Dtcache_inlines.h42 tcache_alloc_small(tsd_t *tsd, arena_t *arena, tcache_t *tcache, in tcache_alloc_small() argument
55 arena = arena_choose(tsd, arena); in tcache_alloc_small()
56 if (unlikely(arena == NULL)) { in tcache_alloc_small()
60 ret = tcache_alloc_small_hard(tsd_tsdn(tsd), arena, tcache, in tcache_alloc_small()
104 tcache_alloc_large(tsd_t *tsd, arena_t *arena, tcache_t *tcache, size_t size, in tcache_alloc_large() argument
119 arena = arena_choose(tsd, arena); in tcache_alloc_large()
120 if (unlikely(arena == NULL)) { in tcache_alloc_large()
124 ret = large_malloc(tsd_tsdn(tsd), arena, sz_s2u(size), zero); in tcache_alloc_large()
H A Dtcache_externs.h32 void *tcache_alloc_small_hard(tsdn_t *tsdn, arena_t *arena, tcache_t *tcache,
39 arena_t *arena);
42 void tcache_stats_merge(tsdn_t *tsdn, tcache_t *tcache, arena_t *arena);
47 void tcache_arena_associate(tsdn_t *tsdn, tcache_t *tcache, arena_t *arena);
H A Darena_inlines_b.h61 arena_decay_ticks(tsdn_t *tsdn, arena_t *arena, unsigned nticks) { in arena_decay_ticks() argument
69 decay_ticker = decay_ticker_get(tsd, arena_ind_get(arena)); in arena_decay_ticks()
74 arena_decay(tsdn, arena, false, false); in arena_decay_ticks()
79 arena_decay_tick(tsdn_t *tsdn, arena_t *arena) { in arena_decay_tick() argument
80 malloc_mutex_assert_not_owner(tsdn, &arena->decay_dirty.mtx); in arena_decay_tick()
81 malloc_mutex_assert_not_owner(tsdn, &arena->decay_muzzy.mtx); in arena_decay_tick()
83 arena_decay_ticks(tsdn, arena, 1); in arena_decay_tick()
87 arena_malloc(tsdn_t *tsdn, arena_t *arena, size_t size, szind_t ind, bool zero, in arena_malloc() argument
94 return tcache_alloc_small(tsdn_tsd(tsdn), arena, in arena_malloc()
98 return tcache_alloc_large(tsdn_tsd(tsdn), arena, in arena_malloc()
[all …]
H A Dlarge_externs.h4 void *large_malloc(tsdn_t *tsdn, arena_t *arena, size_t usize, bool zero);
5 void *large_palloc(tsdn_t *tsdn, arena_t *arena, size_t usize, size_t alignment,
9 void *large_ralloc(tsdn_t *tsdn, arena_t *arena, extent_t *extent, size_t usize,
H A Djemalloc_internal_inlines_a.h130 assert(tsd_tcachep_get(tsd)->arena == NULL || in tcache_available()
149 pre_reentrancy(tsd_t *tsd, arena_t *arena) { in pre_reentrancy() argument
151 assert(arena != arena_get(tsd_tsdn(tsd), 0, false)); in pre_reentrancy()
H A Dextent_inlines.h180 extent_arena_set(extent_t *extent, arena_t *arena) { in extent_arena_set() argument
181 unsigned arena_ind = (arena != NULL) ? arena_ind_get(arena) : ((1U << in extent_arena_set()
303 extent_init(extent_t *extent, arena_t *arena, void *addr, size_t size, in extent_init() argument
308 extent_arena_set(extent, arena); in extent_init()
/f-stack/freebsd/vm/
H A Dvm_kern.c403 vmem_t *arena; in kmem_malloc_domain() local
408 arena = vm_dom[domain].vmd_kernel_arena; in kmem_malloc_domain()
410 arena = vm_dom[domain].vmd_kernel_rwx_arena; in kmem_malloc_domain()
417 vmem_free(arena, addr, size); in kmem_malloc_domain()
561 struct vmem *arena; in _kmem_unback() local
578 arena = vm_dom[domain].vmd_kernel_arena; in _kmem_unback()
580 arena = vm_dom[domain].vmd_kernel_rwx_arena; in _kmem_unback()
589 return (arena); in _kmem_unback()
608 struct vmem *arena; in kmem_free() local
612 if (arena != NULL) in kmem_free()
[all …]
/f-stack/app/redis-5.0.5/deps/jemalloc/include/jemalloc/
H A Djemalloc_macros.h.in30 * Bias arena index bits so that 0 encodes "use an automatically chosen arena".
35 * Use as arena index in "arena.<i>.{purge,decay,dss}" and
43 * mallctl("arena." STRINGIFY(MALLCTL_ARENAS_ALL) ".purge", NULL, NULL, NULL,
48 * Use as arena index in "stats.arenas.<i>.*" mallctl interfaces to select
/f-stack/app/redis-5.0.5/deps/jemalloc/
H A DTUNING.md52 However high arena count may also increase overall memory fragmentation,
57 Suggested: if low parallelism is expected, try lower arena count while
62 Enable dynamic thread to arena association based on running CPU. This has
81 e.g. `dirty_decay_ms:5000,muzzy_decay_ms:5000`), and lower arena count
108 dedicated arena with
112 time](http://jemalloc.net/jemalloc.3.html#arena.i.dirty_decay_ms) if
115 * [Extent hooks](http://jemalloc.net/jemalloc.3.html#arena.i.extent_hooks)
123 * [Explicit thread-to-arena
124 binding](http://jemalloc.net/jemalloc.3.html#thread.arena)
H A DChangeLog174 - Implement optional per-CPU arena support; threads choose which arena to use
209 + arena.<i>.initialized
210 + arena.<i>.destroy
212 + arena.<i>.extent_hooks
318 + arena.<i>.lg_dirty_mult
319 + arena.<i>.decay_time
320 + arena.<i>.chunk_hooks
533 + arena.<i>.decay
534 + arena.<i>.decay_time
763 - Maintain dirty runs in per arena LRUs rather than in per arena trees of
[all …]
/f-stack/app/redis-5.0.5/deps/jemalloc/test/unit/
H A Dmallctl.c725 unsigned narenas_before, arena, narenas_after; in TEST_BEGIN() local
730 assert_d_eq(mallctl("arenas.create", (void *)&arena, &sz, NULL, 0), 0, in TEST_BEGIN()
737 assert_u_eq(arena, narenas_after-1, "Unexpected arena index"); in TEST_BEGIN()
742 unsigned arena, arena1; in TEST_BEGIN() local
746 assert_d_eq(mallctl("arenas.create", (void *)&arena, &sz, NULL, 0), 0, in TEST_BEGIN()
748 ptr = mallocx(42, MALLOCX_ARENA(arena) | MALLOCX_TCACHE_NONE); in TEST_BEGIN()
752 assert_u_eq(arena, arena1, "Unexpected arena index"); in TEST_BEGIN()

12