mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 15:11:02 +00:00
Update benchmarking macros (#3934)
Current benchmarking macro returns a closure with the captured
benchmarked code.
This can cause issues when the benchmarked code has complex lifetime
requirements.
This PR updates the existing macro by injecting the recording parameter
and invoking the start / stop method around the benchmarked block
instead of returning a closure
One other added benefit is that you can write this kind of code now as
well:
```rust
let v;
#[block]
{ v = func.call(); }
dbg!(v); // or assert something on v
```
[Weights compare
link](https://weights.tasty.limo/compare?unit=weight&ignore_errors=true&threshold=10&method=asymptotic&repo=polkadot-sdk&old=pg/fix-weights&new=pg/bench_update&path_pattern=substrate/frame/**/src/weights.rs,polkadot/runtime/*/src/weights/**/*.rs,polkadot/bridges/modules/*/src/weights.rs,cumulus/**/weights/*.rs,cumulus/**/weights/xcm/*.rs,cumulus/**/src/weights.rs)
---------
Co-authored-by: command-bot <>
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io>
Co-authored-by: Alexander Theißen <alex.theissen@me.com>
This commit is contained in:
+98
-91
@@ -15,16 +15,16 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
//! Autogenerated weights for pallet_transaction_storage
|
||||
//! Autogenerated weights for `pallet_transaction_storage`
|
||||
//!
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||
//! DATE: 2023-06-16, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
|
||||
//! DATE: 2024-04-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||
//! WORST CASE MAP SIZE: `1000000`
|
||||
//! HOSTNAME: `runner-e8ezs4ez-project-145-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||
//! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 1024
|
||||
//! HOSTNAME: `runner-anb7yjbi-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||
//! WASM-EXECUTION: `Compiled`, CHAIN: `Some("dev")`, DB CACHE: `1024`
|
||||
|
||||
// Executed Command:
|
||||
// ./target/production/substrate
|
||||
// ./target/production/substrate-node
|
||||
// benchmark
|
||||
// pallet
|
||||
// --chain=dev
|
||||
@@ -35,12 +35,11 @@
|
||||
// --no-median-slopes
|
||||
// --no-min-squares
|
||||
// --extrinsic=*
|
||||
// --execution=wasm
|
||||
// --wasm-execution=compiled
|
||||
// --heap-pages=4096
|
||||
// --output=./frame/transaction-storage/src/weights.rs
|
||||
// --header=./HEADER-APACHE2
|
||||
// --template=./.maintain/frame-weight-template.hbs
|
||||
// --output=./substrate/frame/transaction-storage/src/weights.rs
|
||||
// --header=./substrate/HEADER-APACHE2
|
||||
// --template=./substrate/.maintain/frame-weight-template.hbs
|
||||
|
||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||
#![allow(unused_parens)]
|
||||
@@ -50,125 +49,133 @@
|
||||
use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}};
|
||||
use core::marker::PhantomData;
|
||||
|
||||
/// Weight functions needed for pallet_transaction_storage.
|
||||
/// Weight functions needed for `pallet_transaction_storage`.
|
||||
pub trait WeightInfo {
|
||||
fn store(l: u32, ) -> Weight;
|
||||
fn renew() -> Weight;
|
||||
fn check_proof_max() -> Weight;
|
||||
}
|
||||
|
||||
/// Weights for pallet_transaction_storage using the Substrate node and recommended hardware.
|
||||
/// Weights for `pallet_transaction_storage` using the Substrate node and recommended hardware.
|
||||
pub struct SubstrateWeight<T>(PhantomData<T>);
|
||||
impl<T: frame_system::Config> WeightInfo for SubstrateWeight<T> {
|
||||
/// Storage: TransactionStorage ByteFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage ByteFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage EntryFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage EntryFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage BlockTransactions (r:1 w:1)
|
||||
/// Proof: TransactionStorage BlockTransactions (max_values: Some(1), max_size: Some(36866), added: 37361, mode: MaxEncodedLen)
|
||||
/// Storage: `TransactionStorage::ByteFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::ByteFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::EntryFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::EntryFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `Balances::Holds` (r:1 w:1)
|
||||
/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::BlockTransactions` (r:1 w:1)
|
||||
/// Proof: `TransactionStorage::BlockTransactions` (`max_values`: Some(1), `max_size`: Some(36866), added: 37361, mode: `MaxEncodedLen`)
|
||||
/// The range of component `l` is `[1, 8388608]`.
|
||||
fn store(l: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `176`
|
||||
// Measured: `242`
|
||||
// Estimated: `38351`
|
||||
// Minimum execution time: 34_844_000 picoseconds.
|
||||
Weight::from_parts(35_489_000, 38351)
|
||||
// Standard Error: 11
|
||||
.saturating_add(Weight::from_parts(6_912, 0).saturating_mul(l.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(3_u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1_u64))
|
||||
// Minimum execution time: 62_024_000 picoseconds.
|
||||
Weight::from_parts(63_536_000, 38351)
|
||||
// Standard Error: 13
|
||||
.saturating_add(Weight::from_parts(7_178, 0).saturating_mul(l.into()))
|
||||
.saturating_add(T::DbWeight::get().reads(4_u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2_u64))
|
||||
}
|
||||
/// Storage: TransactionStorage Transactions (r:1 w:0)
|
||||
/// Proof: TransactionStorage Transactions (max_values: None, max_size: Some(36886), added: 39361, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage ByteFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage ByteFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage EntryFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage EntryFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage BlockTransactions (r:1 w:1)
|
||||
/// Proof: TransactionStorage BlockTransactions (max_values: Some(1), max_size: Some(36866), added: 37361, mode: MaxEncodedLen)
|
||||
/// Storage: `TransactionStorage::Transactions` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::Transactions` (`max_values`: None, `max_size`: Some(36886), added: 39361, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::ByteFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::ByteFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::EntryFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::EntryFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `Balances::Holds` (r:1 w:1)
|
||||
/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::BlockTransactions` (r:1 w:1)
|
||||
/// Proof: `TransactionStorage::BlockTransactions` (`max_values`: Some(1), `max_size`: Some(36866), added: 37361, mode: `MaxEncodedLen`)
|
||||
fn renew() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `326`
|
||||
// Measured: `430`
|
||||
// Estimated: `40351`
|
||||
// Minimum execution time: 48_244_000 picoseconds.
|
||||
Weight::from_parts(50_939_000, 40351)
|
||||
.saturating_add(T::DbWeight::get().reads(4_u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1_u64))
|
||||
// Minimum execution time: 81_473_000 picoseconds.
|
||||
Weight::from_parts(84_000_000, 40351)
|
||||
.saturating_add(T::DbWeight::get().reads(5_u64))
|
||||
.saturating_add(T::DbWeight::get().writes(2_u64))
|
||||
}
|
||||
/// Storage: TransactionStorage ProofChecked (r:1 w:1)
|
||||
/// Proof: TransactionStorage ProofChecked (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage StoragePeriod (r:1 w:0)
|
||||
/// Proof: TransactionStorage StoragePeriod (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage ChunkCount (r:1 w:0)
|
||||
/// Proof: TransactionStorage ChunkCount (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen)
|
||||
/// Storage: System ParentHash (r:1 w:0)
|
||||
/// Proof: System ParentHash (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage Transactions (r:1 w:0)
|
||||
/// Proof: TransactionStorage Transactions (max_values: None, max_size: Some(36886), added: 39361, mode: MaxEncodedLen)
|
||||
/// Storage: `TransactionStorage::ProofChecked` (r:1 w:1)
|
||||
/// Proof: `TransactionStorage::ProofChecked` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::StoragePeriod` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::StoragePeriod` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::ChunkCount` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::ChunkCount` (`max_values`: None, `max_size`: Some(24), added: 2499, mode: `MaxEncodedLen`)
|
||||
/// Storage: `System::ParentHash` (r:1 w:0)
|
||||
/// Proof: `System::ParentHash` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::Transactions` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::Transactions` (`max_values`: None, `max_size`: Some(36886), added: 39361, mode: `MaxEncodedLen`)
|
||||
fn check_proof_max() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `37145`
|
||||
// Measured: `37211`
|
||||
// Estimated: `40351`
|
||||
// Minimum execution time: 80_913_000 picoseconds.
|
||||
Weight::from_parts(84_812_000, 40351)
|
||||
// Minimum execution time: 68_167_000 picoseconds.
|
||||
Weight::from_parts(75_532_000, 40351)
|
||||
.saturating_add(T::DbWeight::get().reads(5_u64))
|
||||
.saturating_add(T::DbWeight::get().writes(1_u64))
|
||||
}
|
||||
}
|
||||
|
||||
// For backwards compatibility and tests
|
||||
// For backwards compatibility and tests.
|
||||
impl WeightInfo for () {
|
||||
/// Storage: TransactionStorage ByteFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage ByteFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage EntryFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage EntryFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage BlockTransactions (r:1 w:1)
|
||||
/// Proof: TransactionStorage BlockTransactions (max_values: Some(1), max_size: Some(36866), added: 37361, mode: MaxEncodedLen)
|
||||
/// Storage: `TransactionStorage::ByteFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::ByteFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::EntryFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::EntryFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `Balances::Holds` (r:1 w:1)
|
||||
/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::BlockTransactions` (r:1 w:1)
|
||||
/// Proof: `TransactionStorage::BlockTransactions` (`max_values`: Some(1), `max_size`: Some(36866), added: 37361, mode: `MaxEncodedLen`)
|
||||
/// The range of component `l` is `[1, 8388608]`.
|
||||
fn store(l: u32, ) -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `176`
|
||||
// Measured: `242`
|
||||
// Estimated: `38351`
|
||||
// Minimum execution time: 34_844_000 picoseconds.
|
||||
Weight::from_parts(35_489_000, 38351)
|
||||
// Standard Error: 11
|
||||
.saturating_add(Weight::from_parts(6_912, 0).saturating_mul(l.into()))
|
||||
.saturating_add(RocksDbWeight::get().reads(3_u64))
|
||||
.saturating_add(RocksDbWeight::get().writes(1_u64))
|
||||
// Minimum execution time: 62_024_000 picoseconds.
|
||||
Weight::from_parts(63_536_000, 38351)
|
||||
// Standard Error: 13
|
||||
.saturating_add(Weight::from_parts(7_178, 0).saturating_mul(l.into()))
|
||||
.saturating_add(RocksDbWeight::get().reads(4_u64))
|
||||
.saturating_add(RocksDbWeight::get().writes(2_u64))
|
||||
}
|
||||
/// Storage: TransactionStorage Transactions (r:1 w:0)
|
||||
/// Proof: TransactionStorage Transactions (max_values: None, max_size: Some(36886), added: 39361, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage ByteFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage ByteFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage EntryFee (r:1 w:0)
|
||||
/// Proof: TransactionStorage EntryFee (max_values: Some(1), max_size: Some(16), added: 511, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage BlockTransactions (r:1 w:1)
|
||||
/// Proof: TransactionStorage BlockTransactions (max_values: Some(1), max_size: Some(36866), added: 37361, mode: MaxEncodedLen)
|
||||
/// Storage: `TransactionStorage::Transactions` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::Transactions` (`max_values`: None, `max_size`: Some(36886), added: 39361, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::ByteFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::ByteFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::EntryFee` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::EntryFee` (`max_values`: Some(1), `max_size`: Some(16), added: 511, mode: `MaxEncodedLen`)
|
||||
/// Storage: `Balances::Holds` (r:1 w:1)
|
||||
/// Proof: `Balances::Holds` (`max_values`: None, `max_size`: Some(193), added: 2668, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::BlockTransactions` (r:1 w:1)
|
||||
/// Proof: `TransactionStorage::BlockTransactions` (`max_values`: Some(1), `max_size`: Some(36866), added: 37361, mode: `MaxEncodedLen`)
|
||||
fn renew() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `326`
|
||||
// Measured: `430`
|
||||
// Estimated: `40351`
|
||||
// Minimum execution time: 48_244_000 picoseconds.
|
||||
Weight::from_parts(50_939_000, 40351)
|
||||
.saturating_add(RocksDbWeight::get().reads(4_u64))
|
||||
.saturating_add(RocksDbWeight::get().writes(1_u64))
|
||||
// Minimum execution time: 81_473_000 picoseconds.
|
||||
Weight::from_parts(84_000_000, 40351)
|
||||
.saturating_add(RocksDbWeight::get().reads(5_u64))
|
||||
.saturating_add(RocksDbWeight::get().writes(2_u64))
|
||||
}
|
||||
/// Storage: TransactionStorage ProofChecked (r:1 w:1)
|
||||
/// Proof: TransactionStorage ProofChecked (max_values: Some(1), max_size: Some(1), added: 496, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage StoragePeriod (r:1 w:0)
|
||||
/// Proof: TransactionStorage StoragePeriod (max_values: Some(1), max_size: Some(4), added: 499, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage ChunkCount (r:1 w:0)
|
||||
/// Proof: TransactionStorage ChunkCount (max_values: None, max_size: Some(24), added: 2499, mode: MaxEncodedLen)
|
||||
/// Storage: System ParentHash (r:1 w:0)
|
||||
/// Proof: System ParentHash (max_values: Some(1), max_size: Some(32), added: 527, mode: MaxEncodedLen)
|
||||
/// Storage: TransactionStorage Transactions (r:1 w:0)
|
||||
/// Proof: TransactionStorage Transactions (max_values: None, max_size: Some(36886), added: 39361, mode: MaxEncodedLen)
|
||||
/// Storage: `TransactionStorage::ProofChecked` (r:1 w:1)
|
||||
/// Proof: `TransactionStorage::ProofChecked` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::StoragePeriod` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::StoragePeriod` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::ChunkCount` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::ChunkCount` (`max_values`: None, `max_size`: Some(24), added: 2499, mode: `MaxEncodedLen`)
|
||||
/// Storage: `System::ParentHash` (r:1 w:0)
|
||||
/// Proof: `System::ParentHash` (`max_values`: Some(1), `max_size`: Some(32), added: 527, mode: `MaxEncodedLen`)
|
||||
/// Storage: `TransactionStorage::Transactions` (r:1 w:0)
|
||||
/// Proof: `TransactionStorage::Transactions` (`max_values`: None, `max_size`: Some(36886), added: 39361, mode: `MaxEncodedLen`)
|
||||
fn check_proof_max() -> Weight {
|
||||
// Proof Size summary in bytes:
|
||||
// Measured: `37145`
|
||||
// Measured: `37211`
|
||||
// Estimated: `40351`
|
||||
// Minimum execution time: 80_913_000 picoseconds.
|
||||
Weight::from_parts(84_812_000, 40351)
|
||||
// Minimum execution time: 68_167_000 picoseconds.
|
||||
Weight::from_parts(75_532_000, 40351)
|
||||
.saturating_add(RocksDbWeight::get().reads(5_u64))
|
||||
.saturating_add(RocksDbWeight::get().writes(1_u64))
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user