uses tikv_jemallocator::Jemalloc as the global allocator (#20149)
https://github.com/solana-labs/solana/pull/16346 switched default allocator from jemalloc to system allocator, but that has shown regressions in form of higher ram usage causing nodes go OOM: https://discord.com/channels/428295358100013066/439194979856809985/890413193858539580 This commit sets jemalloc as the default allocator.
This commit is contained in:
parent
3aba89d440
commit
2cf081d863
|
@ -5723,6 +5723,7 @@ dependencies = [
|
||||||
"solana-version",
|
"solana-version",
|
||||||
"solana-vote-program",
|
"solana-vote-program",
|
||||||
"symlink",
|
"symlink",
|
||||||
|
"tikv-jemallocator",
|
||||||
]
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
|
@ -6138,6 +6139,27 @@ dependencies = [
|
||||||
"once_cell",
|
"once_cell",
|
||||||
]
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tikv-jemalloc-sys"
|
||||||
|
version = "0.4.2+5.2.1-patched.2"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "5844e429d797c62945a566f8da4e24c7fe3fbd5d6617fd8bf7a0b7dc1ee0f22e"
|
||||||
|
dependencies = [
|
||||||
|
"cc",
|
||||||
|
"fs_extra",
|
||||||
|
"libc",
|
||||||
|
]
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "tikv-jemallocator"
|
||||||
|
version = "0.4.1"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
checksum = "3c14a5a604eb8715bc5785018a37d00739b180bcf609916ddf4393d33d49ccdf"
|
||||||
|
dependencies = [
|
||||||
|
"libc",
|
||||||
|
"tikv-jemalloc-sys",
|
||||||
|
]
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "time"
|
name = "time"
|
||||||
version = "0.1.43"
|
version = "0.1.43"
|
||||||
|
|
|
@ -49,6 +49,9 @@ solana-version = { path = "../version", version = "=1.8.0" }
|
||||||
solana-vote-program = { path = "../programs/vote", version = "=1.8.0" }
|
solana-vote-program = { path = "../programs/vote", version = "=1.8.0" }
|
||||||
symlink = "0.1.0"
|
symlink = "0.1.0"
|
||||||
|
|
||||||
|
[target.'cfg(not(target_env = "msvc"))'.dependencies]
|
||||||
|
jemallocator = {package = "tikv-jemallocator", version = "0.4.1"}
|
||||||
|
|
||||||
[target."cfg(unix)".dependencies]
|
[target."cfg(unix)".dependencies]
|
||||||
libc = "0.2.102"
|
libc = "0.2.102"
|
||||||
signal-hook = "0.2.3"
|
signal-hook = "0.2.3"
|
||||||
|
|
|
@ -86,6 +86,13 @@ use {
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#[cfg(not(target_env = "msvc"))]
|
||||||
|
use jemallocator::Jemalloc;
|
||||||
|
|
||||||
|
#[cfg(not(target_env = "msvc"))]
|
||||||
|
#[global_allocator]
|
||||||
|
static GLOBAL: Jemalloc = Jemalloc;
|
||||||
|
|
||||||
#[derive(Debug, PartialEq)]
|
#[derive(Debug, PartialEq)]
|
||||||
enum Operation {
|
enum Operation {
|
||||||
Initialize,
|
Initialize,
|
||||||
|
|
Loading…
Reference in New Issue