jemalloc
C libraryNote: the Rust allocator API is implemented for
jemalloc
in thejemallocator
crate.
jemalloc
is a general purpose memory allocation, its documentation
can be found here:
Current jemalloc version: 5.1.
This crate provides following cargo feature flags:
profiling
: configure jemalloc
with --enable-prof
.stats
: configure jemalloc
with --enable-stats
.debug
: configure jemalloc
with --enable-debug
.bg_thread
(enabled by default): when disabled, configure jemalloc
with
--with-malloc-conf=background_thread:false
.unprefixed_malloc_on_supported_platforms
:
when disabled, configure jemalloc
with --with-jemalloc-prefix=_rjem_
.
Enabling this causes symbols like malloc
to be emitted without a prefix,
overriding the ones defined by libc.
This usually causes C and C++ code linked in the same program to use jemalloc
as well.
On some platforms prefixes are always used because unprefixing is known to cause segfaults due to allocator mismatches.
See jemalloc/INSTALL.md
.
This project is licensed under either of
at your option.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in jemallocator by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.