mirror of
https://github.com/sigp/lighthouse.git
synced 2026-05-08 09:16:00 +00:00
Use tikv-jemallocator instead of jemallocator (#6354)
* Use tikv-jemallocator instead of jemallocator * Merge branch 'unstable' into tikv-jemallocator * Bump tikv-jemallocator and tikv-jemalloc-ctl
This commit is contained in:
committed by
GitHub
parent
c824142a6d
commit
0c5e25b62a
@@ -1,4 +1,3 @@
|
|||||||
[env]
|
[env]
|
||||||
# Set the number of arenas to 16 when using jemalloc.
|
# Set the number of arenas to 16 when using jemalloc.
|
||||||
JEMALLOC_SYS_WITH_MALLOC_CONF = "abort_conf:true,narenas:16"
|
JEMALLOC_SYS_WITH_MALLOC_CONF = "abort_conf:true,narenas:16"
|
||||||
|
|
||||||
|
|||||||
66
Cargo.lock
generated
66
Cargo.lock
generated
@@ -4355,37 +4355,6 @@ version = "1.0.11"
|
|||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
|
checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "jemalloc-ctl"
|
|
||||||
version = "0.5.4"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "7cffc705424a344c054e135d12ee591402f4539245e8bbd64e6c9eaa9458b63c"
|
|
||||||
dependencies = [
|
|
||||||
"jemalloc-sys",
|
|
||||||
"libc",
|
|
||||||
"paste",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "jemalloc-sys"
|
|
||||||
version = "0.5.4+5.3.0-patched"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "ac6c1946e1cea1788cbfde01c993b52a10e2da07f4bac608228d1bed20bfebf2"
|
|
||||||
dependencies = [
|
|
||||||
"cc",
|
|
||||||
"libc",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
|
||||||
name = "jemallocator"
|
|
||||||
version = "0.5.4"
|
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
|
||||||
checksum = "a0de374a9f8e63150e6f5e8a60cc14c668226d7a347d8aee1a45766e3c4dd3bc"
|
|
||||||
dependencies = [
|
|
||||||
"jemalloc-sys",
|
|
||||||
"libc",
|
|
||||||
]
|
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "jobserver"
|
name = "jobserver"
|
||||||
version = "0.1.32"
|
version = "0.1.32"
|
||||||
@@ -5413,11 +5382,11 @@ dependencies = [
|
|||||||
name = "malloc_utils"
|
name = "malloc_utils"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"jemalloc-ctl",
|
|
||||||
"jemallocator",
|
|
||||||
"libc",
|
"libc",
|
||||||
"lighthouse_metrics",
|
"lighthouse_metrics",
|
||||||
"parking_lot 0.12.3",
|
"parking_lot 0.12.3",
|
||||||
|
"tikv-jemalloc-ctl",
|
||||||
|
"tikv-jemallocator",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
@@ -8622,6 +8591,37 @@ dependencies = [
|
|||||||
"num_cpus",
|
"num_cpus",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tikv-jemalloc-ctl"
|
||||||
|
version = "0.6.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "f21f216790c8df74ce3ab25b534e0718da5a1916719771d3fec23315c99e468b"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"paste",
|
||||||
|
"tikv-jemalloc-sys",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tikv-jemalloc-sys"
|
||||||
|
version = "0.6.0+5.3.0-1-ge13ca993e8ccb9ba9847cc330696e02839f328f7"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "cd3c60906412afa9c2b5b5a48ca6a5abe5736aec9eb48ad05037a677e52e4e2d"
|
||||||
|
dependencies = [
|
||||||
|
"cc",
|
||||||
|
"libc",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tikv-jemallocator"
|
||||||
|
version = "0.6.0"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "4cec5ff18518d81584f477e9bfdf957f5bb0979b0bac3af4ca30b5b3ae2d2865"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"tikv-jemalloc-sys",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "time"
|
name = "time"
|
||||||
version = "0.3.36"
|
version = "0.3.36"
|
||||||
|
|||||||
@@ -8,16 +8,19 @@ edition = { workspace = true }
|
|||||||
lighthouse_metrics = { workspace = true }
|
lighthouse_metrics = { workspace = true }
|
||||||
libc = "0.2.79"
|
libc = "0.2.79"
|
||||||
parking_lot = { workspace = true }
|
parking_lot = { workspace = true }
|
||||||
jemalloc-ctl = { version = "0.5.0", optional = true }
|
tikv-jemalloc-ctl = { version = "0.6.0", optional = true, features = ["stats"] }
|
||||||
|
|
||||||
# Jemalloc's background_threads feature requires Linux (pthreads).
|
# Jemalloc's background_threads feature requires Linux (pthreads).
|
||||||
[target.'cfg(target_os = "linux")'.dependencies]
|
[target.'cfg(target_os = "linux")'.dependencies]
|
||||||
jemallocator = { version = "0.5.0", optional = true, features = ["stats", "background_threads"] }
|
tikv-jemallocator = { version = "0.6.0", optional = true, features = [
|
||||||
|
"stats",
|
||||||
|
"background_threads",
|
||||||
|
] }
|
||||||
|
|
||||||
[target.'cfg(not(target_os = "linux"))'.dependencies]
|
[target.'cfg(not(target_os = "linux"))'.dependencies]
|
||||||
jemallocator = { version = "0.5.0", optional = true, features = ["stats"] }
|
tikv-jemallocator = { version = "0.6.0", optional = true, features = ["stats"] }
|
||||||
|
|
||||||
[features]
|
[features]
|
||||||
mallinfo2 = []
|
mallinfo2 = []
|
||||||
jemalloc = ["jemallocator", "jemalloc-ctl"]
|
jemalloc = ["tikv-jemallocator", "tikv-jemalloc-ctl"]
|
||||||
jemalloc-profiling = ["jemallocator/profiling"]
|
jemalloc-profiling = ["tikv-jemallocator/profiling"]
|
||||||
|
|||||||
@@ -7,12 +7,12 @@
|
|||||||
//!
|
//!
|
||||||
//! A) `JEMALLOC_SYS_WITH_MALLOC_CONF` at compile-time.
|
//! A) `JEMALLOC_SYS_WITH_MALLOC_CONF` at compile-time.
|
||||||
//! B) `_RJEM_MALLOC_CONF` at runtime.
|
//! B) `_RJEM_MALLOC_CONF` at runtime.
|
||||||
use jemalloc_ctl::{arenas, epoch, stats, Error};
|
|
||||||
use lighthouse_metrics::{set_gauge, try_create_int_gauge, IntGauge};
|
use lighthouse_metrics::{set_gauge, try_create_int_gauge, IntGauge};
|
||||||
use std::sync::LazyLock;
|
use std::sync::LazyLock;
|
||||||
|
use tikv_jemalloc_ctl::{arenas, epoch, stats, Error};
|
||||||
|
|
||||||
#[global_allocator]
|
#[global_allocator]
|
||||||
static ALLOC: jemallocator::Jemalloc = jemallocator::Jemalloc;
|
static ALLOC: tikv_jemallocator::Jemalloc = tikv_jemallocator::Jemalloc;
|
||||||
|
|
||||||
// Metrics for jemalloc.
|
// Metrics for jemalloc.
|
||||||
pub static NUM_ARENAS: LazyLock<lighthouse_metrics::Result<IntGauge>> =
|
pub static NUM_ARENAS: LazyLock<lighthouse_metrics::Result<IntGauge>> =
|
||||||
|
|||||||
Reference in New Issue
Block a user