Jemalloc tuning via Cargo config

This commit is contained in:
Michael Sproul
2022-03-07 18:47:05 +11:00
parent f93dfd0c28
commit e48ab54dcc
4 changed files with 21 additions and 3 deletions

View File

@@ -11,8 +11,11 @@ lighthouse_metrics = { path = "../lighthouse_metrics" }
lazy_static = "1.4.0"
libc = "0.2.79"
parking_lot = "0.11.0"
jemallocator = { version = "0.3.0", optional = true }
jemallocator = { version = "0.3.0", optional = true, features = ["background_threads"] }
jemalloc-sys = { version = "0.3.0", optional = true }
[features]
mallinfo2 = []
jemalloc = ["jemallocator"]
jemalloc = ["jemallocator", "jemalloc-sys"]
jemalloc-stats = ["jemallocator/stats"]
jemalloc-profiling = ["jemallocator/profiling"]

View File

@@ -1,2 +1,12 @@
//! Set the allocator to `jemalloc`.
//!
//! Due to `jemalloc` requiring configuration at compile time or immediately upon runtime
//! initialisation it is configured via a Cargo config file in `.cargo/config.toml`.
//!
//! The `jemalloc` tuning can be overriden by:
//!
//! A) `JEMALLOC_SYS_WITH_MALLOC_CONF` at compile-time.
//! B) `_RJEM_MALLOC_CONF` at runtime.
#[global_allocator]
static ALLOC: jemallocator::Jemalloc = jemallocator::Jemalloc;