1
// Copyright (C) Moondance Labs Ltd.
2
// This file is part of Tanssi.
3

            
4
// Tanssi 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
// Tanssi 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 Tanssi.  If not, see <http://www.gnu.org/licenses/>
16

            
17

            
18
//! Autogenerated weights for pallet_multisig
19
//!
20
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
21
//! DATE: 2025-05-05, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
22
//! WORST CASE MAP SIZE: `1000000`
23
//! HOSTNAME: `benchmark-1`, CPU: `Intel(R) Xeon(R) Platinum 8375C CPU @ 2.90GHz`
24
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("starlight-dev"), DB CACHE: 1024
25

            
26
// Executed Command:
27
// target/release/tanssi-relay
28
// benchmark
29
// pallet
30
// --execution=wasm
31
// --wasm-execution=compiled
32
// --pallet
33
// pallet_multisig
34
// --extrinsic
35
// *
36
// --chain=starlight-dev
37
// --steps
38
// 50
39
// --repeat
40
// 20
41
// --template=benchmarking/frame-weight-runtime-template.hbs
42
// --json-file
43
// raw.json
44
// --output
45
// tmp/starlight_weights/pallet_multisig.rs
46

            
47
#![cfg_attr(rustfmt, rustfmt_skip)]
48
#![allow(unused_parens)]
49
#![allow(unused_imports)]
50

            
51
use frame_support::{traits::Get, weights::{Weight, constants::RocksDbWeight}};
52
use sp_std::marker::PhantomData;
53

            
54
/// Weights for pallet_multisig using the Substrate node and recommended hardware.
55
pub struct SubstrateWeight<T>(PhantomData<T>);
56
impl<T: frame_system::Config> pallet_multisig::WeightInfo for SubstrateWeight<T> {
57
	fn poke_deposit(_s: u32, ) -> Weight {
58
		Default::default()
59
	}
60
	/// The range of component `z` is `[0, 10000]`.
61
	fn as_multi_threshold_1(z: u32, ) -> Weight {
62
		// Proof Size summary in bytes:
63
		//  Measured:  `0`
64
		//  Estimated: `0`
65
		// Minimum execution time: 19_153_000 picoseconds.
66
		Weight::from_parts(20_177_100, 0)
67
			// Standard Error: 2
68
			.saturating_add(Weight::from_parts(528, 0).saturating_mul(z.into()))
69
	}
70
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
71
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
72
	/// The range of component `s` is `[2, 100]`.
73
	/// The range of component `z` is `[0, 10000]`.
74
	fn as_multi_create(s: u32, z: u32, ) -> Weight {
75
		// Proof Size summary in bytes:
76
		//  Measured:  `367 + s * (2 ±0)`
77
		//  Estimated: `6811`
78
		// Minimum execution time: 59_575_000 picoseconds.
79
		Weight::from_parts(47_717_372, 6811)
80
			// Standard Error: 870
81
			.saturating_add(Weight::from_parts(141_930, 0).saturating_mul(s.into()))
82
			// Standard Error: 8
83
			.saturating_add(Weight::from_parts(1_977, 0).saturating_mul(z.into()))
84
			.saturating_add(T::DbWeight::get().reads(1_u64))
85
			.saturating_add(T::DbWeight::get().writes(1_u64))
86
	}
87
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
88
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
89
	/// The range of component `s` is `[3, 100]`.
90
	/// The range of component `z` is `[0, 10000]`.
91
	fn as_multi_approve(s: u32, z: u32, ) -> Weight {
92
		// Proof Size summary in bytes:
93
		//  Measured:  `386`
94
		//  Estimated: `6811`
95
		// Minimum execution time: 39_692_000 picoseconds.
96
		Weight::from_parts(27_604_152, 6811)
97
			// Standard Error: 757
98
			.saturating_add(Weight::from_parts(128_264, 0).saturating_mul(s.into()))
99
			// Standard Error: 7
100
			.saturating_add(Weight::from_parts(1_985, 0).saturating_mul(z.into()))
101
			.saturating_add(T::DbWeight::get().reads(1_u64))
102
			.saturating_add(T::DbWeight::get().writes(1_u64))
103
	}
104
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
105
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
106
	/// Storage: `System::Account` (r:1 w:1)
107
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
108
	/// The range of component `s` is `[2, 100]`.
109
	/// The range of component `z` is `[0, 10000]`.
110
	fn as_multi_complete(s: u32, z: u32, ) -> Weight {
111
		// Proof Size summary in bytes:
112
		//  Measured:  `492 + s * (33 ±0)`
113
		//  Estimated: `6811`
114
		// Minimum execution time: 66_040_000 picoseconds.
115
		Weight::from_parts(51_173_046, 6811)
116
			// Standard Error: 1_034
117
			.saturating_add(Weight::from_parts(163_579, 0).saturating_mul(s.into()))
118
			// Standard Error: 10
119
			.saturating_add(Weight::from_parts(2_012, 0).saturating_mul(z.into()))
120
			.saturating_add(T::DbWeight::get().reads(2_u64))
121
			.saturating_add(T::DbWeight::get().writes(2_u64))
122
	}
123
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
124
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
125
	/// The range of component `s` is `[2, 100]`.
126
	/// The range of component `z` is `[0, 10000]`.
127
	fn approve_as_multi_create(s: u32) -> Weight {
128
		// Proof Size summary in bytes:
129
		//  Measured:  `367 + s * (2 ±0)`
130
		//  Estimated: `6811`
131
		// Minimum execution time: 44_726_000 picoseconds.
132
		Weight::from_parts(45_493_238, 6811)
133
			// Standard Error: 830
134
			.saturating_add(Weight::from_parts(140_609, 0).saturating_mul(s.into()))
135
			// Standard Error: 8
136
			.saturating_add(T::DbWeight::get().reads(1_u64))
137
			.saturating_add(T::DbWeight::get().writes(1_u64))
138
	}
139
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
140
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
141
	/// The range of component `s` is `[2, 100]`.
142
	/// The range of component `z` is `[0, 10000]`.
143
	fn approve_as_multi_approve(s: u32) -> Weight {
144
		// Proof Size summary in bytes:
145
		//  Measured:  `386`
146
		//  Estimated: `6811`
147
		// Minimum execution time: 25_731_000 picoseconds.
148
		Weight::from_parts(25_728_008, 6811)
149
			// Standard Error: 732
150
			.saturating_add(Weight::from_parts(124_973, 0).saturating_mul(s.into()))
151
			// Standard Error: 7
152
			.saturating_add(T::DbWeight::get().reads(1_u64))
153
			.saturating_add(T::DbWeight::get().writes(1_u64))
154
	}
155
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
156
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
157
	/// The range of component `s` is `[2, 100]`.
158
	/// The range of component `z` is `[0, 10000]`.
159
	fn cancel_as_multi(s: u32) -> Weight {
160
		// Proof Size summary in bytes:
161
		//  Measured:  `558 + s * (1 ±0)`
162
		//  Estimated: `6811`
163
		// Minimum execution time: 45_067_000 picoseconds.
164
		Weight::from_parts(45_354_859, 6811)
165
			// Standard Error: 866
166
			.saturating_add(Weight::from_parts(134_322, 0).saturating_mul(s.into()))
167
			// Standard Error: 8
168
			.saturating_add(T::DbWeight::get().reads(1_u64))
169
			.saturating_add(T::DbWeight::get().writes(1_u64))
170
	}
171
}