common_runtime/weights/
pallet_multisig.rs

1//! Autogenerated weights for pallet_multisig
2//!
3//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 49.1.0
4//! DATE: 2025-08-20, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
5//! WORST CASE MAP SIZE: `1000000`
6//! HOSTNAME: `ip-10-173-5-194`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz`
7//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: None, DB CACHE: 1024
8
9// Executed Command:
10// ./scripts/../target/release/frequency
11// benchmark
12// pallet
13// --pallet=pallet_multisig
14// --extrinsic
15// *
16// --heap-pages=4096
17// --steps=50
18// --repeat=20
19// --output=./scripts/../runtime/common/src/weights
20// --template=./scripts/../.maintain/runtime-weight-template.hbs
21// --additional-trie-layers=3
22// --runtime=./scripts/../target/release/wbuild/frequency-runtime/frequency_runtime.wasm
23// --genesis-builder=runtime
24
25#![cfg_attr(rustfmt, rustfmt_skip)]
26#![allow(unused_parens)]
27#![allow(unused_imports)]
28#![allow(missing_docs)]
29
30use frame_support::{traits::Get, weights::Weight};
31use core::marker::PhantomData;
32
33/// Weights for `pallet_multisig` using the Substrate node and recommended hardware.
34pub struct SubstrateWeight<T>(PhantomData<T>);
35impl<T: frame_system::Config> pallet_multisig::WeightInfo for SubstrateWeight<T> {
36	/// The range of component `z` is `[0, 10000]`.
37	fn as_multi_threshold_1(z: u32, ) -> Weight {
38		// Proof Size summary in bytes:
39		//  Measured:  `0`
40		//  Estimated: `0`
41		// Minimum execution time: 22_168_000 picoseconds.
42		Weight::from_parts(23_260_054, 0)
43			// Standard Error: 4
44			.saturating_add(Weight::from_parts(1_936, 0).saturating_mul(z.into()))
45	}
46	/// Storage: `Multisig::Multisigs` (r:1 w:1)
47	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
48	/// The range of component `s` is `[2, 100]`.
49	/// The range of component `z` is `[0, 10000]`.
50	fn as_multi_create(s: u32, z: u32, ) -> Weight {
51		// Proof Size summary in bytes:
52		//  Measured:  `263 + s * (2 ±0)`
53		//  Estimated: `7306`
54		// Minimum execution time: 49_508_000 picoseconds.
55		Weight::from_parts(36_554_848, 7306)
56			// Standard Error: 998
57			.saturating_add(Weight::from_parts(140_707, 0).saturating_mul(s.into()))
58			// Standard Error: 9
59			.saturating_add(Weight::from_parts(2_006, 0).saturating_mul(z.into()))
60			.saturating_add(T::DbWeight::get().reads(1_u64))
61			.saturating_add(T::DbWeight::get().writes(1_u64))
62	}
63	/// Storage: `Multisig::Multisigs` (r:1 w:1)
64	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
65	/// The range of component `s` is `[3, 100]`.
66	/// The range of component `z` is `[0, 10000]`.
67	fn as_multi_approve(s: u32, z: u32, ) -> Weight {
68		// Proof Size summary in bytes:
69		//  Measured:  `282`
70		//  Estimated: `7306`
71		// Minimum execution time: 33_049_000 picoseconds.
72		Weight::from_parts(21_517_028, 7306)
73			// Standard Error: 458
74			.saturating_add(Weight::from_parts(124_149, 0).saturating_mul(s.into()))
75			// Standard Error: 4
76			.saturating_add(Weight::from_parts(1_975, 0).saturating_mul(z.into()))
77			.saturating_add(T::DbWeight::get().reads(1_u64))
78			.saturating_add(T::DbWeight::get().writes(1_u64))
79	}
80	/// Storage: `Multisig::Multisigs` (r:1 w:1)
81	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
82	/// Storage: `System::Account` (r:1 w:1)
83	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
84	/// The range of component `s` is `[2, 100]`.
85	/// The range of component `z` is `[0, 10000]`.
86	fn as_multi_complete(s: u32, z: u32, ) -> Weight {
87		// Proof Size summary in bytes:
88		//  Measured:  `388 + s * (33 ±0)`
89		//  Estimated: `7306`
90		// Minimum execution time: 54_743_000 picoseconds.
91		Weight::from_parts(38_063_978, 7306)
92			// Standard Error: 895
93			.saturating_add(Weight::from_parts(190_461, 0).saturating_mul(s.into()))
94			// Standard Error: 8
95			.saturating_add(Weight::from_parts(2_045, 0).saturating_mul(z.into()))
96			.saturating_add(T::DbWeight::get().reads(2_u64))
97			.saturating_add(T::DbWeight::get().writes(2_u64))
98	}
99	/// Storage: `Multisig::Multisigs` (r:1 w:1)
100	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
101	/// The range of component `s` is `[2, 100]`.
102	fn approve_as_multi_create(s: u32, ) -> Weight {
103		// Proof Size summary in bytes:
104		//  Measured:  `263 + s * (2 ±0)`
105		//  Estimated: `7306`
106		// Minimum execution time: 33_527_000 picoseconds.
107		Weight::from_parts(34_421_287, 7306)
108			// Standard Error: 712
109			.saturating_add(Weight::from_parts(143_799, 0).saturating_mul(s.into()))
110			.saturating_add(T::DbWeight::get().reads(1_u64))
111			.saturating_add(T::DbWeight::get().writes(1_u64))
112	}
113	/// Storage: `Multisig::Multisigs` (r:1 w:1)
114	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
115	/// The range of component `s` is `[2, 100]`.
116	fn approve_as_multi_approve(s: u32, ) -> Weight {
117		// Proof Size summary in bytes:
118		//  Measured:  `282`
119		//  Estimated: `7306`
120		// Minimum execution time: 19_228_000 picoseconds.
121		Weight::from_parts(19_800_499, 7306)
122			// Standard Error: 470
123			.saturating_add(Weight::from_parts(128_302, 0).saturating_mul(s.into()))
124			.saturating_add(T::DbWeight::get().reads(1_u64))
125			.saturating_add(T::DbWeight::get().writes(1_u64))
126	}
127	/// Storage: `Multisig::Multisigs` (r:1 w:1)
128	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
129	/// The range of component `s` is `[2, 100]`.
130	fn cancel_as_multi(s: u32, ) -> Weight {
131		// Proof Size summary in bytes:
132		//  Measured:  `454 + s * (1 ±0)`
133		//  Estimated: `7306`
134		// Minimum execution time: 34_273_000 picoseconds.
135		Weight::from_parts(35_750_920, 7306)
136			// Standard Error: 973
137			.saturating_add(Weight::from_parts(137_335, 0).saturating_mul(s.into()))
138			.saturating_add(T::DbWeight::get().reads(1_u64))
139			.saturating_add(T::DbWeight::get().writes(1_u64))
140	}
141	/// Storage: `Multisig::Multisigs` (r:1 w:1)
142	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
143	/// The range of component `s` is `[2, 100]`.
144	fn poke_deposit(s: u32, ) -> Weight {
145		// Proof Size summary in bytes:
146		//  Measured:  `454 + s * (1 ±0)`
147		//  Estimated: `7306`
148		// Minimum execution time: 32_737_000 picoseconds.
149		Weight::from_parts(33_879_744, 7306)
150			// Standard Error: 722
151			.saturating_add(Weight::from_parts(134_428, 0).saturating_mul(s.into()))
152			.saturating_add(T::DbWeight::get().reads(1_u64))
153			.saturating_add(T::DbWeight::get().writes(1_u64))
154	}
155}
156
157
158#[cfg(test)]
159mod tests {
160  use frame_support::{traits::Get, weights::Weight, dispatch::DispatchClass};
161  use crate::constants::{MAXIMUM_BLOCK_WEIGHT, NORMAL_DISPATCH_RATIO};
162  use crate::weights::extrinsic_weights::ExtrinsicBaseWeight;
163
164  #[allow(dead_code)]
165  struct BlockWeights;
166  impl Get<frame_system::limits::BlockWeights> for BlockWeights {
167  	fn get() -> frame_system::limits::BlockWeights {
168  		frame_system::limits::BlockWeights::builder()
169  			.base_block(Weight::zero())
170  			.for_class(DispatchClass::all(), |weights| {
171  				weights.base_extrinsic = ExtrinsicBaseWeight::get();
172  			})
173  			.for_class(DispatchClass::non_mandatory(), |weights| {
174  				weights.max_total = Some(NORMAL_DISPATCH_RATIO * MAXIMUM_BLOCK_WEIGHT);
175  			})
176  			.build_or_panic()
177  	}
178  }
179
180	#[test]
181	fn test_as_multi_create() {
182		assert!(
183			BlockWeights::get()
184				.per_class
185				.get(frame_support::dispatch::DispatchClass::Normal)
186				.max_extrinsic
187				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
188				.proof_size()
189				> 7306
190		);
191	}
192	#[test]
193	fn test_as_multi_approve() {
194		assert!(
195			BlockWeights::get()
196				.per_class
197				.get(frame_support::dispatch::DispatchClass::Normal)
198				.max_extrinsic
199				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
200				.proof_size()
201				> 7306
202		);
203	}
204	#[test]
205	fn test_as_multi_complete() {
206		assert!(
207			BlockWeights::get()
208				.per_class
209				.get(frame_support::dispatch::DispatchClass::Normal)
210				.max_extrinsic
211				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
212				.proof_size()
213				> 7306
214		);
215	}
216	#[test]
217	fn test_approve_as_multi_create() {
218		assert!(
219			BlockWeights::get()
220				.per_class
221				.get(frame_support::dispatch::DispatchClass::Normal)
222				.max_extrinsic
223				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
224				.proof_size()
225				> 7306
226		);
227	}
228	#[test]
229	fn test_approve_as_multi_approve() {
230		assert!(
231			BlockWeights::get()
232				.per_class
233				.get(frame_support::dispatch::DispatchClass::Normal)
234				.max_extrinsic
235				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
236				.proof_size()
237				> 7306
238		);
239	}
240	#[test]
241	fn test_cancel_as_multi() {
242		assert!(
243			BlockWeights::get()
244				.per_class
245				.get(frame_support::dispatch::DispatchClass::Normal)
246				.max_extrinsic
247				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
248				.proof_size()
249				> 7306
250		);
251	}
252	#[test]
253	fn test_poke_deposit() {
254		assert!(
255			BlockWeights::get()
256				.per_class
257				.get(frame_support::dispatch::DispatchClass::Normal)
258				.max_extrinsic
259				.unwrap_or_else(<Weight as sp_runtime::traits::Bounded>::max_value)
260				.proof_size()
261				> 7306
262		);
263	}
264}