diff --git a/Cargo.lock b/Cargo.lock index 5356bd55e..e7f1faf90 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -10458,6 +10458,7 @@ dependencies = [ "pallet-elections", "pallet-members", "pallet-shards", + "pallet-treasury", "parity-scale-codec", "scale-info", "schnorr-evm", diff --git a/config/subxt/mainnet.default.scale b/config/subxt/mainnet.default.scale index eda3f1701..dd42608ef 100644 Binary files a/config/subxt/mainnet.default.scale and b/config/subxt/mainnet.default.scale differ diff --git a/config/subxt/mainnet.development.scale b/config/subxt/mainnet.development.scale index cc7ea6997..47d592830 100644 Binary files a/config/subxt/mainnet.development.scale and b/config/subxt/mainnet.development.scale differ diff --git a/config/subxt/testnet.default.scale b/config/subxt/testnet.default.scale index 677143099..ee8b60158 100644 Binary files a/config/subxt/testnet.default.scale and b/config/subxt/testnet.default.scale differ diff --git a/config/subxt/testnet.development.scale b/config/subxt/testnet.development.scale index 24d4bece7..0bce6e3e5 100644 Binary files a/config/subxt/testnet.development.scale and b/config/subxt/testnet.development.scale differ diff --git a/pallets/tasks/Cargo.toml b/pallets/tasks/Cargo.toml index 332f72dbc..51c9dc198 100644 --- a/pallets/tasks/Cargo.toml +++ b/pallets/tasks/Cargo.toml @@ -21,6 +21,7 @@ scale-info.workspace = true frame-support = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } frame-system = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } pallet-balances = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } +pallet-treasury = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } sp-core = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } sp-runtime = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } sp-std = { git = "https://github.com/analog-labs/polkadot-sdk", tag = "v1.13.0-patched2", default-features = false } @@ -51,6 +52,7 @@ std = [ "frame-support/std", "frame-system/std", "pallet-balances/std", + "pallet-treasury/std", "sp-core/std", "sp-runtime/std", "sp-std/std", diff --git a/pallets/tasks/src/benchmarking.rs b/pallets/tasks/src/benchmarking.rs index 802959a7e..db80cdca8 100644 --- a/pallets/tasks/src/benchmarking.rs +++ b/pallets/tasks/src/benchmarking.rs @@ -12,6 +12,8 @@ use time_primitives::{ const ETHEREUM: NetworkId = 0; +const TREASURY_BALANCE: u128 = 100_u128.pow(12); + fn public_key(acc: [u8; 32]) -> PublicKey { PublicKey::Sr25519(sp_core::sr25519::Public::from_raw(acc)) } @@ -169,6 +171,10 @@ benchmarks! { }: _(RawOrigin::Signed(signer), 0, Ok([0u8; 32])) verify {} submit_signature { + pallet_balances::Pallet::::resolve_creating( + &pallet_treasury::Pallet::::account_id(), + pallet_balances::Pallet::::issue(TREASURY_BALANCE), + ); let function = Function::SendMessage { msg: Msg::default() }; let descriptor = TaskDescriptorParams { network: ETHEREUM, @@ -212,6 +218,10 @@ benchmarks! { }: _(RawOrigin::Signed(caller), 0, signature) verify {} register_gateway { + pallet_balances::Pallet::::resolve_creating( + &pallet_treasury::Pallet::::account_id(), + pallet_balances::Pallet::::issue(TREASURY_BALANCE), + ); ::Shards::create_shard( ETHEREUM, [[0u8; 32].into(), [1u8; 32].into(), [2u8; 32].into()].to_vec(), @@ -256,6 +266,10 @@ benchmarks! { unregister_gateways { // TODO: replace upper bound with PALLET_MAXIMUM let b in 1..10; + pallet_balances::Pallet::::resolve_creating( + &pallet_treasury::Pallet::::account_id(), + pallet_balances::Pallet::::issue(TREASURY_BALANCE), + ); for i in 0..b { ::Shards::create_shard( ETHEREUM, diff --git a/pallets/tasks/src/lib.rs b/pallets/tasks/src/lib.rs index 8cae29ad2..178d17b8d 100644 --- a/pallets/tasks/src/lib.rs +++ b/pallets/tasks/src/lib.rs @@ -160,7 +160,9 @@ pub mod pallet { #[pallet::config] pub trait Config: - frame_system::Config + pallet_balances::Config + frame_system::Config + + pallet_balances::Config + + pallet_treasury::Config { type RuntimeEvent: From> + IsType<::RuntimeEvent>; type WeightInfo: WeightInfo; @@ -401,6 +403,12 @@ pub mod pallet { ShardTaskLimitSet(NetworkId, u32), /// Set the network batch size BatchSizeSet(NetworkId, u64, u64), + /// Insufficient Treasury Balance to create RegisterShard task + InsufficientTreasuryBalanceToRegisterShard(ShardId), + /// Insufficient Treasury Balance to create UnRegisterShard task + InsufficientTreasuryBalanceToUnRegisterShard(ShardId), + /// Insufficient Treasury Balance To Create SendMessage task as an effect of calling `submit_result` + InsufficientTreasuryBalanceToSendMessage(Msg), } #[pallet::error] @@ -435,6 +443,8 @@ pub mod pallet { BootstrapShardMustBeOnline, /// Shard for task must be online at task creation MatchingShardNotOnline, + /// Insufficient balance in Treasury to fund register_gateway Recv Tasks + InsufficientTreasuryBalanceToRecvTasks, } #[pallet::call] @@ -483,36 +493,41 @@ pub mod pallet { ensure!(result.shard_id == shard_id, Error::::InvalidOwner); let bytes = result.payload.bytes(task_id); Self::validate_signature(result.shard_id, &bytes, result.signature)?; - Self::finish_task(task_id, result.clone()); - Self::payout_task_rewards(task_id, result.shard_id, task.function.initial_phase()); - if let Function::RegisterShard { shard_id } = task.function { - ShardRegistered::::insert(shard_id, ()); - } match &result.payload { Payload::Gmp(msgs) => { - for msg in msgs { - let send_task_id = Self::send_message(result.shard_id, msg.clone()); - MessageTask::::insert(msg.salt, (task_id, send_task_id)); - } if let Some(block_height) = RecvTasks::::get(task.network) { let batch_size = NetworkBatchSize::::get(task.network) .and_then(NonZeroU64::new) .unwrap_or(BATCH_SIZE); if let Some(next_block_height) = block_height.checked_add(batch_size.into()) { - Self::recv_messages(task.network, next_block_height, batch_size); + Self::recv_messages(task.network, next_block_height, batch_size)?; + } + } + for msg in msgs { + if let Ok(send_task_id) = Self::send_message(result.shard_id, msg.clone()) { + MessageTask::::insert(msg.salt, (task_id, send_task_id)); + } else { + Self::deposit_event(Event::InsufficientTreasuryBalanceToSendMessage( + msg.clone(), + )); } } }, Payload::Error(_) => { if let Function::ReadMessages { batch_size } = task.function { if let Some(block_height) = RecvTasks::::get(task.network) { - Self::recv_messages(task.network, block_height, batch_size); + Self::recv_messages(task.network, block_height, batch_size)?; } } }, _ => {}, } + Self::finish_task(task_id, result.clone()); + Self::payout_task_rewards(task_id, result.shard_id, task.function.initial_phase()); + if let Function::RegisterShard { shard_id } = task.function { + ShardRegistered::::insert(shard_id, ()); + } Self::deposit_event(Event::TaskResult(task_id, result)); Ok(()) } @@ -640,7 +655,7 @@ pub mod pallet { let batch_size = NonZeroU64::new(network_batch_size.get() - ((block_height + network_offset) % network_batch_size)) .expect("x = block_height % BATCH_SIZE ==> x <= BATCH_SIZE - 1 ==> BATCH_SIZE - x >= 1; QED"); let block_height = block_height + batch_size.get(); - Self::recv_messages(network, block_height, batch_size); + Self::recv_messages(network, block_height, batch_size)?; } Ok(()) } @@ -963,7 +978,7 @@ pub mod pallet { impl Pallet { /// The account ID containing the funds for a task. fn task_account(task_id: TaskId) -> T::AccountId { - T::PalletId::get().into_sub_account_truncating(task_id) + ::PalletId::get().into_sub_account_truncating(task_id) } /// Prioritized tasks @@ -992,33 +1007,44 @@ pub mod pallet { /// 1. Insert network_id and block_height into RecvTasks storage. /// 2. Create a task descriptor with `network_id`, [`Function::ReadMessages`] { `batch_size` }, and default shard size. /// 3. Set the task's start field to block_height. - /// 4. Start the task with [`TaskFunder::Inflation`]. - fn recv_messages(network_id: NetworkId, block_height: u64, batch_size: NonZeroU64) { - RecvTasks::::insert(network_id, block_height); + /// 4. Start the task with [`TaskFunder::Treasury`]. + fn recv_messages( + network_id: NetworkId, + block_height: u64, + batch_size: NonZeroU64, + ) -> DispatchResult { let mut task = TaskDescriptorParams::new( network_id, Function::ReadMessages { batch_size }, T::Elections::default_shard_size(), ); task.start = block_height; - Self::start_task(task, TaskFunder::Inflation).expect("task funded through inflation"); + ensure!( + Self::start_task(task, TaskFunder::Treasury).is_ok(), + Error::::InsufficientTreasuryBalanceToRecvTasks + ); + RecvTasks::::insert(network_id, block_height); + Ok(()) } /// Registers a new shard and initiates a task for shard registration. /// /// # Flow /// 1. Create a task descriptor with `network_id`, [`Function::RegisterShard`] { `shard_id` }, and shard member count. - /// 2. Start the task with [`TaskFunder::Inflation`]. + /// 2. Start the task with [`TaskFunder::Treasury`]. fn register_shard(shard_id: ShardId, network_id: NetworkId) { - Self::start_task( + if Self::start_task( TaskDescriptorParams::new( network_id, Function::RegisterShard { shard_id }, T::Shards::shard_members(shard_id).len() as _, ), - TaskFunder::Inflation, + TaskFunder::Treasury, ) - .expect("task funded through inflation"); + .is_err() + { + Self::deposit_event(Event::InsufficientTreasuryBalanceToRegisterShard(shard_id)); + } } /// Filters and processes tasks using a provided function. @@ -1044,7 +1070,7 @@ pub mod pallet { /// 1. Check if the shard with shard_id is registered. /// 2. If the shard is registered: /// - Start a task to unregister the shard. - /// - Fund the task using inflation. + /// - Fund the task using the treasury. /// 3. If the shard is not registered: /// - Iterate through existing tasks. /// - For each task, check if it is a registration task for the same shard. @@ -1052,15 +1078,20 @@ pub mod pallet { fn unregister_shard(shard_id: ShardId, network: NetworkId) { if ShardRegistered::::take(shard_id).is_some() { - Self::start_task( + if Self::start_task( TaskDescriptorParams::new( network, Function::UnregisterShard { shard_id }, T::Shards::shard_members(shard_id).len() as _, ), - TaskFunder::Inflation, + TaskFunder::Treasury, ) - .expect("task funded through inflation"); + .is_err() + { + Self::deposit_event(Event::InsufficientTreasuryBalanceToUnRegisterShard( + shard_id, + )); + } return; } Self::filter_tasks(|task_id| { @@ -1082,25 +1113,24 @@ pub mod pallet { }); } - /// To initiate a task that sends a message to a specified destination network, leveraging the inflation funding mechanism. + /// To initiate a task that sends a message to a specified destination network. /// /// # Flow /// 1. Create task parameters using `TaskDescriptorParams::new` with the following: /// - Destination network from `msg.dest_network`. /// - Function to send the message ([`Function::SendMessage { msg }`][Function::SendMessage]). - /// 2. Start a task with the created parameters and fund it using [`TaskFunder::Inflation`]. - /// 3. Ensure the task is successfully started and funded using `expect("task funded through inflation")`. + /// 2. Start a task with the created parameters and fund it using [`TaskFunder::Treasury`]. + /// 3. Ensure the task is successfully started and funded using the chronicle. /// 4. Return the Task ID of the started task. - fn send_message(shard_id: ShardId, msg: Msg) -> TaskId { + fn send_message(shard_id: ShardId, msg: Msg) -> Result { Self::start_task( TaskDescriptorParams::new( msg.dest_network, Function::SendMessage { msg }, T::Shards::shard_members(shard_id).len() as _, ), - TaskFunder::Inflation, + TaskFunder::Treasury, ) - .expect("task funded through inflation") } /// To initialize and start a task with the given parameters and fund it through various means. @@ -1156,19 +1186,13 @@ pub mod pallet { )?; Some(user) }, - TaskFunder::Shard(shard_id) => { - let task_account = Self::task_account(task_id); - let amount = required_funds.saturating_div(schedule.shard_size.into()); - for member in T::Shards::shard_members(shard_id) { - T::Members::transfer_stake(&member, &task_account, amount)?; - } - None - }, - TaskFunder::Inflation => { - pallet_balances::Pallet::::resolve_creating( + TaskFunder::Treasury => { + pallet_balances::Pallet::::transfer( + &pallet_treasury::Pallet::::account_id(), &Self::task_account(task_id), - pallet_balances::Pallet::::issue(required_funds), - ); + required_funds, + ExistenceRequirement::KeepAlive, + )?; None }, }; diff --git a/pallets/tasks/src/mock.rs b/pallets/tasks/src/mock.rs index 8db8f001d..f55417ea2 100644 --- a/pallets/tasks/src/mock.rs +++ b/pallets/tasks/src/mock.rs @@ -1,13 +1,19 @@ use crate::{self as task_schedule}; +use core::marker::PhantomData; use frame_support::derive_impl; -use frame_support::traits::{OnFinalize, OnInitialize}; +use frame_support::traits::{ + tokens::{ConversionFromAssetBalance, Pay, PaymentStatus}, + OnFinalize, OnInitialize, +}; use frame_support::PalletId; use schnorr_evm::SigningKey; -use sp_core::{ConstU128, ConstU64}; +use sp_core::{ConstU128, ConstU32, ConstU64}; use sp_runtime::{ - traits::{parameter_types, IdentifyAccount, IdentityLookup, Verify}, - BuildStorage, DispatchResult, MultiSignature, Percent, + traits::{parameter_types, Get, IdentifyAccount, IdentityLookup, Verify}, + BuildStorage, DispatchResult, MultiSignature, Percent, Permill, }; +use sp_std::cell::RefCell; +use sp_std::collections::btree_map::BTreeMap; use time_primitives::{ Balance, DepreciationRate, ElectionsInterface, MemberStorage, NetworkId, PeerId, PublicKey, TransferStake, @@ -61,6 +67,7 @@ frame_support::construct_runtime!( Shards: pallet_shards::{Pallet, Call, Storage, Event}, Members: pallet_members, Elections: pallet_elections, + Treasury: pallet_treasury, } ); @@ -87,6 +94,107 @@ impl pallet_balances::Config for Test { type WeightInfo = pallet_balances::weights::SubstrateWeight; } +thread_local! { + pub static PAID: RefCell> = const { RefCell::new(BTreeMap::new()) }; + pub static STATUS: RefCell> = const { RefCell::new(BTreeMap::new()) }; + pub static LAST_ID: RefCell = const { RefCell::new(0u64) }; +} + +/// set status for a given payment id +fn set_status(id: u64, s: PaymentStatus) { + STATUS.with(|m| m.borrow_mut().insert(id, s)); +} + +pub struct TestPay; +impl Pay for TestPay { + type Beneficiary = u128; + type Balance = u128; + type Id = u64; + type AssetKind = u32; + type Error = (); + + fn pay( + who: &Self::Beneficiary, + asset_kind: Self::AssetKind, + amount: Self::Balance, + ) -> Result { + PAID.with(|paid| *paid.borrow_mut().entry((*who, asset_kind)).or_default() += amount); + Ok(LAST_ID.with(|lid| { + let x = *lid.borrow(); + lid.replace(x + 1); + x + })) + } + fn check_payment(id: Self::Id) -> PaymentStatus { + STATUS.with(|s| s.borrow().get(&id).cloned().unwrap_or(PaymentStatus::Unknown)) + } + #[cfg(feature = "runtime-benchmarks")] + fn ensure_successful(_: &Self::Beneficiary, _: Self::AssetKind, _: Self::Balance) {} + #[cfg(feature = "runtime-benchmarks")] + fn ensure_concluded(id: Self::Id) { + set_status(id, PaymentStatus::Failure) + } +} + +parameter_types! { + pub const ProposalBond: Permill = Permill::from_percent(5); + pub const Burn: Permill = Permill::from_percent(50); + pub const TreasuryPalletId: PalletId = PalletId(*b"py/trsry"); + pub TreasuryAccount: AccountId = Treasury::account_id(); + pub const SpendPayoutPeriod: u64 = 5; +} +pub struct TestSpendOrigin; +impl frame_support::traits::EnsureOrigin for TestSpendOrigin { + type Success = u128; + fn try_origin(o: RuntimeOrigin) -> Result { + Result::, RuntimeOrigin>::from(o).and_then(|o| match o { + frame_system::RawOrigin::Root => Ok(u128::MAX), + r => Err(RuntimeOrigin::from(r)), + }) + } + #[cfg(feature = "runtime-benchmarks")] + fn try_successful_origin() -> Result { + Ok(RuntimeOrigin::root()) + } +} + +pub struct MulBy(PhantomData); +impl> ConversionFromAssetBalance for MulBy { + type Error = (); + fn from_asset_balance(balance: u128, _asset_id: u32) -> Result { + balance.checked_mul(N::get()).ok_or(()) + } + #[cfg(feature = "runtime-benchmarks")] + fn ensure_successful(_: u32) {} +} + +impl pallet_treasury::Config for Test { + type PalletId = TreasuryPalletId; + type Currency = pallet_balances::Pallet; + type ApproveOrigin = frame_system::EnsureRoot; + type RejectOrigin = frame_system::EnsureRoot; + type RuntimeEvent = RuntimeEvent; + type OnSlash = (); + type ProposalBond = ProposalBond; + type ProposalBondMinimum = ConstU128<1>; + type ProposalBondMaximum = (); + type SpendPeriod = ConstU64<2>; + type Burn = Burn; + type BurnDestination = (); // Just gets burned. + type WeightInfo = (); + type SpendFunds = (); + type MaxApprovals = ConstU32<100>; + type SpendOrigin = TestSpendOrigin; + type AssetKind = u32; + type Beneficiary = u128; + type BeneficiaryLookup = IdentityLookup; + type Paymaster = TestPay; + type BalanceConverter = MulBy>; + type PayoutPeriod = SpendPayoutPeriod; + #[cfg(feature = "runtime-benchmarks")] + type BenchmarkHelper = (); +} + impl pallet_members::Config for Test { type WeightInfo = (); type RuntimeEvent = RuntimeEvent; @@ -167,7 +275,11 @@ impl frame_system::offchain::SigningTypes for Test { pub fn new_test_ext() -> sp_io::TestExternalities { let mut storage = frame_system::GenesisConfig::::default().build_storage().unwrap(); pallet_balances::GenesisConfig:: { - balances: vec![(acc_pub(0).into(), 10_000_000_000), (acc_pub(1).into(), 20_000_000_000)], + balances: vec![ + (acc_pub(0).into(), 10_000_000_000), + (acc_pub(1).into(), 20_000_000_000), + (TreasuryAccount::get(), 30_000_000_000), + ], } .assimilate_storage(&mut storage) .unwrap(); diff --git a/primitives/src/task.rs b/primitives/src/task.rs index c24dd2a77..37f7ae9c4 100644 --- a/primitives/src/task.rs +++ b/primitives/src/task.rs @@ -216,6 +216,5 @@ pub struct RewardConfig { #[derive(Debug, Clone, Decode, Encode, TypeInfo, PartialEq, Eq, PartialOrd, Ord)] pub enum TaskFunder { Account(AccountId), - Shard(ShardId), - Inflation, + Treasury, } diff --git a/runtimes/mainnet/src/weights/elections.rs b/runtimes/mainnet/src/weights/elections.rs index 7dec7c161..c6fc706b4 100644 --- a/runtimes/mainnet/src/weights/elections.rs +++ b/runtimes/mainnet/src/weights/elections.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_elections` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("staging")`, DB CACHE: 1024 @@ -43,8 +43,8 @@ impl pallet_elections::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `123` // Estimated: `3588` - // Minimum execution time: 12_514_000 picoseconds. - Weight::from_parts(12_974_000, 0) + // Minimum execution time: 20_729_000 picoseconds. + Weight::from_parts(24_165_000, 0) .saturating_add(Weight::from_parts(0, 3588)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) diff --git a/runtimes/mainnet/src/weights/members.rs b/runtimes/mainnet/src/weights/members.rs index 2ffd79767..77799e777 100644 --- a/runtimes/mainnet/src/weights/members.rs +++ b/runtimes/mainnet/src/weights/members.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_members` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("staging")`, DB CACHE: 1024 @@ -59,8 +59,8 @@ impl pallet_members::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `487` // Estimated: `6427` - // Minimum execution time: 83_327_000 picoseconds. - Weight::from_parts(85_730_000, 0) + // Minimum execution time: 84_198_000 picoseconds. + Weight::from_parts(93_055_000, 0) .saturating_add(Weight::from_parts(0, 6427)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(8)) @@ -75,8 +75,8 @@ impl pallet_members::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `293` // Estimated: `3758` - // Minimum execution time: 22_071_000 picoseconds. - Weight::from_parts(23_504_000, 0) + // Minimum execution time: 22_182_000 picoseconds. + Weight::from_parts(23_314_000, 0) .saturating_add(Weight::from_parts(0, 3758)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -103,8 +103,8 @@ impl pallet_members::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `587` // Estimated: `4052` - // Minimum execution time: 66_916_000 picoseconds. - Weight::from_parts(107_191_000, 0) + // Minimum execution time: 60_162_000 picoseconds. + Weight::from_parts(61_996_000, 0) .saturating_add(Weight::from_parts(0, 4052)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(8)) diff --git a/runtimes/mainnet/src/weights/networks.rs b/runtimes/mainnet/src/weights/networks.rs index 22fd4498c..007d496e1 100644 --- a/runtimes/mainnet/src/weights/networks.rs +++ b/runtimes/mainnet/src/weights/networks.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_networks` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("staging")`, DB CACHE: 1024 @@ -43,13 +43,13 @@ impl pallet_networks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `359` // Estimated: `21149` - // Minimum execution time: 46_648_000 picoseconds. - Weight::from_parts(48_180_841, 0) + // Minimum execution time: 47_239_000 picoseconds. + Weight::from_parts(46_878_129, 0) .saturating_add(Weight::from_parts(0, 21149)) - // Standard Error: 418 - .saturating_add(Weight::from_parts(678, 0).saturating_mul(a.into())) - // Standard Error: 418 - .saturating_add(Weight::from_parts(2_099, 0).saturating_mul(b.into())) + // Standard Error: 417 + .saturating_add(Weight::from_parts(3_155, 0).saturating_mul(a.into())) + // Standard Error: 417 + .saturating_add(Weight::from_parts(1_617, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/runtimes/mainnet/src/weights/shards.rs b/runtimes/mainnet/src/weights/shards.rs index fbfb20fcd..32762912a 100644 --- a/runtimes/mainnet/src/weights/shards.rs +++ b/runtimes/mainnet/src/weights/shards.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_shards` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("staging")`, DB CACHE: 1024 @@ -47,8 +47,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `828` // Estimated: `11718` - // Minimum execution time: 522_029_000 picoseconds. - Weight::from_parts(556_954_000, 0) + // Minimum execution time: 541_824_000 picoseconds. + Weight::from_parts(544_660_000, 0) .saturating_add(Weight::from_parts(0, 11718)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(3)) @@ -69,8 +69,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `628` // Estimated: `11518` - // Minimum execution time: 64_151_000 picoseconds. - Weight::from_parts(65_243_000, 0) + // Minimum execution time: 64_542_000 picoseconds. + Weight::from_parts(66_664_000, 0) .saturating_add(Weight::from_parts(0, 11518)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) @@ -105,8 +105,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `712` // Estimated: `11602` - // Minimum execution time: 116_829_000 picoseconds. - Weight::from_parts(120_586_000, 0) + // Minimum execution time: 117_791_000 picoseconds. + Weight::from_parts(121_518_000, 0) .saturating_add(Weight::from_parts(0, 11602)) .saturating_add(T::DbWeight::get().reads(18)) .saturating_add(T::DbWeight::get().writes(13)) @@ -117,8 +117,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `76` // Estimated: `3541` - // Minimum execution time: 4_357_000 picoseconds. - Weight::from_parts(4_589_000, 0) + // Minimum execution time: 4_398_000 picoseconds. + Weight::from_parts(4_538_000, 0) .saturating_add(Weight::from_parts(0, 3541)) .saturating_add(T::DbWeight::get().reads(1)) } diff --git a/runtimes/mainnet/src/weights/tasks.rs b/runtimes/mainnet/src/weights/tasks.rs index 926b8c007..e8e8189d8 100644 --- a/runtimes/mainnet/src/weights/tasks.rs +++ b/runtimes/mainnet/src/weights/tasks.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_tasks` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("staging")`, DB CACHE: 1024 @@ -68,11 +68,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `666` // Estimated: `11556` - // Minimum execution time: 140_352_000 picoseconds. - Weight::from_parts(146_915_113, 0) + // Minimum execution time: 142_948_000 picoseconds. + Weight::from_parts(144_924_971, 0) .saturating_add(Weight::from_parts(0, 11556)) - // Standard Error: 64 - .saturating_add(Weight::from_parts(923, 0).saturating_mul(b.into())) + // Standard Error: 334 + .saturating_add(Weight::from_parts(2_722, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(14)) .saturating_add(T::DbWeight::get().writes(8)) } @@ -102,8 +102,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `1710` // Estimated: `12600` - // Minimum execution time: 639_579_000 picoseconds. - Weight::from_parts(652_743_000, 0) + // Minimum execution time: 655_929_000 picoseconds. + Weight::from_parts(710_211_000, 0) .saturating_add(Weight::from_parts(0, 12600)) .saturating_add(T::DbWeight::get().reads(17)) .saturating_add(T::DbWeight::get().writes(9)) @@ -128,8 +128,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `628` // Estimated: `4093` - // Minimum execution time: 49_003_000 picoseconds. - Weight::from_parts(49_773_000, 0) + // Minimum execution time: 49_823_000 picoseconds. + Weight::from_parts(52_308_000, 0) .saturating_add(Weight::from_parts(0, 4093)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) @@ -162,8 +162,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `2063` // Estimated: `20378` - // Minimum execution time: 500_437_000 picoseconds. - Weight::from_parts(511_248_000, 0) + // Minimum execution time: 503_604_000 picoseconds. + Weight::from_parts(528_230_000, 0) .saturating_add(Weight::from_parts(0, 20378)) .saturating_add(T::DbWeight::get().reads(16)) .saturating_add(T::DbWeight::get().writes(5)) @@ -218,8 +218,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `716` // Estimated: `6656` - // Minimum execution time: 133_169_000 picoseconds. - Weight::from_parts(140_444_000, 0) + // Minimum execution time: 170_220_000 picoseconds. + Weight::from_parts(174_597_000, 0) .saturating_add(Weight::from_parts(0, 6656)) .saturating_add(T::DbWeight::get().reads(19)) .saturating_add(T::DbWeight::get().writes(11)) @@ -230,8 +230,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_638_000 picoseconds. - Weight::from_parts(10_169_000, 0) + // Minimum execution time: 9_898_000 picoseconds. + Weight::from_parts(10_380_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -241,8 +241,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_718_000 picoseconds. - Weight::from_parts(10_048_000, 0) + // Minimum execution time: 10_139_000 picoseconds. + Weight::from_parts(10_620_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -252,8 +252,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_828_000 picoseconds. - Weight::from_parts(10_199_000, 0) + // Minimum execution time: 10_029_000 picoseconds. + Weight::from_parts(10_469_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -283,8 +283,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `564` // Estimated: `4029` - // Minimum execution time: 54_091_000 picoseconds. - Weight::from_parts(66_905_000, 0) + // Minimum execution time: 55_554_000 picoseconds. + Weight::from_parts(58_479_000, 0) .saturating_add(Weight::from_parts(0, 4029)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(8)) @@ -322,11 +322,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `724 + b * (247 ±0)` // Estimated: `4197 + b * (2718 ±0)` - // Minimum execution time: 76_354_000 picoseconds. - Weight::from_parts(38_612_179, 0) + // Minimum execution time: 76_864_000 picoseconds. + Weight::from_parts(40_624_386, 0) .saturating_add(Weight::from_parts(0, 4197)) - // Standard Error: 79_740 - .saturating_add(Weight::from_parts(42_439_950, 0).saturating_mul(b.into())) + // Standard Error: 146_890 + .saturating_add(Weight::from_parts(44_299_114, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes((8_u64).saturating_mul(b.into()))) @@ -355,11 +355,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `497 + b * (212 ±0)` // Estimated: `3972 + b * (2683 ±0)` - // Minimum execution time: 64_372_000 picoseconds. - Weight::from_parts(32_661_075, 0) + // Minimum execution time: 64_241_000 picoseconds. + Weight::from_parts(31_528_502, 0) .saturating_add(Weight::from_parts(0, 3972)) - // Standard Error: 68_197 - .saturating_add(Weight::from_parts(36_330_631, 0).saturating_mul(b.into())) + // Standard Error: 89_470 + .saturating_add(Weight::from_parts(37_742_628, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -372,8 +372,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_528_000 picoseconds. - Weight::from_parts(10_219_000, 0) + // Minimum execution time: 9_678_000 picoseconds. + Weight::from_parts(10_267_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -397,12 +397,12 @@ impl pallet_tasks::WeightInfo for WeightInfo { fn unregister_gateways(b: u32, ) -> Weight { // Proof Size summary in bytes: // Measured: `0 + b * (569 ±0)` - // Estimated: `6444 + b * (12303 ±4)` - // Minimum execution time: 44_964_000 picoseconds. - Weight::from_parts(46_016_000, 0) + // Estimated: `6444 + b * (12303 ±124)` + // Minimum execution time: 44_784_000 picoseconds. + Weight::from_parts(45_906_000, 0) .saturating_add(Weight::from_parts(0, 6444)) - // Standard Error: 428_625 - .saturating_add(Weight::from_parts(42_986_284, 0).saturating_mul(b.into())) + // Standard Error: 408_936 + .saturating_add(Weight::from_parts(43_131_384, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(8)) .saturating_add(T::DbWeight::get().reads((10_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(3)) @@ -416,8 +416,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 11_733_000 picoseconds. - Weight::from_parts(12_283_000, 0) + // Minimum execution time: 12_263_000 picoseconds. + Weight::from_parts(12_684_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/runtimes/mainnet/src/weights/timegraph.rs b/runtimes/mainnet/src/weights/timegraph.rs index 3b446c0a2..d3c7dd9f7 100644 --- a/runtimes/mainnet/src/weights/timegraph.rs +++ b/runtimes/mainnet/src/weights/timegraph.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_timegraph` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("staging")`, DB CACHE: 1024 @@ -41,8 +41,8 @@ impl pallet_timegraph::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `192` // Estimated: `3657` - // Minimum execution time: 68_018_000 picoseconds. - Weight::from_parts(70_421_000, 0) + // Minimum execution time: 69_020_000 picoseconds. + Weight::from_parts(71_524_000, 0) .saturating_add(Weight::from_parts(0, 3657)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -55,8 +55,8 @@ impl pallet_timegraph::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `192` // Estimated: `3657` - // Minimum execution time: 68_118_000 picoseconds. - Weight::from_parts(71_144_000, 0) + // Minimum execution time: 68_830_000 picoseconds. + Weight::from_parts(70_903_000, 0) .saturating_add(Weight::from_parts(0, 3657)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) diff --git a/runtimes/testnet/src/weights/elections.rs b/runtimes/testnet/src/weights/elections.rs index 075978b35..c11b34093 100644 --- a/runtimes/testnet/src/weights/elections.rs +++ b/runtimes/testnet/src/weights/elections.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_elections` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("development")`, DB CACHE: 1024 @@ -43,8 +43,8 @@ impl pallet_elections::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `123` // Estimated: `3588` - // Minimum execution time: 12_383_000 picoseconds. - Weight::from_parts(13_324_000, 0) + // Minimum execution time: 12_323_000 picoseconds. + Weight::from_parts(12_924_000, 0) .saturating_add(Weight::from_parts(0, 3588)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(2)) diff --git a/runtimes/testnet/src/weights/members.rs b/runtimes/testnet/src/weights/members.rs index be6847a80..a0b911a6b 100644 --- a/runtimes/testnet/src/weights/members.rs +++ b/runtimes/testnet/src/weights/members.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_members` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("development")`, DB CACHE: 1024 @@ -59,8 +59,8 @@ impl pallet_members::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `381` // Estimated: `6321` - // Minimum execution time: 81_643_000 picoseconds. - Weight::from_parts(84_318_000, 0) + // Minimum execution time: 81_934_000 picoseconds. + Weight::from_parts(83_957_000, 0) .saturating_add(Weight::from_parts(0, 6321)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(8)) @@ -75,8 +75,8 @@ impl pallet_members::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `293` // Estimated: `3758` - // Minimum execution time: 22_963_000 picoseconds. - Weight::from_parts(24_055_000, 0) + // Minimum execution time: 22_593_000 picoseconds. + Weight::from_parts(23_395_000, 0) .saturating_add(Weight::from_parts(0, 3758)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(1)) @@ -103,8 +103,8 @@ impl pallet_members::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `517` // Estimated: `3982` - // Minimum execution time: 59_872_000 picoseconds. - Weight::from_parts(63_069_000, 0) + // Minimum execution time: 60_093_000 picoseconds. + Weight::from_parts(61_505_000, 0) .saturating_add(Weight::from_parts(0, 3982)) .saturating_add(T::DbWeight::get().reads(4)) .saturating_add(T::DbWeight::get().writes(8)) diff --git a/runtimes/testnet/src/weights/networks.rs b/runtimes/testnet/src/weights/networks.rs index f0ed302f0..c6361636e 100644 --- a/runtimes/testnet/src/weights/networks.rs +++ b/runtimes/testnet/src/weights/networks.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_networks` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("development")`, DB CACHE: 1024 @@ -45,13 +45,13 @@ impl pallet_networks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `359` // Estimated: `21149` - // Minimum execution time: 49_393_000 picoseconds. - Weight::from_parts(49_797_682, 0) + // Minimum execution time: 48_322_000 picoseconds. + Weight::from_parts(49_145_320, 0) .saturating_add(Weight::from_parts(0, 21149)) - // Standard Error: 209 - .saturating_add(Weight::from_parts(1_657, 0).saturating_mul(a.into())) - // Standard Error: 209 - .saturating_add(Weight::from_parts(2_947, 0).saturating_mul(b.into())) + // Standard Error: 127 + .saturating_add(Weight::from_parts(1_462, 0).saturating_mul(a.into())) + // Standard Error: 127 + .saturating_add(Weight::from_parts(1_284, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(9)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/runtimes/testnet/src/weights/shards.rs b/runtimes/testnet/src/weights/shards.rs index 682359df9..8a5165b42 100644 --- a/runtimes/testnet/src/weights/shards.rs +++ b/runtimes/testnet/src/weights/shards.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_shards` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("development")`, DB CACHE: 1024 @@ -47,8 +47,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `757` // Estimated: `11647` - // Minimum execution time: 515_826_000 picoseconds. - Weight::from_parts(526_686_000, 0) + // Minimum execution time: 514_955_000 picoseconds. + Weight::from_parts(518_552_000, 0) .saturating_add(Weight::from_parts(0, 11647)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(3)) @@ -69,8 +69,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `557` // Estimated: `11447` - // Minimum execution time: 60_754_000 picoseconds. - Weight::from_parts(63_830_000, 0) + // Minimum execution time: 61_907_000 picoseconds. + Weight::from_parts(64_522_000, 0) .saturating_add(Weight::from_parts(0, 11447)) .saturating_add(T::DbWeight::get().reads(7)) .saturating_add(T::DbWeight::get().writes(3)) @@ -105,8 +105,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `569` // Estimated: `11459` - // Minimum execution time: 109_896_000 picoseconds. - Weight::from_parts(113_813_000, 0) + // Minimum execution time: 111_228_000 picoseconds. + Weight::from_parts(115_957_000, 0) .saturating_add(Weight::from_parts(0, 11459)) .saturating_add(T::DbWeight::get().reads(18)) .saturating_add(T::DbWeight::get().writes(13)) @@ -117,8 +117,8 @@ impl pallet_shards::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `6` // Estimated: `3471` - // Minimum execution time: 3_496_000 picoseconds. - Weight::from_parts(3_686_000, 0) + // Minimum execution time: 3_637_000 picoseconds. + Weight::from_parts(3_807_000, 0) .saturating_add(Weight::from_parts(0, 3471)) .saturating_add(T::DbWeight::get().reads(1)) } diff --git a/runtimes/testnet/src/weights/tasks.rs b/runtimes/testnet/src/weights/tasks.rs index e3e5cc921..97d882b53 100644 --- a/runtimes/testnet/src/weights/tasks.rs +++ b/runtimes/testnet/src/weights/tasks.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_tasks` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("development")`, DB CACHE: 1024 @@ -69,11 +69,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `595` // Estimated: `11485` - // Minimum execution time: 127_988_000 picoseconds. - Weight::from_parts(136_754_142, 0) + // Minimum execution time: 129_974_000 picoseconds. + Weight::from_parts(135_645_873, 0) .saturating_add(Weight::from_parts(0, 11485)) - // Standard Error: 27 - .saturating_add(Weight::from_parts(1_131, 0).saturating_mul(b.into())) + // Standard Error: 14 + .saturating_add(Weight::from_parts(1_204, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(14)) .saturating_add(T::DbWeight::get().writes(8)) } @@ -103,8 +103,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `1639` // Estimated: `12529` - // Minimum execution time: 627_676_000 picoseconds. - Weight::from_parts(648_686_000, 0) + // Minimum execution time: 631_563_000 picoseconds. + Weight::from_parts(638_616_000, 0) .saturating_add(Weight::from_parts(0, 12529)) .saturating_add(T::DbWeight::get().reads(17)) .saturating_add(T::DbWeight::get().writes(9)) @@ -129,8 +129,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `628` // Estimated: `4093` - // Minimum execution time: 46_337_000 picoseconds. - Weight::from_parts(48_471_000, 0) + // Minimum execution time: 46_868_000 picoseconds. + Weight::from_parts(50_004_000, 0) .saturating_add(Weight::from_parts(0, 4093)) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().writes(4)) @@ -163,8 +163,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `1992` // Estimated: `20307` - // Minimum execution time: 494_367_000 picoseconds. - Weight::from_parts(500_167_000, 0) + // Minimum execution time: 496_039_000 picoseconds. + Weight::from_parts(501_800_000, 0) .saturating_add(Weight::from_parts(0, 20307)) .saturating_add(T::DbWeight::get().reads(16)) .saturating_add(T::DbWeight::get().writes(5)) @@ -199,7 +199,7 @@ impl pallet_tasks::WeightInfo for WeightInfo { /// Proof: `Tasks::NetworkWriteReward` (`max_values`: None, `max_size`: None, mode: `Measured`) /// Storage: `Tasks::NetworkSendMessageReward` (r:1 w:0) /// Proof: `Tasks::NetworkSendMessageReward` (`max_values`: None, `max_size`: None, mode: `Measured`) - /// Storage: `System::Account` (r:1 w:1) + /// Storage: `System::Account` (r:2 w:2) /// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`) /// Storage: `Tasks::UASystemTasksInsertIndex` (r:1 w:1) /// Proof: `Tasks::UASystemTasksInsertIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) @@ -217,13 +217,13 @@ impl pallet_tasks::WeightInfo for WeightInfo { /// Proof: `Tasks::UATaskIndex` (`max_values`: None, `max_size`: None, mode: `Measured`) fn register_gateway() -> Weight { // Proof Size summary in bytes: - // Measured: `573` - // Estimated: `6513` - // Minimum execution time: 125_896_000 picoseconds. - Weight::from_parts(129_383_000, 0) - .saturating_add(Weight::from_parts(0, 6513)) - .saturating_add(T::DbWeight::get().reads(19)) - .saturating_add(T::DbWeight::get().writes(11)) + // Measured: `780` + // Estimated: `6720` + // Minimum execution time: 160_902_000 picoseconds. + Weight::from_parts(164_619_000, 0) + .saturating_add(Weight::from_parts(0, 6720)) + .saturating_add(T::DbWeight::get().reads(20)) + .saturating_add(T::DbWeight::get().writes(12)) } /// Storage: `Tasks::NetworkReadReward` (r:0 w:1) /// Proof: `Tasks::NetworkReadReward` (`max_values`: None, `max_size`: None, mode: `Measured`) @@ -231,8 +231,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 8_977_000 picoseconds. - Weight::from_parts(9_678_000, 0) + // Minimum execution time: 9_427_000 picoseconds. + Weight::from_parts(9_879_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -242,8 +242,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_267_000 picoseconds. - Weight::from_parts(9_789_000, 0) + // Minimum execution time: 9_187_000 picoseconds. + Weight::from_parts(9_849_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -253,8 +253,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_217_000 picoseconds. - Weight::from_parts(9_669_000, 0) + // Minimum execution time: 9_258_000 picoseconds. + Weight::from_parts(10_069_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -284,8 +284,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `564` // Estimated: `4029` - // Minimum execution time: 50_064_000 picoseconds. - Weight::from_parts(52_207_000, 0) + // Minimum execution time: 50_665_000 picoseconds. + Weight::from_parts(52_859_000, 0) .saturating_add(Weight::from_parts(0, 4029)) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().writes(8)) @@ -324,11 +324,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `654 + b * (247 ±0)` // Estimated: `4126 + b * (2718 ±0)` - // Minimum execution time: 73_818_000 picoseconds. - Weight::from_parts(35_295_690, 0) + // Minimum execution time: 74_119_000 picoseconds. + Weight::from_parts(37_066_159, 0) .saturating_add(Weight::from_parts(0, 4126)) - // Standard Error: 40_576 - .saturating_add(Weight::from_parts(41_946_140, 0).saturating_mul(b.into())) + // Standard Error: 31_850 + .saturating_add(Weight::from_parts(41_613_400, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(6)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes((8_u64).saturating_mul(b.into()))) @@ -358,11 +358,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `497 + b * (212 ±0)` // Estimated: `3972 + b * (2683 ±0)` - // Minimum execution time: 60_282_000 picoseconds. - Weight::from_parts(30_862_537, 0) + // Minimum execution time: 60_262_000 picoseconds. + Weight::from_parts(31_766_086, 0) .saturating_add(Weight::from_parts(0, 3972)) - // Standard Error: 35_801 - .saturating_add(Weight::from_parts(35_688_870, 0).saturating_mul(b.into())) + // Standard Error: 44_216 + .saturating_add(Weight::from_parts(35_683_936, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(5)) .saturating_add(T::DbWeight::get().reads((4_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(1)) @@ -375,8 +375,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 9_267_000 picoseconds. - Weight::from_parts(9_939_000, 0) + // Minimum execution time: 9_197_000 picoseconds. + Weight::from_parts(9_788_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(1)) } @@ -402,11 +402,11 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0 + b * (569 ±0)` // Estimated: `6444 + b * (12303 ±2)` - // Minimum execution time: 44_253_000 picoseconds. - Weight::from_parts(45_785_000, 0) + // Minimum execution time: 44_633_000 picoseconds. + Weight::from_parts(45_806_000, 0) .saturating_add(Weight::from_parts(0, 6444)) - // Standard Error: 207_369 - .saturating_add(Weight::from_parts(42_499_665, 0).saturating_mul(b.into())) + // Standard Error: 203_303 + .saturating_add(Weight::from_parts(42_158_784, 0).saturating_mul(b.into())) .saturating_add(T::DbWeight::get().reads(8)) .saturating_add(T::DbWeight::get().reads((10_u64).saturating_mul(b.into()))) .saturating_add(T::DbWeight::get().writes(3)) @@ -420,8 +420,8 @@ impl pallet_tasks::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `0` // Estimated: `0` - // Minimum execution time: 11_201_000 picoseconds. - Weight::from_parts(11_813_000, 0) + // Minimum execution time: 11_392_000 picoseconds. + Weight::from_parts(11_992_000, 0) .saturating_add(Weight::from_parts(0, 0)) .saturating_add(T::DbWeight::get().writes(2)) } diff --git a/runtimes/testnet/src/weights/timegraph.rs b/runtimes/testnet/src/weights/timegraph.rs index 02eba7732..5177c6423 100644 --- a/runtimes/testnet/src/weights/timegraph.rs +++ b/runtimes/testnet/src/weights/timegraph.rs @@ -2,7 +2,7 @@ //! Autogenerated weights for `pallet_timegraph` //! //! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0 -//! DATE: 2024-08-09, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` +//! DATE: 2024-08-13, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! WORST CASE MAP SIZE: `1000000` //! HOSTNAME: `benchmark-agent-1`, CPU: `AMD EPYC Processor` //! WASM-EXECUTION: `Compiled`, CHAIN: `Some("development")`, DB CACHE: 1024 @@ -41,8 +41,8 @@ impl pallet_timegraph::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `192` // Estimated: `3657` - // Minimum execution time: 67_076_000 picoseconds. - Weight::from_parts(68_669_000, 0) + // Minimum execution time: 67_507_000 picoseconds. + Weight::from_parts(69_490_000, 0) .saturating_add(Weight::from_parts(0, 3657)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2)) @@ -55,8 +55,8 @@ impl pallet_timegraph::WeightInfo for WeightInfo { // Proof Size summary in bytes: // Measured: `192` // Estimated: `3657` - // Minimum execution time: 67_386_000 picoseconds. - Weight::from_parts(69_370_000, 0) + // Minimum execution time: 67_676_000 picoseconds. + Weight::from_parts(69_541_000, 0) .saturating_add(Weight::from_parts(0, 3657)) .saturating_add(T::DbWeight::get().reads(2)) .saturating_add(T::DbWeight::get().writes(2))