Skip to content
This repository was archived by the owner on Nov 15, 2023. It is now read-only.

benches: disable caching per default #12232

Merged
merged 4 commits into from
Sep 13, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions utils/frame/benchmarking-cli/src/block/cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,12 @@ pub struct BlockCmd {
#[allow(missing_docs)]
#[clap(flatten)]
pub params: BenchmarkParams,

/// Enable the Trie cache.
///
/// This should only be used for performance analysis and not for final results.
#[clap(long)]
pub enable_trie_cache: bool,
}

impl BlockCmd {
Expand Down Expand Up @@ -98,4 +104,12 @@ impl CliConfiguration for BlockCmd {
fn import_params(&self) -> Option<&ImportParams> {
Some(&self.import_params)
}

fn trie_cache_maximum_size(&self) -> Result<Option<usize>> {
if self.enable_trie_cache {
Ok(self.import_params().map(|x| x.trie_cache_maximum_size()).unwrap_or_default())
} else {
Ok(None)
}
}
}
14 changes: 14 additions & 0 deletions utils/frame/benchmarking-cli/src/extrinsic/cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,12 @@ pub struct ExtrinsicParams {
/// Extrinsic to benchmark.
#[clap(long, value_name = "EXTRINSIC", required_unless_present = "list")]
pub extrinsic: Option<String>,

/// Enable the Trie cache.
///
/// This should only be used for performance analysis and not for final results.
#[clap(long)]
pub enable_trie_cache: bool,
}

impl ExtrinsicCmd {
Expand Down Expand Up @@ -132,4 +138,12 @@ impl CliConfiguration for ExtrinsicCmd {
fn import_params(&self) -> Option<&ImportParams> {
Some(&self.import_params)
}

fn trie_cache_maximum_size(&self) -> Result<Option<usize>> {
if self.params.enable_trie_cache {
Ok(self.import_params().map(|x| x.trie_cache_maximum_size()).unwrap_or_default())
} else {
Ok(None)
}
}
}
14 changes: 14 additions & 0 deletions utils/frame/benchmarking-cli/src/overhead/cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,12 @@ pub struct OverheadParams {
/// Good for adding LICENSE headers.
#[clap(long, value_name = "PATH")]
pub header: Option<PathBuf>,

/// Enable the Trie cache.
///
/// This should only be used for performance analysis and not for final results.
#[clap(long)]
pub enable_trie_cache: bool,
}

/// Type of a benchmark.
Expand Down Expand Up @@ -156,4 +162,12 @@ impl CliConfiguration for OverheadCmd {
fn import_params(&self) -> Option<&ImportParams> {
Some(&self.import_params)
}

fn trie_cache_maximum_size(&self) -> Result<Option<usize>> {
if self.params.enable_trie_cache {
Ok(self.import_params().map(|x| x.trie_cache_maximum_size()).unwrap_or_default())
} else {
Ok(None)
}
}
}
14 changes: 10 additions & 4 deletions utils/frame/benchmarking-cli/src/storage/cmd.rs
Original file line number Diff line number Diff line change
Expand Up @@ -105,9 +105,15 @@ pub struct StorageParams {
/// Trie cache size in bytes.
///
/// Providing `0` will disable the cache.
#[clap(long, default_value = "1024")]
#[clap(long, value_name = "Bytes", default_value = "67108864")]
pub trie_cache_size: usize,

/// Enable the Trie cache.
///
/// This should only be used for performance analysis and not for final results.
#[clap(long)]
pub enable_trie_cache: bool,

/// Include child trees in benchmark.
#[clap(long)]
pub include_child_trees: bool,
Expand Down Expand Up @@ -220,10 +226,10 @@ impl CliConfiguration for StorageCmd {
}

fn trie_cache_maximum_size(&self) -> Result<Option<usize>> {
if self.params.trie_cache_size == 0 {
Ok(None)
} else {
if self.params.enable_trie_cache && self.params.trie_cache_size > 0 {
Ok(Some(self.params.trie_cache_size))
} else {
Ok(None)
}
}
}