Why This Matters
Jemalloc, the widely used memory allocator underpinning many performance-sensitive applications and language runtimes, has shipped version 5.4.0 with over 160 commits of cleanup, bug fixes, and new features. This matters to the tech industry because jemalloc is embedded in critical infrastructure (databases, browsers, server software), so improvements to memory pinning, tcache tuning, and portability can meaningfully affect performance and resource efficiency at scale.
Key Takeaways
- Adds EXTENT_ALLOC_FLAG_PINNED and related mallctl stats to better support non-reclaimable memory like HugeTLB pages.
- Introduces adaptive tcache fill/flush behavior based on demand, replacing several legacy fixed tuning controls—an incompatible change for existing configs.
- Improves portability, statistics formatting, and replaces a runtime flag with a compile-time option for infallible new, enabling better compiler optimizations.
There was an error while loading. Please reload this page .
Sorry, something went wrong.
This release contains over 160 commits, focusing on the technical debts
cleaning including refactorings, bug fixes, test coverage improvement, and
option cleanups. The release also includes portability improvements per
upstream issues report.
New features:
Add EXTENT_ALLOC_FLAG_PINNED so custom extent-allocation hooks can
mark non-reclaimable mappings, such as HugeTLB pages, for preferential
reuse outside the decay and purge pipeline. Add the mallctl interfaces
... continue reading