mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-29 19:37:56 +00:00
e3fc4f7fba
* Initial commit Forked at:4adac40c07Parent branch: origin/master * Add a feature to create automatically a temporary directory for base path * doc fix and todos * use parking_lot instead * use refcell instead since we stay in the main thread * remove Clone derives * add test * solving dependency issue * clarifying doc * conflict argument with base-path * WIP Forked at:4adac40c07Parent branch: origin/master * revert dep deletion * fixing test and making base_path optional * hold basepath while the service is running * fixes * Update client/cli/src/params/shared_params.rs Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * Update client/service/Cargo.toml Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * Update client/cli/src/commands/mod.rs Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * Update client/service/src/config.rs Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com> * WIP Forked at:4adac40c07Parent branch: origin/master * improve doc Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com>
89 lines
2.8 KiB
Rust
89 lines
2.8 KiB
Rust
// This file is part of Substrate.
|
|
|
|
// Copyright (C) 2020 Parity Technologies (UK) Ltd.
|
|
// SPDX-License-Identifier: Apache-2.0
|
|
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
|
|
mod command;
|
|
|
|
use sc_cli::{ExecutionStrategy, WasmExecutionMethod};
|
|
use std::fmt::Debug;
|
|
|
|
/// The `benchmark` command used to benchmark FRAME Pallets.
|
|
#[derive(Debug, structopt::StructOpt)]
|
|
pub struct BenchmarkCmd {
|
|
/// Select a FRAME Pallet to benchmark, or `*` for all (in which case `extrinsic` must be `*`).
|
|
#[structopt(short, long)]
|
|
pub pallet: String,
|
|
|
|
/// Select an extrinsic inside the pallet to benchmark, or `*` for all.
|
|
#[structopt(short, long)]
|
|
pub extrinsic: String,
|
|
|
|
/// Select how many samples we should take across the variable components.
|
|
#[structopt(short, long, use_delimiter = true)]
|
|
pub steps: Vec<u32>,
|
|
|
|
/// Indicates lowest values for each of the component ranges.
|
|
#[structopt(long = "low", use_delimiter = true)]
|
|
pub lowest_range_values: Vec<u32>,
|
|
|
|
/// Indicates highest values for each of the component ranges.
|
|
#[structopt(long = "high", use_delimiter = true)]
|
|
pub highest_range_values: Vec<u32>,
|
|
|
|
/// Select how many repetitions of this benchmark should run.
|
|
#[structopt(short, long, default_value = "1")]
|
|
pub repeat: u32,
|
|
|
|
/// Print the raw results.
|
|
#[structopt(long = "raw")]
|
|
pub raw_data: bool,
|
|
|
|
/// Don't print the median-slopes linear regression analysis.
|
|
#[structopt(long)]
|
|
pub no_median_slopes: bool,
|
|
|
|
/// Don't print the min-squares linear regression analysis.
|
|
#[structopt(long)]
|
|
pub no_min_squares: bool,
|
|
|
|
#[allow(missing_docs)]
|
|
#[structopt(flatten)]
|
|
pub shared_params: sc_cli::SharedParams,
|
|
|
|
/// The execution strategy that should be used for benchmarks
|
|
#[structopt(
|
|
long = "execution",
|
|
value_name = "STRATEGY",
|
|
possible_values = &ExecutionStrategy::variants(),
|
|
case_insensitive = true,
|
|
)]
|
|
pub execution: Option<ExecutionStrategy>,
|
|
|
|
/// Method for executing Wasm runtime code.
|
|
#[structopt(
|
|
long = "wasm-execution",
|
|
value_name = "METHOD",
|
|
possible_values = &WasmExecutionMethod::enabled_variants(),
|
|
case_insensitive = true,
|
|
default_value = "Interpreted"
|
|
)]
|
|
pub wasm_method: WasmExecutionMethod,
|
|
|
|
/// Limit the memory the database cache can use.
|
|
#[structopt(long = "db-cache", value_name = "MiB", default_value = "128")]
|
|
pub database_cache_size: u32,
|
|
}
|