westend_runtime/weights/polkadot_runtime_parachains_disputes_slashing.rs
1// Copyright (C) Parity Technologies (UK) Ltd.
2// This file is part of Polkadot.
3
4// Polkadot is free software: you can redistribute it and/or modify
5// it under the terms of the GNU General Public License as published by
6// the Free Software Foundation, either version 3 of the License, or
7// (at your option) any later version.
8
9// Polkadot is distributed in the hope that it will be useful,
10// but WITHOUT ANY WARRANTY; without even the implied warranty of
11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12// GNU General Public License for more details.
13
14// You should have received a copy of the GNU General Public License
15// along with Polkadot. If not, see <http://www.gnu.org/licenses/>.
16
17//! Autogenerated weights for `polkadot_runtime_parachains::disputes::slashing`
18//!
19//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
20//! DATE: 2025-08-19, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
21//! WORST CASE MAP SIZE: `1000000`
22//! HOSTNAME: `276823fd1fd5`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
23//! WASM-EXECUTION: `Compiled`, CHAIN: `None`, DB CACHE: 1024
24
25// Executed Command:
26// frame-omni-bencher
27// v1
28// benchmark
29// pallet
30// --extrinsic=*
31// --runtime=target/production/wbuild/westend-runtime/westend_runtime.wasm
32// --pallet=polkadot_runtime_parachains::disputes::slashing
33// --header=/__w/polkadot-sdk/polkadot-sdk/polkadot/file_header.txt
34// --output=./polkadot/runtime/westend/src/weights
35// --wasm-execution=compiled
36// --steps=50
37// --repeat=20
38// --heap-pages=4096
39// --no-storage-info
40// --no-min-squares
41// --no-median-slopes
42
43#![cfg_attr(rustfmt, rustfmt_skip)]
44#![allow(unused_parens)]
45#![allow(unused_imports)]
46#![allow(missing_docs)]
47
48use frame_support::{traits::Get, weights::Weight};
49use core::marker::PhantomData;
50
51/// Weight functions for `polkadot_runtime_parachains::disputes::slashing`.
52pub struct WeightInfo<T>(PhantomData<T>);
53impl<T: frame_system::Config> polkadot_runtime_parachains::disputes::slashing::WeightInfo for WeightInfo<T> {
54 /// Storage: `Session::CurrentIndex` (r:1 w:0)
55 /// Proof: `Session::CurrentIndex` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
56 /// Storage: `Historical::HistoricalSessions` (r:1 w:0)
57 /// Proof: `Historical::HistoricalSessions` (`max_values`: None, `max_size`: Some(48), added: 2523, mode: `MaxEncodedLen`)
58 /// Storage: `ParasSlashing::UnappliedSlashes` (r:1 w:1)
59 /// Proof: `ParasSlashing::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`)
60 /// Storage: `Offences::ConcurrentReportsIndex` (r:1 w:1)
61 /// Proof: `Offences::ConcurrentReportsIndex` (`max_values`: None, `max_size`: None, mode: `Measured`)
62 /// Storage: `Offences::Reports` (r:1 w:1)
63 /// Proof: `Offences::Reports` (`max_values`: None, `max_size`: None, mode: `Measured`)
64 /// Storage: `StakingAhClient::Mode` (r:1 w:0)
65 /// Proof: `StakingAhClient::Mode` (`max_values`: Some(1), `max_size`: Some(1), added: 496, mode: `MaxEncodedLen`)
66 /// Storage: `Staking::SlashRewardFraction` (r:1 w:0)
67 /// Proof: `Staking::SlashRewardFraction` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
68 /// Storage: `Staking::ActiveEra` (r:1 w:0)
69 /// Proof: `Staking::ActiveEra` (`max_values`: Some(1), `max_size`: Some(13), added: 508, mode: `MaxEncodedLen`)
70 /// Storage: `Staking::ErasStartSessionIndex` (r:1 w:0)
71 /// Proof: `Staking::ErasStartSessionIndex` (`max_values`: None, `max_size`: Some(16), added: 2491, mode: `MaxEncodedLen`)
72 /// Storage: `Staking::Invulnerables` (r:1 w:0)
73 /// Proof: `Staking::Invulnerables` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
74 /// Storage: `Staking::ErasStakersOverview` (r:1 w:0)
75 /// Proof: `Staking::ErasStakersOverview` (`max_values`: None, `max_size`: Some(92), added: 2567, mode: `MaxEncodedLen`)
76 /// Storage: `Session::DisabledValidators` (r:1 w:1)
77 /// Proof: `Session::DisabledValidators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
78 /// Storage: `Session::Validators` (r:1 w:0)
79 /// Proof: `Session::Validators` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
80 /// Storage: `Staking::ValidatorSlashInEra` (r:1 w:1)
81 /// Proof: `Staking::ValidatorSlashInEra` (`max_values`: None, `max_size`: Some(72), added: 2547, mode: `MaxEncodedLen`)
82 /// Storage: `Staking::SlashingSpans` (r:1 w:1)
83 /// Proof: `Staking::SlashingSpans` (`max_values`: None, `max_size`: None, mode: `Measured`)
84 /// Storage: `Staking::SpanSlash` (r:1 w:1)
85 /// Proof: `Staking::SpanSlash` (`max_values`: None, `max_size`: Some(76), added: 2551, mode: `MaxEncodedLen`)
86 /// Storage: `Staking::UnappliedSlashes` (r:1 w:1)
87 /// Proof: `Staking::UnappliedSlashes` (`max_values`: None, `max_size`: None, mode: `Measured`)
88 /// The range of component `n` is `[4, 300]`.
89 fn report_dispute_lost_unsigned(n: u32, ) -> Weight {
90 // Proof Size summary in bytes:
91 // Measured: `2145 + n * (33 ±0)`
92 // Estimated: `5588 + n * (34 ±0)`
93 // Minimum execution time: 106_507_000 picoseconds.
94 Weight::from_parts(151_695_565, 0)
95 .saturating_add(Weight::from_parts(0, 5588))
96 // Standard Error: 4_446
97 .saturating_add(Weight::from_parts(202_889, 0).saturating_mul(n.into()))
98 .saturating_add(T::DbWeight::get().reads(17))
99 .saturating_add(T::DbWeight::get().writes(8))
100 .saturating_add(Weight::from_parts(0, 34).saturating_mul(n.into()))
101 }
102}