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 42.0.0
21
//! DATE: 2024-09-25, 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
	/// The range of component `z` is `[0, 10000]`.
58
	fn as_multi_threshold_1(z: u32, ) -> Weight {
59
		// Proof Size summary in bytes:
60
		//  Measured:  `0`
61
		//  Estimated: `0`
62
		// Minimum execution time: 15_482_000 picoseconds.
63
		Weight::from_parts(16_465_958, 0)
64
			// Standard Error: 3
65
			.saturating_add(Weight::from_parts(486, 0).saturating_mul(z.into()))
66
	}
67
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
68
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
69
	/// The range of component `s` is `[2, 100]`.
70
	/// The range of component `z` is `[0, 10000]`.
71
	fn as_multi_create(s: u32, z: u32, ) -> Weight {
72
		// Proof Size summary in bytes:
73
		//  Measured:  `301 + s * (2 ±0)`
74
		//  Estimated: `6811`
75
		// Minimum execution time: 51_878_000 picoseconds.
76
		Weight::from_parts(39_634_320, 6811)
77
			// Standard Error: 1_213
78
			.saturating_add(Weight::from_parts(164_017, 0).saturating_mul(s.into()))
79
			// Standard Error: 11
80
			.saturating_add(Weight::from_parts(1_471, 0).saturating_mul(z.into()))
81
			.saturating_add(T::DbWeight::get().reads(1_u64))
82
			.saturating_add(T::DbWeight::get().writes(1_u64))
83
	}
84
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
85
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
86
	/// The range of component `s` is `[3, 100]`.
87
	/// The range of component `z` is `[0, 10000]`.
88
	fn as_multi_approve(s: u32, z: u32, ) -> Weight {
89
		// Proof Size summary in bytes:
90
		//  Measured:  `320`
91
		//  Estimated: `6811`
92
		// Minimum execution time: 31_906_000 picoseconds.
93
		Weight::from_parts(21_122_641, 6811)
94
			// Standard Error: 485
95
			.saturating_add(Weight::from_parts(118_028, 0).saturating_mul(s.into()))
96
			// Standard Error: 4
97
			.saturating_add(Weight::from_parts(1_438, 0).saturating_mul(z.into()))
98
			.saturating_add(T::DbWeight::get().reads(1_u64))
99
			.saturating_add(T::DbWeight::get().writes(1_u64))
100
	}
101
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
102
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
103
	/// Storage: `System::Account` (r:1 w:1)
104
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
105
	/// The range of component `s` is `[2, 100]`.
106
	/// The range of component `z` is `[0, 10000]`.
107
	fn as_multi_complete(s: u32, z: u32, ) -> Weight {
108
		// Proof Size summary in bytes:
109
		//  Measured:  `426 + s * (33 ±0)`
110
		//  Estimated: `6811`
111
		// Minimum execution time: 54_711_000 picoseconds.
112
		Weight::from_parts(43_473_848, 6811)
113
			// Standard Error: 1_190
114
			.saturating_add(Weight::from_parts(173_649, 0).saturating_mul(s.into()))
115
			// Standard Error: 11
116
			.saturating_add(Weight::from_parts(1_532, 0).saturating_mul(z.into()))
117
			.saturating_add(T::DbWeight::get().reads(2_u64))
118
			.saturating_add(T::DbWeight::get().writes(2_u64))
119
	}
120
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
121
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
122
	/// The range of component `s` is `[2, 100]`.
123
	fn approve_as_multi_create(s: u32, ) -> Weight {
124
		// Proof Size summary in bytes:
125
		//  Measured:  `301 + s * (2 ±0)`
126
		//  Estimated: `6811`
127
		// Minimum execution time: 36_606_000 picoseconds.
128
		Weight::from_parts(38_268_774, 6811)
129
			// Standard Error: 1_609
130
			.saturating_add(Weight::from_parts(174_703, 0).saturating_mul(s.into()))
131
			.saturating_add(T::DbWeight::get().reads(1_u64))
132
			.saturating_add(T::DbWeight::get().writes(1_u64))
133
	}
134
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
135
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
136
	/// The range of component `s` is `[2, 100]`.
137
	fn approve_as_multi_approve(s: u32, ) -> Weight {
138
		// Proof Size summary in bytes:
139
		//  Measured:  `320`
140
		//  Estimated: `6811`
141
		// Minimum execution time: 19_643_000 picoseconds.
142
		Weight::from_parts(20_249_655, 6811)
143
			// Standard Error: 576
144
			.saturating_add(Weight::from_parts(117_449, 0).saturating_mul(s.into()))
145
			.saturating_add(T::DbWeight::get().reads(1_u64))
146
			.saturating_add(T::DbWeight::get().writes(1_u64))
147
	}
148
	/// Storage: `Multisig::Multisigs` (r:1 w:1)
149
	/// Proof: `Multisig::Multisigs` (`max_values`: None, `max_size`: Some(3346), added: 5821, mode: `MaxEncodedLen`)
150
	/// The range of component `s` is `[2, 100]`.
151
	fn cancel_as_multi(s: u32, ) -> Weight {
152
		// Proof Size summary in bytes:
153
		//  Measured:  `492 + s * (1 ±0)`
154
		//  Estimated: `6811`
155
		// Minimum execution time: 36_918_000 picoseconds.
156
		Weight::from_parts(39_699_183, 6811)
157
			// Standard Error: 1_138
158
			.saturating_add(Weight::from_parts(144_225, 0).saturating_mul(s.into()))
159
			.saturating_add(T::DbWeight::get().reads(1_u64))
160
			.saturating_add(T::DbWeight::get().writes(1_u64))
161
	}
162
}