From e40494c6c1cc17eeb8bc43e1d3ad0ce82c39f6d1 Mon Sep 17 00:00:00 2001 From: Aleksey Kladov Date: Fri, 12 Jul 2019 18:04:48 +0300 Subject: account for dependencies when showing memory usage --- crates/ra_cli/src/analysis_stats.rs | 4 ++++ crates/ra_ide_api/src/change.rs | 7 +++++++ 2 files changed, 11 insertions(+) (limited to 'crates') diff --git a/crates/ra_cli/src/analysis_stats.rs b/crates/ra_cli/src/analysis_stats.rs index b8ad6aebc..c2a2b66d5 100644 --- a/crates/ra_cli/src/analysis_stats.rs +++ b/crates/ra_cli/src/analysis_stats.rs @@ -115,9 +115,13 @@ pub fn run(verbose: bool, memory_usage: bool, path: &Path, only: Option<&str>) - println!("Analysis: {:?}, {}", analysis_time.elapsed(), ra_prof::memory_usage()); if memory_usage { + drop(db); for (name, bytes) in host.per_query_memory_usage() { println!("{:>8} {}", bytes, name) } + let before = ra_prof::memory_usage(); + drop(host); + println!("leftover: {}", before.allocated - ra_prof::memory_usage().allocated) } Ok(()) diff --git a/crates/ra_ide_api/src/change.rs b/crates/ra_ide_api/src/change.rs index efc9a92de..179f17ca4 100644 --- a/crates/ra_ide_api/src/change.rs +++ b/crates/ra_ide_api/src/change.rs @@ -252,6 +252,13 @@ impl RootDatabase { let q: $q = Default::default(); let name = format!("{:?}", q); acc.push((name, before - after)); + + let before = memory_usage().allocated; + self.query($q).sweep(sweep.discard_everything()); + let after = memory_usage().allocated; + let q: $q = Default::default(); + let name = format!("{:?} (deps)", q); + acc.push((name, before - after)); )*} } sweep_each_query![ -- cgit v1.2.3