mirror of
https://github.com/servo/servo.git
synced 2025-09-22 21:00:14 +01:00
Add an off-by-default allocator mode that tracks all live allocations with sizes and associated stack traces. We also track if each allocation is visited as part of a measuring heap usage in `about:memory`, allowing us to report on allocations that are not tracked yet. Right now the list of untracked allocations is dumped to stdout; I have a python script coming in a separate PR which makes it easier to perform analysis on the massive output. Testing: Manually tested with `./mach build -d --features servo_allocator/allocation-tracking` and visiting about:memory. Part of: #11559 --------- Signed-off-by: Josh Matthews <josh@joshmatthews.net>
35 lines
931 B
TOML
35 lines
931 B
TOML
[package]
|
|
name = "profile"
|
|
version.workspace = true
|
|
authors.workspace = true
|
|
license.workspace = true
|
|
edition.workspace = true
|
|
publish.workspace = true
|
|
rust-version.workspace = true
|
|
|
|
[lib]
|
|
name = "profile"
|
|
path = "lib.rs"
|
|
|
|
[dependencies]
|
|
base = { workspace = true }
|
|
ipc-channel = { workspace = true }
|
|
log = { workspace = true }
|
|
profile_traits = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true }
|
|
servo_allocator = { path = "../allocator" }
|
|
servo_config = { path = "../config" }
|
|
time = { workspace = true }
|
|
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
task_info = { path = "../../support/rust-task_info" }
|
|
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
regex = { workspace = true }
|
|
|
|
[target.'cfg(not(target_os = "windows"))'.dependencies]
|
|
libc = { workspace = true }
|
|
|
|
[target.'cfg(not(any(target_os = "windows", target_env = "ohos")))'.dependencies]
|
|
tikv-jemalloc-sys = { workspace = true }
|