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 runtime_parachains::assigner_on_demand
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
// runtime_parachains::assigner_on_demand
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/runtime_parachains::assigner_on_demand.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 runtime_parachains::assigner_on_demand using the Substrate node and recommended hardware.
55
pub struct SubstrateWeight<T>(PhantomData<T>);
56
impl<T: frame_system::Config> runtime_parachains::assigner_on_demand::WeightInfo for SubstrateWeight<T> {
57
	/// Storage: `OnDemandAssignmentProvider::QueueStatus` (r:1 w:1)
58
	/// Proof: `OnDemandAssignmentProvider::QueueStatus` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
59
	/// Storage: `System::Account` (r:1 w:1)
60
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
61
	/// Storage: `OnDemandAssignmentProvider::Revenue` (r:1 w:1)
62
	/// Proof: `OnDemandAssignmentProvider::Revenue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
63
	/// Storage: `OnDemandAssignmentProvider::ParaIdAffinity` (r:1 w:0)
64
	/// Proof: `OnDemandAssignmentProvider::ParaIdAffinity` (`max_values`: None, `max_size`: None, mode: `Measured`)
65
	/// Storage: `OnDemandAssignmentProvider::FreeEntries` (r:1 w:1)
66
	/// Proof: `OnDemandAssignmentProvider::FreeEntries` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
67
	/// The range of component `s` is `[1, 9999]`.
68
	fn place_order_keep_alive(s: u32, ) -> Weight {
69
		// Proof Size summary in bytes:
70
		//  Measured:  `237 + s * (8 ±0)`
71
		//  Estimated: `3700 + s * (8 ±0)`
72
		// Minimum execution time: 46_661_000 picoseconds.
73
		Weight::from_parts(52_726_646, 3700)
74
			// Standard Error: 117
75
			.saturating_add(Weight::from_parts(20_346, 0).saturating_mul(s.into()))
76
			.saturating_add(T::DbWeight::get().reads(5_u64))
77
			.saturating_add(T::DbWeight::get().writes(4_u64))
78
			.saturating_add(Weight::from_parts(0, 8).saturating_mul(s.into()))
79
	}
80
	/// Storage: `OnDemandAssignmentProvider::QueueStatus` (r:1 w:1)
81
	/// Proof: `OnDemandAssignmentProvider::QueueStatus` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
82
	/// Storage: `System::Account` (r:1 w:1)
83
	/// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
84
	/// Storage: `OnDemandAssignmentProvider::Revenue` (r:1 w:1)
85
	/// Proof: `OnDemandAssignmentProvider::Revenue` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
86
	/// Storage: `OnDemandAssignmentProvider::ParaIdAffinity` (r:1 w:0)
87
	/// Proof: `OnDemandAssignmentProvider::ParaIdAffinity` (`max_values`: None, `max_size`: None, mode: `Measured`)
88
	/// Storage: `OnDemandAssignmentProvider::FreeEntries` (r:1 w:1)
89
	/// Proof: `OnDemandAssignmentProvider::FreeEntries` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
90
	/// The range of component `s` is `[1, 9999]`.
91
	fn place_order_allow_death(s: u32, ) -> Weight {
92
		// Proof Size summary in bytes:
93
		//  Measured:  `237 + s * (8 ±0)`
94
		//  Estimated: `3700 + s * (8 ±0)`
95
		// Minimum execution time: 46_599_000 picoseconds.
96
		Weight::from_parts(52_157_164, 3700)
97
			// Standard Error: 122
98
			.saturating_add(Weight::from_parts(20_538, 0).saturating_mul(s.into()))
99
			.saturating_add(T::DbWeight::get().reads(5_u64))
100
			.saturating_add(T::DbWeight::get().writes(4_u64))
101
			.saturating_add(Weight::from_parts(0, 8).saturating_mul(s.into()))
102
	}
103
}