jemalloc/test/integration
Qi Wang ec532e2c5c Implement per-CPU arena.
The new feature, opt.percpu_arena, determines thread-arena association
dynamically based CPU id. Three modes are supported: "percpu", "phycpu"
and disabled.

"percpu" uses the current core id (with help from sched_getcpu())
directly as the arena index, while "phycpu" will assign threads on the
same physical CPU to the same arena. In other words, "percpu" means # of
arenas == # of CPUs, while "phycpu" has # of arenas == 1/2 * (# of
CPUs). Note that no runtime check on whether hyper threading is enabled
is added yet.

When enabled, threads will be migrated between arenas when a CPU change
is detected. In the current design, to reduce overhead from reading CPU
id, each arena tracks the thread accessed most recently. When a new
thread comes in, we will read CPU id and update arena if necessary.
2017-03-08 23:19:01 -08:00
..
cpp
aligned_alloc.c
allocated.c
extent.c
extent.sh
mallocx.c
mallocx.sh
MALLOCX_ARENA.c
overflow.c
posix_memalign.c
rallocx.c
sdallocx.c
thread_arena.c Implement per-CPU arena. 2017-03-08 23:19:01 -08:00
thread_tcache_enabled.c
xallocx.c
xallocx.sh