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

update weights, attempt two (0.9.31) #6189

Merged
merged 7 commits into from
Oct 28, 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
370 changes: 190 additions & 180 deletions Cargo.lock

Large diffs are not rendered by default.

8 changes: 6 additions & 2 deletions runtime/kusama/constants/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,14 @@ smallvec = "1.8.0"
frame-support = { git = "https://github.com/paritytech/substrate", default-features = false , branch = "polkadot-v0.9.31" }
primitives = { package = "polkadot-primitives", path = "../../../primitives", default-features = false }
runtime-common = { package = "polkadot-runtime-common", path = "../../common", default-features = false }
sp-runtime = { git = "https://github.com/paritytech/substrate", default-features = false , branch = "polkadot-v0.9.31" }
sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.31", default-features = false }
sp-weights = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.31", default-features = false }
sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.31", default-features = false }

[features]
default = ["std"]
std = [
"sp-runtime/std"
"sp-core/std",
"sp-runtime/std",
"sp-weights/std"
]
57 changes: 27 additions & 30 deletions runtime/kusama/constants/src/weights/block_weights.rs
Original file line number Diff line number Diff line change
@@ -1,28 +1,26 @@
// This file is part of Substrate.
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
// This file is part of Polkadot.

// Copyright (C) 2022 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Polkadot is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// 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.
// Polkadot is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
//! DATE: 2022-08-19 (Y/M/D)
//! DATE: 2022-10-25 (Y/M/D)
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
//!
//! SHORT-NAME: `block`, LONG-NAME: `BlockExecution`, RUNTIME: `Development`
//! WARMUPS: `10`, REPEAT: `100`
//! WEIGHT-PATH: `runtime/kusama/constants/src/weights/`
//! WEIGHT-METRIC: `Average`, WEIGHT-MUL: `1`, WEIGHT-ADD: `0`
//! WEIGHT-METRIC: `Average`, WEIGHT-MUL: `1.0`, WEIGHT-ADD: `0`

// Executed Command:
// ./target/production/polkadot
Expand All @@ -34,32 +32,31 @@
// --weight-path=runtime/kusama/constants/src/weights/
// --warmup=10
// --repeat=100
// --header=./file_header.txt

use frame_support::{
parameter_types,
weights::{constants::WEIGHT_PER_NANOS, Weight},
};
use sp_core::parameter_types;
use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};

parameter_types! {
/// Time to execute an empty block.
/// Calculated by multiplying the *Average* with `1` and adding `0`.
/// Calculated by multiplying the *Average* with `1.0` and adding `0`.
///
/// Stats nanoseconds:
/// Min, Max: 6_094_385, 6_351_993
/// Average: 6_192_341
/// Median: 6_193_838
/// Std-Dev: 63893.84
/// Min, Max: 6_336_696, 6_629_376
/// Average: 6_435_161
/// Median: 6_432_853
/// Std-Dev: 60191.34
///
/// Percentiles nanoseconds:
/// 99th: 6_332_047
/// 95th: 6_308_225
/// 75th: 6_236_204
pub const BlockExecutionWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(6_192_341);
/// 99th: 6_588_459
/// 95th: 6_521_973
/// 75th: 6_477_748
pub const BlockExecutionWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(6_435_161);
}

#[cfg(test)]
mod test_weights {
use frame_support::weights::constants;
use sp_weights::constants;

/// Checks that the weight exists and is sane.
// NOTE: If this test fails but you are sure that the generated values are fine,
Expand Down
62 changes: 30 additions & 32 deletions runtime/kusama/constants/src/weights/extrinsic_weights.rs
Original file line number Diff line number Diff line change
@@ -1,27 +1,26 @@
// This file is part of Substrate.
// Copyright 2017-2022 Parity Technologies (UK) Ltd.
// This file is part of Polkadot.

// Copyright (C) 2022 Parity Technologies (UK) Ltd.
// SPDX-License-Identifier: Apache-2.0
// Polkadot is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 3 of the License, or
// (at your option) any later version.

// 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.
// Polkadot is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.

// You should have received a copy of the GNU General Public License
// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
//! DATE: 2022-04-20 (Y/M/D)
//! DATE: 2022-10-25 (Y/M/D)
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
//!
//! SHORT-NAME: `extrinsic`, LONG-NAME: `ExtrinsicBase`, RUNTIME: `Development`
//! WARMUPS: `10`, REPEAT: `100`
//! WEIGHT-PATH: `runtime/kusama/constants/src/weights/`
//! WEIGHT-METRIC: `Average`, WEIGHT-MUL: `1`, WEIGHT-ADD: `0`
//! WEIGHT-METRIC: `Average`, WEIGHT-MUL: `1.0`, WEIGHT-ADD: `0`

// Executed Command:
// ./target/production/polkadot
Expand All @@ -33,32 +32,31 @@
// --weight-path=runtime/kusama/constants/src/weights/
// --warmup=10
// --repeat=100
// --header=./file_header.txt

use frame_support::{
parameter_types,
weights::{constants::WEIGHT_PER_NANOS, Weight},
};
use sp_core::parameter_types;
use sp_weights::{constants::WEIGHT_PER_NANOS, Weight};

parameter_types! {
/// Time to execute a NO-OP extrinsic, for example `System::remark`.
/// Calculated by multiplying the *Average* with `1` and adding `0`.
/// Calculated by multiplying the *Average* with `1.0` and adding `0`.
///
/// Stats [NS]:
/// Min, Max: 85_946, 88_408
/// Average: 86_309
/// Median: 86_213
/// Std-Dev: 345.03
/// Stats nanoseconds:
/// Min, Max: 95_139, 96_661
/// Average: 95_578
/// Median: 95_507
/// Std-Dev: 279.89
///
/// Percentiles [NS]:
/// 99th: 87_527
/// 95th: 86_901
/// 75th: 86_308
pub const ExtrinsicBaseWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(86_309);
/// Percentiles nanoseconds:
/// 99th: 96_641
/// 95th: 96_239
/// 75th: 95_630
pub const ExtrinsicBaseWeight: Weight = WEIGHT_PER_NANOS.saturating_mul(95_578);
}

#[cfg(test)]
mod test_weights {
use frame_support::weights::constants;
use sp_weights::constants;

/// Checks that the weight exists and is sane.
// NOTE: If this test fails but you are sure that the generated values are fine,
Expand Down
46 changes: 27 additions & 19 deletions runtime/kusama/src/weights/frame_benchmarking_baseline.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
//! Autogenerated weights for `frame_benchmarking::baseline`
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
//! DATE: 2022-09-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! DATE: 2022-10-24, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024

Expand All @@ -38,54 +38,62 @@
#![allow(unused_parens)]
#![allow(unused_imports)]

use frame_support::{traits::Get, weights::{Weight}};
use frame_support::{traits::Get, weights::Weight};
use sp_std::marker::PhantomData;

/// Weight functions for `frame_benchmarking::baseline`.
pub struct WeightInfo<T>(PhantomData<T>);
impl<T: frame_system::Config> frame_benchmarking::baseline::WeightInfo for WeightInfo<T> {
/// The range of component `i` is `[0, 1000000]`.
fn addition(_i: u32, ) -> Weight {
Weight::from_ref_time(114_000 as u64)
// Minimum execution time: 86 nanoseconds.
Weight::from_ref_time(102_920 as u64)
}
/// The range of component `i` is `[0, 1000000]`.
fn subtraction(_i: u32, ) -> Weight {
Weight::from_ref_time(125_000 as u64)
// Minimum execution time: 93 nanoseconds.
Weight::from_ref_time(110_716 as u64)
}
/// The range of component `i` is `[0, 1000000]`.
fn multiplication(_i: u32, ) -> Weight {
Weight::from_ref_time(116_000 as u64)
// Minimum execution time: 97 nanoseconds.
Weight::from_ref_time(121_613 as u64)
}
/// The range of component `i` is `[0, 1000000]`.
fn division(_i: u32, ) -> Weight {
Weight::from_ref_time(115_000 as u64)
// Minimum execution time: 85 nanoseconds.
Weight::from_ref_time(108_770 as u64)
}
/// The range of component `i` is `[0, 100]`.
fn hashing(i: u32, ) -> Weight {
Weight::from_ref_time(19_441_790_000 as u64)
// Standard Error: 126_000
.saturating_add(Weight::from_ref_time(115_000 as u64).saturating_mul(i as u64))
// Minimum execution time: 19_096_918 nanoseconds.
Weight::from_ref_time(19_341_958_891 as u64)
// Standard Error: 136_508
.saturating_add(Weight::from_ref_time(347_531 as u64).saturating_mul(i as u64))
}
/// The range of component `i` is `[1, 100]`.
/// The range of component `i` is `[0, 100]`.
fn sr25519_verification(i: u32, ) -> Weight {
Weight::from_ref_time(0 as u64)
// Standard Error: 35_000
.saturating_add(Weight::from_ref_time(47_909_000 as u64).saturating_mul(i as u64))
// Minimum execution time: 111 nanoseconds.
Weight::from_ref_time(118_000 as u64)
// Standard Error: 16_773
.saturating_add(Weight::from_ref_time(47_757_384 as u64).saturating_mul(i as u64))
}
// Storage: Skipped Metadata (r:0 w:0)
/// The range of component `i` is `[0, 1000]`.
fn storage_read(i: u32, ) -> Weight {
Weight::from_ref_time(0 as u64)
// Standard Error: 7_000
.saturating_add(Weight::from_ref_time(1_998_000 as u64).saturating_mul(i as u64))
// Minimum execution time: 94 nanoseconds.
Weight::from_ref_time(97_000 as u64)
// Standard Error: 3_564
.saturating_add(Weight::from_ref_time(1_832_717 as u64).saturating_mul(i as u64))
.saturating_add(T::DbWeight::get().reads((1 as u64).saturating_mul(i as u64)))
}
// Storage: Skipped Metadata (r:0 w:0)
/// The range of component `i` is `[0, 1000]`.
fn storage_write(i: u32, ) -> Weight {
Weight::from_ref_time(0 as u64)
// Standard Error: 0
.saturating_add(Weight::from_ref_time(338_000 as u64).saturating_mul(i as u64))
// Minimum execution time: 111 nanoseconds.
Weight::from_ref_time(119_000 as u64)
// Standard Error: 812
.saturating_add(Weight::from_ref_time(320_377 as u64).saturating_mul(i as u64))
.saturating_add(T::DbWeight::get().writes((1 as u64).saturating_mul(i as u64)))
}
}
26 changes: 14 additions & 12 deletions runtime/kusama/src/weights/frame_election_provider_support.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
//! Autogenerated weights for `frame_election_provider_support`
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
//! DATE: 2022-09-08, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! DATE: 2022-10-24, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! HOSTNAME: `bm4`, CPU: `Intel(R) Core(TM) i7-7700K CPU @ 4.20GHz`
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("kusama-dev"), DB CACHE: 1024

Expand All @@ -38,7 +38,7 @@
#![allow(unused_parens)]
#![allow(unused_imports)]

use frame_support::{traits::Get, weights::{Weight}};
use frame_support::{traits::Get, weights::Weight};
use sp_std::marker::PhantomData;

/// Weight functions for `frame_election_provider_support`.
Expand All @@ -48,20 +48,22 @@ impl<T: frame_system::Config> frame_election_provider_support::WeightInfo for We
/// The range of component `t` is `[500, 1000]`.
/// The range of component `d` is `[5, 16]`.
fn phragmen(v: u32, _t: u32, d: u32, ) -> Weight {
Weight::from_ref_time(0 as u64)
// Standard Error: 56_000
.saturating_add(Weight::from_ref_time(13_944_000 as u64).saturating_mul(v as u64))
// Standard Error: 4_876_000
.saturating_add(Weight::from_ref_time(2_223_649_000 as u64).saturating_mul(d as u64))
// Minimum execution time: 5_442_855 nanoseconds.
Weight::from_ref_time(5_493_581_000 as u64)
Comment on lines -51 to +52
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

big jump up from 0

// Standard Error: 137_072
.saturating_add(Weight::from_ref_time(5_644_474 as u64).saturating_mul(v as u64))
// Standard Error: 14_013_799
.saturating_add(Weight::from_ref_time(1_560_631_740 as u64).saturating_mul(d as u64))
}
/// The range of component `v` is `[1000, 2000]`.
/// The range of component `t` is `[500, 1000]`.
/// The range of component `d` is `[5, 16]`.
fn phragmms(v: u32, _t: u32, d: u32, ) -> Weight {
Weight::from_ref_time(0 as u64)
// Standard Error: 79_000
.saturating_add(Weight::from_ref_time(14_480_000 as u64).saturating_mul(v as u64))
// Standard Error: 6_844_000
.saturating_add(Weight::from_ref_time(2_525_332_000 as u64).saturating_mul(d as u64))
// Minimum execution time: 4_312_432 nanoseconds.
Weight::from_ref_time(4_352_242_000 as u64)
Comment on lines -61 to +63
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

here as well

// Standard Error: 147_368
.saturating_add(Weight::from_ref_time(5_532_148 as u64).saturating_mul(v as u64))
// Standard Error: 15_066_445
.saturating_add(Weight::from_ref_time(1_788_360_934 as u64).saturating_mul(d as u64))
}
}
Loading