FRAME Weights with Storage Metadata (#9471)

* weights with metadata

* fix

* fix contract test

* skip metadata tag

* special handling for `frame_system`

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=frame_system --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/system/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* add skip metadata to contracts

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* fix contract test

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* expose component information

* fix test generation

* refactor list benchmarks

* move component selection out of runtime

* add benchmark verification

* missing feature

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* add internal repeats

* update weights with internal repeats

* fix warning

* return error with pov

* try without tracking

* Revert "return error with pov"

This reverts commit 44c36cbbd3c6818f36f377e3e291f1df156e40f7.

* Revert "try without tracking"

This reverts commit f401c44aebff2232389d8d307b20924891e5d77d.

* Revert "Revert "try without tracking""

This reverts commit 4b4e05929802ad3e8154e107359447634e5fb21b.

* state without tracking

* fix build

* temp test

* split db and timing benchmarks

* extend db results?

* default repeat is internal

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* fix warning

* bump linked hash map

* use linked hash map for storage tracker

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* remove conflicting short command

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* missed one linked hashmap

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs

* new weights with latest changes

* Update frame/benchmarking/src/utils.rs

Co-authored-by: Parity Benchmarking Bot <admin@parity.io>
This commit is contained in:
Shawn Tabrizi
2021-08-07 18:05:12 +02:00
committed by GitHub
parent 38db14089b
commit 0489c1768c
44 changed files with 3956 additions and 2182 deletions
+154 -56
View File
@@ -17,8 +17,8 @@
//! Autogenerated weights for pallet_elections_phragmen
//!
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 3.0.0
//! DATE: 2021-06-19, STEPS: `[50, ]`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
//! DATE: 2021-08-07, STEPS: `50`, REPEAT: 20, LOW RANGE: `[]`, HIGH RANGE: `[]`
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128
// Executed Command:
@@ -62,81 +62,130 @@ pub trait WeightInfo {
/// Weights for pallet_elections_phragmen using the Substrate node and recommended hardware.
pub struct SubstrateWeight<T>(PhantomData<T>);
impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
// Storage: Elections Candidates (r:1 w:0)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn vote_equal(v: u32, ) -> Weight {
(43_911_000 as Weight)
// Standard Error: 7_000
.saturating_add((324_000 as Weight).saturating_mul(v as Weight))
(42_509_000 as Weight)
// Standard Error: 4_000
.saturating_add((372_000 as Weight).saturating_mul(v as Weight))
.saturating_add(T::DbWeight::get().reads(5 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
// Storage: Elections Candidates (r:1 w:0)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn vote_more(v: u32, ) -> Weight {
(68_236_000 as Weight)
// Standard Error: 10_000
.saturating_add((359_000 as Weight).saturating_mul(v as Weight))
(65_311_000 as Weight)
// Standard Error: 6_000
.saturating_add((419_000 as Weight).saturating_mul(v as Weight))
.saturating_add(T::DbWeight::get().reads(5 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
// Storage: Elections Candidates (r:1 w:0)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn vote_less(v: u32, ) -> Weight {
(68_162_000 as Weight)
// Standard Error: 9_000
.saturating_add((350_000 as Weight).saturating_mul(v as Weight))
(65_444_000 as Weight)
// Standard Error: 5_000
.saturating_add((376_000 as Weight).saturating_mul(v as Weight))
.saturating_add(T::DbWeight::get().reads(5 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn remove_voter() -> Weight {
(63_005_000 as Weight)
(61_585_000 as Weight)
.saturating_add(T::DbWeight::get().reads(2 as Weight))
.saturating_add(T::DbWeight::get().writes(2 as Weight))
}
// Storage: Elections Candidates (r:1 w:1)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
fn submit_candidacy(c: u32, ) -> Weight {
(58_498_000 as Weight)
(53_333_000 as Weight)
// Standard Error: 1_000
.saturating_add((305_000 as Weight).saturating_mul(c as Weight))
.saturating_add((267_000 as Weight).saturating_mul(c as Weight))
.saturating_add(T::DbWeight::get().reads(3 as Weight))
.saturating_add(T::DbWeight::get().writes(1 as Weight))
}
// Storage: Elections Candidates (r:1 w:1)
fn renounce_candidacy_candidate(c: u32, ) -> Weight {
(52_062_000 as Weight)
// Standard Error: 0
.saturating_add((173_000 as Weight).saturating_mul(c as Weight))
(49_128_000 as Weight)
// Standard Error: 1_000
.saturating_add((144_000 as Weight).saturating_mul(c as Weight))
.saturating_add(T::DbWeight::get().reads(1 as Weight))
.saturating_add(T::DbWeight::get().writes(1 as Weight))
}
// Storage: Elections Members (r:1 w:1)
// Storage: Elections RunnersUp (r:1 w:1)
// Storage: Instance1Collective Prime (r:1 w:1)
// Storage: Instance1Collective Proposals (r:1 w:0)
// Storage: Instance1Collective Members (r:0 w:1)
fn renounce_candidacy_members() -> Weight {
(73_234_000 as Weight)
(70_685_000 as Weight)
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().writes(4 as Weight))
}
// Storage: Elections RunnersUp (r:1 w:1)
fn renounce_candidacy_runners_up() -> Weight {
(51_689_000 as Weight)
(49_766_000 as Weight)
.saturating_add(T::DbWeight::get().reads(1 as Weight))
.saturating_add(T::DbWeight::get().writes(1 as Weight))
}
// Storage: Elections RunnersUp (r:1 w:1)
// Storage: Elections Members (r:1 w:1)
// Storage: System Account (r:1 w:1)
// Storage: Instance1Collective Prime (r:1 w:1)
// Storage: Instance1Collective Proposals (r:1 w:0)
// Storage: Instance1Collective Members (r:0 w:1)
fn remove_member_with_replacement() -> Weight {
(79_906_000 as Weight)
(76_153_000 as Weight)
.saturating_add(T::DbWeight::get().reads(5 as Weight))
.saturating_add(T::DbWeight::get().writes(5 as Weight))
}
// Storage: Elections RunnersUp (r:1 w:0)
fn remove_member_wrong_refund() -> Weight {
(6_877_000 as Weight)
(6_697_000 as Weight)
.saturating_add(T::DbWeight::get().reads(1 as Weight))
}
// Storage: Elections Voting (r:251 w:250)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Candidates (r:1 w:0)
// Storage: Balances Locks (r:250 w:250)
// Storage: System Account (r:250 w:250)
fn clean_defunct_voters(v: u32, _d: u32, ) -> Weight {
(0 as Weight)
// Standard Error: 39_000
.saturating_add((112_381_000 as Weight).saturating_mul(v as Weight))
// Standard Error: 60_000
.saturating_add((107_467_000 as Weight).saturating_mul(v as Weight))
.saturating_add(T::DbWeight::get().reads(4 as Weight))
.saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(v as Weight)))
.saturating_add(T::DbWeight::get().writes((3 as Weight).saturating_mul(v as Weight)))
}
// Storage: Elections Candidates (r:1 w:1)
// Storage: Elections Members (r:1 w:1)
// Storage: Elections RunnersUp (r:1 w:1)
// Storage: Elections Voting (r:502 w:0)
// Storage: Instance1Collective Proposals (r:1 w:0)
// Storage: Elections ElectionRounds (r:1 w:1)
// Storage: Instance1Collective Members (r:0 w:1)
// Storage: Instance1Collective Prime (r:0 w:1)
// Storage: System Account (r:2 w:2)
fn election_phragmen(c: u32, v: u32, e: u32, ) -> Weight {
(0 as Weight)
// Standard Error: 1_789_000
.saturating_add((42_600_000 as Weight).saturating_mul(c as Weight))
// Standard Error: 744_000
.saturating_add((60_743_000 as Weight).saturating_mul(v as Weight))
// Standard Error: 50_000
.saturating_add((3_837_000 as Weight).saturating_mul(e as Weight))
// Standard Error: 1_846_000
.saturating_add((39_843_000 as Weight).saturating_mul(c as Weight))
// Standard Error: 768_000
.saturating_add((60_623_000 as Weight).saturating_mul(v as Weight))
// Standard Error: 52_000
.saturating_add((3_884_000 as Weight).saturating_mul(e as Weight))
.saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(c as Weight)))
.saturating_add(T::DbWeight::get().reads((1 as Weight).saturating_mul(v as Weight)))
.saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(c as Weight)))
@@ -145,81 +194,130 @@ impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
// For backwards compatibility and tests
impl WeightInfo for () {
// Storage: Elections Candidates (r:1 w:0)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn vote_equal(v: u32, ) -> Weight {
(43_911_000 as Weight)
// Standard Error: 7_000
.saturating_add((324_000 as Weight).saturating_mul(v as Weight))
(42_509_000 as Weight)
// Standard Error: 4_000
.saturating_add((372_000 as Weight).saturating_mul(v as Weight))
.saturating_add(RocksDbWeight::get().reads(5 as Weight))
.saturating_add(RocksDbWeight::get().writes(2 as Weight))
}
// Storage: Elections Candidates (r:1 w:0)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn vote_more(v: u32, ) -> Weight {
(68_236_000 as Weight)
// Standard Error: 10_000
.saturating_add((359_000 as Weight).saturating_mul(v as Weight))
(65_311_000 as Weight)
// Standard Error: 6_000
.saturating_add((419_000 as Weight).saturating_mul(v as Weight))
.saturating_add(RocksDbWeight::get().reads(5 as Weight))
.saturating_add(RocksDbWeight::get().writes(2 as Weight))
}
// Storage: Elections Candidates (r:1 w:0)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn vote_less(v: u32, ) -> Weight {
(68_162_000 as Weight)
// Standard Error: 9_000
.saturating_add((350_000 as Weight).saturating_mul(v as Weight))
(65_444_000 as Weight)
// Standard Error: 5_000
.saturating_add((376_000 as Weight).saturating_mul(v as Weight))
.saturating_add(RocksDbWeight::get().reads(5 as Weight))
.saturating_add(RocksDbWeight::get().writes(2 as Weight))
}
// Storage: Elections Voting (r:1 w:1)
// Storage: Balances Locks (r:1 w:1)
fn remove_voter() -> Weight {
(63_005_000 as Weight)
(61_585_000 as Weight)
.saturating_add(RocksDbWeight::get().reads(2 as Weight))
.saturating_add(RocksDbWeight::get().writes(2 as Weight))
}
// Storage: Elections Candidates (r:1 w:1)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
fn submit_candidacy(c: u32, ) -> Weight {
(58_498_000 as Weight)
(53_333_000 as Weight)
// Standard Error: 1_000
.saturating_add((305_000 as Weight).saturating_mul(c as Weight))
.saturating_add((267_000 as Weight).saturating_mul(c as Weight))
.saturating_add(RocksDbWeight::get().reads(3 as Weight))
.saturating_add(RocksDbWeight::get().writes(1 as Weight))
}
// Storage: Elections Candidates (r:1 w:1)
fn renounce_candidacy_candidate(c: u32, ) -> Weight {
(52_062_000 as Weight)
// Standard Error: 0
.saturating_add((173_000 as Weight).saturating_mul(c as Weight))
(49_128_000 as Weight)
// Standard Error: 1_000
.saturating_add((144_000 as Weight).saturating_mul(c as Weight))
.saturating_add(RocksDbWeight::get().reads(1 as Weight))
.saturating_add(RocksDbWeight::get().writes(1 as Weight))
}
// Storage: Elections Members (r:1 w:1)
// Storage: Elections RunnersUp (r:1 w:1)
// Storage: Instance1Collective Prime (r:1 w:1)
// Storage: Instance1Collective Proposals (r:1 w:0)
// Storage: Instance1Collective Members (r:0 w:1)
fn renounce_candidacy_members() -> Weight {
(73_234_000 as Weight)
(70_685_000 as Weight)
.saturating_add(RocksDbWeight::get().reads(4 as Weight))
.saturating_add(RocksDbWeight::get().writes(4 as Weight))
}
// Storage: Elections RunnersUp (r:1 w:1)
fn renounce_candidacy_runners_up() -> Weight {
(51_689_000 as Weight)
(49_766_000 as Weight)
.saturating_add(RocksDbWeight::get().reads(1 as Weight))
.saturating_add(RocksDbWeight::get().writes(1 as Weight))
}
// Storage: Elections RunnersUp (r:1 w:1)
// Storage: Elections Members (r:1 w:1)
// Storage: System Account (r:1 w:1)
// Storage: Instance1Collective Prime (r:1 w:1)
// Storage: Instance1Collective Proposals (r:1 w:0)
// Storage: Instance1Collective Members (r:0 w:1)
fn remove_member_with_replacement() -> Weight {
(79_906_000 as Weight)
(76_153_000 as Weight)
.saturating_add(RocksDbWeight::get().reads(5 as Weight))
.saturating_add(RocksDbWeight::get().writes(5 as Weight))
}
// Storage: Elections RunnersUp (r:1 w:0)
fn remove_member_wrong_refund() -> Weight {
(6_877_000 as Weight)
(6_697_000 as Weight)
.saturating_add(RocksDbWeight::get().reads(1 as Weight))
}
// Storage: Elections Voting (r:251 w:250)
// Storage: Elections Members (r:1 w:0)
// Storage: Elections RunnersUp (r:1 w:0)
// Storage: Elections Candidates (r:1 w:0)
// Storage: Balances Locks (r:250 w:250)
// Storage: System Account (r:250 w:250)
fn clean_defunct_voters(v: u32, _d: u32, ) -> Weight {
(0 as Weight)
// Standard Error: 39_000
.saturating_add((112_381_000 as Weight).saturating_mul(v as Weight))
// Standard Error: 60_000
.saturating_add((107_467_000 as Weight).saturating_mul(v as Weight))
.saturating_add(RocksDbWeight::get().reads(4 as Weight))
.saturating_add(RocksDbWeight::get().reads((3 as Weight).saturating_mul(v as Weight)))
.saturating_add(RocksDbWeight::get().writes((3 as Weight).saturating_mul(v as Weight)))
}
// Storage: Elections Candidates (r:1 w:1)
// Storage: Elections Members (r:1 w:1)
// Storage: Elections RunnersUp (r:1 w:1)
// Storage: Elections Voting (r:502 w:0)
// Storage: Instance1Collective Proposals (r:1 w:0)
// Storage: Elections ElectionRounds (r:1 w:1)
// Storage: Instance1Collective Members (r:0 w:1)
// Storage: Instance1Collective Prime (r:0 w:1)
// Storage: System Account (r:2 w:2)
fn election_phragmen(c: u32, v: u32, e: u32, ) -> Weight {
(0 as Weight)
// Standard Error: 1_789_000
.saturating_add((42_600_000 as Weight).saturating_mul(c as Weight))
// Standard Error: 744_000
.saturating_add((60_743_000 as Weight).saturating_mul(v as Weight))
// Standard Error: 50_000
.saturating_add((3_837_000 as Weight).saturating_mul(e as Weight))
// Standard Error: 1_846_000
.saturating_add((39_843_000 as Weight).saturating_mul(c as Weight))
// Standard Error: 768_000
.saturating_add((60_623_000 as Weight).saturating_mul(v as Weight))
// Standard Error: 52_000
.saturating_add((3_884_000 as Weight).saturating_mul(e as Weight))
.saturating_add(RocksDbWeight::get().reads((2 as Weight).saturating_mul(c as Weight)))
.saturating_add(RocksDbWeight::get().reads((1 as Weight).saturating_mul(v as Weight)))
.saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(c as Weight)))