Jemalloc 5.3.1 was released today with next month marking four years since the prior release, jemalloc 5.3.0. While the version bump may not seem like much, jemalloc 5.3.1 comes with many performance improvements, new features, and other enhancements.
Jemalloc 5.3.1 packs in nearly four hundred commits that provide portability improvements, performance optimizations, new features, and more. This release comes after Meta announced last month they were renewing their investment in jemalloc. This memory allocator library update has already endured widespread testing and use at Meta.
Some of the specifics of jemalloc 5.3.1 include supporting pvalloc, various new compile-time and run-time optimizations, enabling process_madvise usage, new mallctl interfaces, and more. The portability work in jemalloc 5.3.1 includes making sure it behaves more robustly across different compiler versions, support for C23’s free_sized and free_aligned_sized, and other portability enhancements.
Among the many optimizations in the jemalloc library include inlining to accelerate operator delete, optimizing the pairing heap’s performance, optimizing thread-local storage on Windows, redesigning the TCACHE garbage collector, improving reuse efficiency, and refactoring thread events.
Find out more about the jemalloc 5.3.1 release and downloads via GitHub.
