redis/deps/jemalloc
debing.sun abaed0d54c
Reduce the overhead from malloc usable (#14074)
Currently, in the zmalloc and zfree family functions, we rely on
`je_malloc_usable_size()` to obtain the usable size of a pointer for
memory statistics or to return it to the caller. However, this function
is relatively expensive, as it involves locking and rbtree lookups
within jemalloc. Reducing the frequency of these calls can yield
significant performance improvements.

---------

Co-authored-by: oranagra <oran@redislabs.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-06-12 22:31:26 +08:00
..
bin Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
build-aux Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
doc Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
doc_internal Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
include Reduce the overhead from malloc usable (#14074) 2025-06-12 22:31:26 +08:00
m4 Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
msvc Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
scripts Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
src Reduce the overhead from malloc usable (#14074) 2025-06-12 22:31:26 +08:00
test Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
.appveyor.yml Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
.autom4te.cfg Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
.cirrus.yml Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
.clang-format Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
.gitattributes Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
.gitignore Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
.travis.yml Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
COPYING Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
ChangeLog Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
INSTALL.md Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
Makefile.in Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
README Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
TUNING.md Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
VERSION Upgrade to jemalloc 5.3.0 2023-05-01 17:31:31 +03:00
autogen.sh Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
config.stamp.in Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
configure Upgrade to jemalloc 5.3.0 2023-05-01 17:31:31 +03:00
configure.ac Merge commit jemalloc 5.3.0 2023-05-01 15:38:08 +03:00
jemalloc.pc.in Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00
run_tests.sh Merge commit '220a0f0880419450c9409202aac1fab4b8be0719' as 'deps/jemalloc' 2021-10-10 18:26:48 +03:00

README

jemalloc is a general purpose malloc(3) implementation that emphasizes
fragmentation avoidance and scalable concurrency support.  jemalloc first came
into use as the FreeBSD libc allocator in 2005, and since then it has found its
way into numerous applications that rely on its predictable behavior.  In 2010
jemalloc development efforts broadened to include developer support features
such as heap profiling and extensive monitoring/tuning hooks.  Modern jemalloc
releases continue to be integrated back into FreeBSD, and therefore versatility
remains critical.  Ongoing development efforts trend toward making jemalloc
among the best allocators for a broad range of demanding applications, and
eliminating/mitigating weaknesses that have practical repercussions for real
world applications.

The COPYING file contains copyright and licensing information.

The INSTALL file contains information on how to configure, build, and install
jemalloc.

The ChangeLog file contains a brief summary of changes for each release.

URL: http://jemalloc.net/