Tmux 3.5(github.com)
github.com
Tmux 3.5
https://github.com/tmux/tmux/releases/tag/3.5
2 comments
jemalloc is a thread-caching allocator (there are lots of em).
in a multi-threaded environment (basically literally every environment today) multiple threads needing/requesting/expecting allocations will cause lock contention on the data structures that malloc uses to manage memory. thread-caching allocators mitigate the problem by having basically two areas/arenas/places that they allocate from - a local and a global. local means small and local to each thread, and allocations therefrom are fast because they don't require locking. and conversely for global.
in a multi-threaded environment (basically literally every environment today) multiple threads needing/requesting/expecting allocations will cause lock contention on the data structures that malloc uses to manage memory. thread-caching allocators mitigate the problem by having basically two areas/arenas/places that they allocate from - a local and a global. local means small and local to each thread, and allocations therefrom are fast because they don't require locking. and conversely for global.
Somebody with the knowledge care to explain?