diff --git a/substrate/frame/contracts/src/benchmarking/mod.rs b/substrate/frame/contracts/src/benchmarking/mod.rs index 4691a8298a..b5c0a0da13 100644 --- a/substrate/frame/contracts/src/benchmarking/mod.rs +++ b/substrate/frame/contracts/src/benchmarking/mod.rs @@ -109,21 +109,18 @@ where endowment: Endow, ) -> Result, &'static str> { - use sp_runtime::traits::{CheckedDiv, SaturatedConversion}; let (storage_size, endowment) = match endowment { Endow::CollectRent => { // storage_size cannot be zero because otherwise a contract that is just above // the subsistence threshold does not pay rent given a large enough subsistence // threshold. But we need rent payments to occur in order to benchmark for worst cases. - let storage_size = ConfigCache::::subsistence_threshold_uncached() - .checked_div(&T::DepositPerStorageByte::get()) - .unwrap_or_else(Zero::zero); + let storage_size = u32::max_value() / 10; // Endowment should be large but not as large to inhibit rent payments. + // Balance will only cover half the storage let endowment = T::DepositPerStorageByte::get() - .saturating_mul(storage_size) - .saturating_add(T::DepositPerContract::get()) - .saturating_sub(1u32.into()); + .saturating_mul(>::from(storage_size) / 2u32.into()) + .saturating_add(T::DepositPerContract::get()); (storage_size, endowment) }, @@ -159,7 +156,7 @@ where }; let mut contract = result.alive_info()?; - contract.storage_size = storage_size.saturated_into::(); + contract.storage_size = storage_size; ContractInfoOf::::insert(&result.account_id, ContractInfo::Alive(contract)); Ok(result) diff --git a/substrate/frame/contracts/src/storage.rs b/substrate/frame/contracts/src/storage.rs index 11a4bd7708..b4f3071c1e 100644 --- a/substrate/frame/contracts/src/storage.rs +++ b/substrate/frame/contracts/src/storage.rs @@ -89,19 +89,10 @@ where let hashed_key = blake2_256(key); let child_trie_info = &crate::child_trie_info(&trie_id); - // In order to correctly update the book keeping we need to fetch the previous - // value of the key-value pair. - // - // It might be a bit more clean if we had an API that supported getting the size - // of the value without going through the loading of it. But at the moment of - // writing, there is no such API. - // - // That's not a show stopper in any case, since the performance cost is - // dominated by the trie traversal anyway. - let opt_prev_value = child::get_raw(&child_trie_info, &hashed_key); + let opt_prev_len = child::len(&child_trie_info, &hashed_key); // Update the total number of KV pairs and the number of empty pairs. - match (&opt_prev_value, &opt_new_value) { + match (&opt_prev_len, &opt_new_value) { (Some(_), None) => { new_info.pair_count -= 1; }, @@ -113,10 +104,7 @@ where } // Update the total storage size. - let prev_value_len = opt_prev_value - .as_ref() - .map(|old_value| old_value.len() as u32) - .unwrap_or(0); + let prev_value_len = opt_prev_len.unwrap_or(0); let new_value_len = opt_new_value .as_ref() .map(|new_value| new_value.len() as u32) diff --git a/substrate/frame/contracts/src/weights.rs b/substrate/frame/contracts/src/weights.rs index 8b1b773276..60d2291018 100644 --- a/substrate/frame/contracts/src/weights.rs +++ b/substrate/frame/contracts/src/weights.rs @@ -1,6 +1,6 @@ // This file is part of Substrate. -// Copyright (C) 2020-2021 Parity Technologies (UK) Ltd. +// Copyright (C) 2021 Parity Technologies (UK) Ltd. // SPDX-License-Identifier: Apache-2.0 // Licensed under the Apache License, Version 2.0 (the "License"); @@ -17,8 +17,8 @@ //! Autogenerated weights for pallet_contracts //! -//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 2.0.0 -//! DATE: 2020-12-12, STEPS: [50, ], REPEAT: 20, LOW RANGE: [], HIGH RANGE: [] +//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 2.0.1 +//! DATE: 2021-01-12, STEPS: [50, ], REPEAT: 20, LOW RANGE: [], HIGH RANGE: [] //! EXECUTION: Some(Wasm), WASM-EXECUTION: Compiled, CHAIN: Some("dev"), DB CACHE: 128 // Executed Command: @@ -150,1181 +150,1183 @@ pub trait WeightInfo { pub struct SubstrateWeight(PhantomData); impl WeightInfo for SubstrateWeight { fn on_initialize() -> Weight { - (7_239_000 as Weight) + (3_659_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) } fn on_initialize_per_trie_key(k: u32, ) -> Weight { - (40_584_000 as Weight) + (40_731_000 as Weight) // Standard Error: 4_000 - .saturating_add((2_314_000 as Weight).saturating_mul(k as Weight)) + .saturating_add((2_317_000 as Weight).saturating_mul(k as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) .saturating_add(T::DbWeight::get().writes((1 as Weight).saturating_mul(k as Weight))) } fn on_initialize_per_queue_item(q: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 175_000 - .saturating_add((135_919_000 as Weight).saturating_mul(q as Weight)) + (384_459_000 as Weight) + // Standard Error: 45_000 + .saturating_add((146_401_000 as Weight).saturating_mul(q as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) + .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn update_schedule() -> Weight { - (36_262_000 as Weight) + (27_803_000 as Weight) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn put_code(n: u32, ) -> Weight { - (22_510_000 as Weight) - // Standard Error: 209_000 - .saturating_add((113_251_000 as Weight).saturating_mul(n as Weight)) + (0 as Weight) + // Standard Error: 208_000 + .saturating_add((110_774_000 as Weight).saturating_mul(n as Weight)) .saturating_add(T::DbWeight::get().reads(1 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } fn instantiate(n: u32, s: u32, ) -> Weight { - (216_181_000 as Weight) + (175_290_000 as Weight) // Standard Error: 1_000 - .saturating_add((6_000 as Weight).saturating_mul(n as Weight)) + .saturating_add((3_000 as Weight).saturating_mul(n as Weight)) // Standard Error: 1_000 - .saturating_add((2_240_000 as Weight).saturating_mul(s as Weight)) + .saturating_add((2_244_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } fn call() -> Weight { - (209_785_000 as Weight) + (161_225_000 as Weight) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } fn claim_surcharge() -> Weight { - (302_124_000 as Weight) + (283_759_000 as Weight) .saturating_add(T::DbWeight::get().reads(4 as Weight)) .saturating_add(T::DbWeight::get().writes(3 as Weight)) } fn seal_caller(r: u32, ) -> Weight { - (138_697_000 as Weight) - // Standard Error: 412_000 - .saturating_add((390_370_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (118_373_000 as Weight) + // Standard Error: 337_000 + .saturating_add((250_358_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_address(r: u32, ) -> Weight { - (141_999_000 as Weight) - // Standard Error: 218_000 - .saturating_add((389_261_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (125_126_000 as Weight) + // Standard Error: 127_000 + .saturating_add((248_900_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_gas_left(r: u32, ) -> Weight { - (134_956_000 as Weight) - // Standard Error: 205_000 - .saturating_add((384_439_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (127_087_000 as Weight) + // Standard Error: 145_000 + .saturating_add((243_311_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_balance(r: u32, ) -> Weight { - (130_585_000 as Weight) - // Standard Error: 784_000 - .saturating_add((860_797_000 as Weight).saturating_mul(r as Weight)) + (123_879_000 as Weight) + // Standard Error: 227_000 + .saturating_add((521_306_000 as Weight).saturating_mul(r as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_value_transferred(r: u32, ) -> Weight { - (138_382_000 as Weight) - // Standard Error: 163_000 - .saturating_add((384_676_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - } - fn seal_minimum_balance(r: u32, ) -> Weight { - (137_766_000 as Weight) - // Standard Error: 218_000 - .saturating_add((386_002_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - } - fn seal_tombstone_deposit(r: u32, ) -> Weight { - (144_552_000 as Weight) - // Standard Error: 187_000 - .saturating_add((384_754_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - } - fn seal_rent_allowance(r: u32, ) -> Weight { - (150_812_000 as Weight) - // Standard Error: 276_000 - .saturating_add((903_965_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - } - fn seal_block_number(r: u32, ) -> Weight { - (145_168_000 as Weight) - // Standard Error: 191_000 - .saturating_add((382_798_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - } - fn seal_now(r: u32, ) -> Weight { - (145_806_000 as Weight) - // Standard Error: 195_000 - .saturating_add((382_888_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - } - fn seal_weight_to_fee(r: u32, ) -> Weight { - (154_081_000 as Weight) - // Standard Error: 248_000 - .saturating_add((716_294_000 as Weight).saturating_mul(r as Weight)) + (121_348_000 as Weight) + // Standard Error: 125_000 + .saturating_add((244_379_000 as Weight).saturating_mul(r as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) } + fn seal_minimum_balance(r: u32, ) -> Weight { + (120_680_000 as Weight) + // Standard Error: 107_000 + .saturating_add((244_096_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + } + fn seal_tombstone_deposit(r: u32, ) -> Weight { + (117_310_000 as Weight) + // Standard Error: 130_000 + .saturating_add((245_096_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + } + fn seal_rent_allowance(r: u32, ) -> Weight { + (131_643_000 as Weight) + // Standard Error: 171_000 + .saturating_add((554_208_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + } + fn seal_block_number(r: u32, ) -> Weight { + (117_553_000 as Weight) + // Standard Error: 128_000 + .saturating_add((244_494_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + } + fn seal_now(r: u32, ) -> Weight { + (123_184_000 as Weight) + // Standard Error: 116_000 + .saturating_add((244_414_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + } + fn seal_weight_to_fee(r: u32, ) -> Weight { + (132_846_000 as Weight) + // Standard Error: 189_000 + .saturating_add((482_450_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(6 as Weight)) + } fn seal_gas(r: u32, ) -> Weight { - (149_684_000 as Weight) - // Standard Error: 460_000 - .saturating_add((196_251_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (113_681_000 as Weight) + // Standard Error: 116_000 + .saturating_add((120_711_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_input(r: u32, ) -> Weight { - (135_447_000 as Weight) - // Standard Error: 75_000 - .saturating_add((8_362_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (118_826_000 as Weight) + // Standard Error: 89_000 + .saturating_add((6_650_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_input_per_kb(n: u32, ) -> Weight { - (146_099_000 as Weight) + (132_497_000 as Weight) // Standard Error: 0 - .saturating_add((270_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add((278_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_return(r: u32, ) -> Weight { - (125_358_000 as Weight) - // Standard Error: 52_000 - .saturating_add((5_454_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (112_447_000 as Weight) + // Standard Error: 73_000 + .saturating_add((4_398_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_return_per_kb(n: u32, ) -> Weight { - (135_523_000 as Weight) + (120_288_000 as Weight) // Standard Error: 0 - .saturating_add((785_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + .saturating_add((787_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_terminate(r: u32, ) -> Weight { - (135_321_000 as Weight) - // Standard Error: 100_000 - .saturating_add((110_300_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) - .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(r as Weight))) + (118_973_000 as Weight) + // Standard Error: 124_000 + .saturating_add((75_967_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) + .saturating_add(T::DbWeight::get().reads((2 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(r as Weight))) } fn seal_restore_to(r: u32, ) -> Weight { - (242_790_000 as Weight) - // Standard Error: 823_000 - .saturating_add((135_544_000 as Weight).saturating_mul(r as Weight)) + (207_295_000 as Weight) + // Standard Error: 385_000 + .saturating_add((103_584_000 as Weight).saturating_mul(r as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().reads((3 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes((4 as Weight).saturating_mul(r as Weight))) } fn seal_restore_to_per_delta(d: u32, ) -> Weight { - (34_052_000 as Weight) - // Standard Error: 2_395_000 - .saturating_add((3_970_866_000 as Weight).saturating_mul(d as Weight)) + (0 as Weight) + // Standard Error: 2_349_000 + .saturating_add((3_693_440_000 as Weight).saturating_mul(d as Weight)) .saturating_add(T::DbWeight::get().reads(7 as Weight)) .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(d as Weight))) .saturating_add(T::DbWeight::get().writes(5 as Weight)) .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(d as Weight))) } fn seal_random(r: u32, ) -> Weight { - (154_549_000 as Weight) - // Standard Error: 692_000 - .saturating_add((989_540_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(5 as Weight)) + (166_160_000 as Weight) + // Standard Error: 237_000 + .saturating_add((594_474_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(6 as Weight)) } fn seal_deposit_event(r: u32, ) -> Weight { - (125_367_000 as Weight) - // Standard Error: 977_000 - .saturating_add((1_424_216_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (145_170_000 as Weight) + // Standard Error: 397_000 + .saturating_add((859_096_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_deposit_event_per_topic_and_kb(t: u32, n: u32, ) -> Weight { - (1_843_333_000 as Weight) - // Standard Error: 3_040_000 - .saturating_add((771_663_000 as Weight).saturating_mul(t as Weight)) - // Standard Error: 599_000 - .saturating_add((251_555_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (1_128_905_000 as Weight) + // Standard Error: 4_299_000 + .saturating_add((559_485_000 as Weight).saturating_mul(t as Weight)) + // Standard Error: 847_000 + .saturating_add((253_404_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(t as Weight))) .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(t as Weight))) } fn seal_set_rent_allowance(r: u32, ) -> Weight { - (136_437_000 as Weight) - // Standard Error: 299_000 - .saturating_add((1_072_778_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (127_849_000 as Weight) + // Standard Error: 220_000 + .saturating_add((628_543_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().writes(1 as Weight)) } fn seal_set_storage(r: u32, ) -> Weight { - (182_452_000 as Weight) - // Standard Error: 26_839_000 - .saturating_add((15_911_876_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (0 as Weight) + // Standard Error: 45_695_000 + .saturating_add((17_015_513_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(r as Weight))) } fn seal_set_storage_per_kb(n: u32, ) -> Weight { - (2_385_415_000 as Weight) - // Standard Error: 751_000 - .saturating_add((223_264_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(5 as Weight)) + (1_632_351_000 as Weight) + // Standard Error: 399_000 + .saturating_add((73_694_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().writes(2 as Weight)) } fn seal_clear_storage(r: u32, ) -> Weight { (0 as Weight) - // Standard Error: 2_154_000 - .saturating_add((5_341_117_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + // Standard Error: 2_632_000 + .saturating_add((2_148_012_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(r as Weight))) } fn seal_get_storage(r: u32, ) -> Weight { - (62_353_000 as Weight) - // Standard Error: 1_183_000 - .saturating_add((1_141_653_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (48_127_000 as Weight) + // Standard Error: 1_123_000 + .saturating_add((906_947_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) } fn seal_get_storage_per_kb(n: u32, ) -> Weight { - (905_905_000 as Weight) - // Standard Error: 363_000 - .saturating_add((155_161_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(5 as Weight)) + (676_986_000 as Weight) + // Standard Error: 307_000 + .saturating_add((153_667_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(6 as Weight)) } fn seal_transfer(r: u32, ) -> Weight { - (60_519_000 as Weight) - // Standard Error: 1_942_000 - .saturating_add((6_453_551_000 as Weight).saturating_mul(r as Weight)) + (36_730_000 as Weight) + // Standard Error: 1_966_000 + .saturating_add((3_972_101_000 as Weight).saturating_mul(r as Weight)) .saturating_add(T::DbWeight::get().reads(5 as Weight)) .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes(1 as Weight)) .saturating_add(T::DbWeight::get().writes((100 as Weight).saturating_mul(r as Weight))) } fn seal_call(r: u32, ) -> Weight { - (192_122_000 as Weight) - // Standard Error: 7_851_000 - .saturating_add((10_736_771_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(5 as Weight)) - .saturating_add(T::DbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) + (0 as Weight) + // Standard Error: 10_776_000 + .saturating_add((9_860_978_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(6 as Weight)) + .saturating_add(T::DbWeight::get().reads((200 as Weight).saturating_mul(r as Weight))) } fn seal_call_per_transfer_input_output_kb(t: u32, i: u32, o: u32, ) -> Weight { - (10_599_501_000 as Weight) - // Standard Error: 133_182_000 - .saturating_add((5_423_848_000 as Weight).saturating_mul(t as Weight)) - // Standard Error: 47_000 - .saturating_add((60_108_000 as Weight).saturating_mul(i as Weight)) - // Standard Error: 50_000 - .saturating_add((82_691_000 as Weight).saturating_mul(o as Weight)) - .saturating_add(T::DbWeight::get().reads(105 as Weight)) - .saturating_add(T::DbWeight::get().reads((101 as Weight).saturating_mul(t as Weight))) + (9_838_971_000 as Weight) + // Standard Error: 112_906_000 + .saturating_add((3_413_715_000 as Weight).saturating_mul(t as Weight)) + // Standard Error: 40_000 + .saturating_add((60_054_000 as Weight).saturating_mul(i as Weight)) + // Standard Error: 43_000 + .saturating_add((82_629_000 as Weight).saturating_mul(o as Weight)) + .saturating_add(T::DbWeight::get().reads(206 as Weight)) .saturating_add(T::DbWeight::get().writes((101 as Weight).saturating_mul(t as Weight))) } fn seal_instantiate(r: u32, ) -> Weight { (0 as Weight) - // Standard Error: 39_807_000 - .saturating_add((22_562_812_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 36_803_000 + .saturating_add((18_211_156_000 as Weight).saturating_mul(r as Weight)) .saturating_add(T::DbWeight::get().reads(6 as Weight)) .saturating_add(T::DbWeight::get().reads((300 as Weight).saturating_mul(r as Weight))) .saturating_add(T::DbWeight::get().writes(2 as Weight)) .saturating_add(T::DbWeight::get().writes((200 as Weight).saturating_mul(r as Weight))) } fn seal_instantiate_per_input_output_salt_kb(i: u32, o: u32, s: u32, ) -> Weight { - (19_823_256_000 as Weight) - // Standard Error: 153_000 - .saturating_add((60_707_000 as Weight).saturating_mul(i as Weight)) - // Standard Error: 153_000 - .saturating_add((83_770_000 as Weight).saturating_mul(o as Weight)) - // Standard Error: 153_000 - .saturating_add((284_423_000 as Weight).saturating_mul(s as Weight)) + (15_975_563_000 as Weight) + // Standard Error: 167_000 + .saturating_add((60_759_000 as Weight).saturating_mul(i as Weight)) + // Standard Error: 167_000 + .saturating_add((83_681_000 as Weight).saturating_mul(o as Weight)) + // Standard Error: 167_000 + .saturating_add((284_260_000 as Weight).saturating_mul(s as Weight)) .saturating_add(T::DbWeight::get().reads(207 as Weight)) .saturating_add(T::DbWeight::get().writes(202 as Weight)) } fn seal_hash_sha2_256(r: u32, ) -> Weight { - (142_838_000 as Weight) - // Standard Error: 243_000 - .saturating_add((332_354_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (120_795_000 as Weight) + // Standard Error: 115_000 + .saturating_add((226_658_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_sha2_256_per_kb(n: u32, ) -> Weight { - (877_119_000 as Weight) - // Standard Error: 73_000 - .saturating_add((434_752_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (731_640_000 as Weight) + // Standard Error: 56_000 + .saturating_add((430_102_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_keccak_256(r: u32, ) -> Weight { - (139_913_000 as Weight) - // Standard Error: 160_000 - .saturating_add((345_830_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (121_490_000 as Weight) + // Standard Error: 144_000 + .saturating_add((242_726_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_keccak_256_per_kb(n: u32, ) -> Weight { - (723_122_000 as Weight) - // Standard Error: 29_000 - .saturating_add((343_949_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (624_029_000 as Weight) + // Standard Error: 36_000 + .saturating_add((344_476_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_256(r: u32, ) -> Weight { - (137_249_000 as Weight) - // Standard Error: 168_000 - .saturating_add((320_295_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (120_959_000 as Weight) + // Standard Error: 103_000 + .saturating_add((215_519_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_256_per_kb(n: u32, ) -> Weight { - (736_756_000 as Weight) - // Standard Error: 39_000 - .saturating_add((159_952_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (713_448_000 as Weight) + // Standard Error: 47_000 + .saturating_add((160_493_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_128(r: u32, ) -> Weight { - (124_530_000 as Weight) - // Standard Error: 203_000 - .saturating_add((321_292_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (122_428_000 as Weight) + // Standard Error: 111_000 + .saturating_add((213_863_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_128_per_kb(n: u32, ) -> Weight { - (782_032_000 as Weight) - // Standard Error: 36_000 - .saturating_add((159_878_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(T::DbWeight::get().reads(4 as Weight)) + (757_838_000 as Weight) + // Standard Error: 47_000 + .saturating_add((160_245_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(T::DbWeight::get().reads(5 as Weight)) } fn instr_i64const(r: u32, ) -> Weight { - (24_624_000 as Weight) + (24_075_000 as Weight) // Standard Error: 18_000 - .saturating_add((3_280_000 as Weight).saturating_mul(r as Weight)) + .saturating_add((3_122_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64load(r: u32, ) -> Weight { - (27_171_000 as Weight) - // Standard Error: 62_000 - .saturating_add((161_737_000 as Weight).saturating_mul(r as Weight)) + (26_406_000 as Weight) + // Standard Error: 31_000 + .saturating_add((159_539_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64store(r: u32, ) -> Weight { - (27_106_000 as Weight) - // Standard Error: 94_000 - .saturating_add((229_960_000 as Weight).saturating_mul(r as Weight)) + (26_266_000 as Weight) + // Standard Error: 3_229_000 + .saturating_add((238_726_000 as Weight).saturating_mul(r as Weight)) } fn instr_select(r: u32, ) -> Weight { - (24_566_000 as Weight) - // Standard Error: 18_000 - .saturating_add((12_157_000 as Weight).saturating_mul(r as Weight)) + (27_469_000 as Weight) + // Standard Error: 592_000 + .saturating_add((10_423_000 as Weight).saturating_mul(r as Weight)) } fn instr_if(r: u32, ) -> Weight { - (24_531_000 as Weight) - // Standard Error: 17_000 - .saturating_add((12_007_000 as Weight).saturating_mul(r as Weight)) + (24_627_000 as Weight) + // Standard Error: 29_000 + .saturating_add((11_999_000 as Weight).saturating_mul(r as Weight)) } fn instr_br(r: u32, ) -> Weight { - (24_567_000 as Weight) - // Standard Error: 20_000 - .saturating_add((6_132_000 as Weight).saturating_mul(r as Weight)) + (24_008_000 as Weight) + // Standard Error: 22_000 + .saturating_add((6_614_000 as Weight).saturating_mul(r as Weight)) } fn instr_br_if(r: u32, ) -> Weight { - (24_628_000 as Weight) - // Standard Error: 21_000 - .saturating_add((13_480_000 as Weight).saturating_mul(r as Weight)) + (24_040_000 as Weight) + // Standard Error: 20_000 + .saturating_add((14_190_000 as Weight).saturating_mul(r as Weight)) } fn instr_br_table(r: u32, ) -> Weight { - (24_653_000 as Weight) - // Standard Error: 21_000 - .saturating_add((15_005_000 as Weight).saturating_mul(r as Weight)) + (23_997_000 as Weight) + // Standard Error: 24_000 + .saturating_add((15_529_000 as Weight).saturating_mul(r as Weight)) } fn instr_br_table_per_entry(e: u32, ) -> Weight { - (38_573_000 as Weight) - // Standard Error: 0 - .saturating_add((118_000 as Weight).saturating_mul(e as Weight)) + (36_890_000 as Weight) + // Standard Error: 1_000 + .saturating_add((112_000 as Weight).saturating_mul(e as Weight)) } fn instr_call(r: u32, ) -> Weight { - (24_952_000 as Weight) - // Standard Error: 61_000 - .saturating_add((99_409_000 as Weight).saturating_mul(r as Weight)) + (24_266_000 as Weight) + // Standard Error: 198_000 + .saturating_add((99_702_000 as Weight).saturating_mul(r as Weight)) } fn instr_call_indirect(r: u32, ) -> Weight { - (32_478_000 as Weight) - // Standard Error: 242_000 - .saturating_add((193_797_000 as Weight).saturating_mul(r as Weight)) + (31_901_000 as Weight) + // Standard Error: 322_000 + .saturating_add((197_671_000 as Weight).saturating_mul(r as Weight)) } fn instr_call_indirect_per_param(p: u32, ) -> Weight { - (238_200_000 as Weight) - // Standard Error: 4_000 - .saturating_add((3_467_000 as Weight).saturating_mul(p as Weight)) + (239_803_000 as Weight) + // Standard Error: 5_000 + .saturating_add((3_474_000 as Weight).saturating_mul(p as Weight)) } fn instr_local_get(r: u32, ) -> Weight { - (41_994_000 as Weight) - // Standard Error: 22_000 - .saturating_add((3_230_000 as Weight).saturating_mul(r as Weight)) + (41_697_000 as Weight) + // Standard Error: 15_000 + .saturating_add((3_225_000 as Weight).saturating_mul(r as Weight)) } fn instr_local_set(r: u32, ) -> Weight { - (41_994_000 as Weight) - // Standard Error: 20_000 - .saturating_add((3_558_000 as Weight).saturating_mul(r as Weight)) + (41_698_000 as Weight) + // Standard Error: 13_000 + .saturating_add((3_458_000 as Weight).saturating_mul(r as Weight)) } fn instr_local_tee(r: u32, ) -> Weight { - (41_965_000 as Weight) - // Standard Error: 33_000 - .saturating_add((4_806_000 as Weight).saturating_mul(r as Weight)) + (41_715_000 as Weight) + // Standard Error: 19_000 + .saturating_add((4_684_000 as Weight).saturating_mul(r as Weight)) } fn instr_global_get(r: u32, ) -> Weight { - (27_997_000 as Weight) - // Standard Error: 26_000 - .saturating_add((7_859_000 as Weight).saturating_mul(r as Weight)) + (27_751_000 as Weight) + // Standard Error: 20_000 + .saturating_add((7_980_000 as Weight).saturating_mul(r as Weight)) } fn instr_global_set(r: u32, ) -> Weight { - (28_118_000 as Weight) - // Standard Error: 33_000 - .saturating_add((11_825_000 as Weight).saturating_mul(r as Weight)) + (27_632_000 as Weight) + // Standard Error: 21_000 + .saturating_add((12_050_000 as Weight).saturating_mul(r as Weight)) } fn instr_memory_current(r: u32, ) -> Weight { - (27_172_000 as Weight) - // Standard Error: 19_000 - .saturating_add((3_466_000 as Weight).saturating_mul(r as Weight)) + (26_302_000 as Weight) + // Standard Error: 25_000 + .saturating_add((3_480_000 as Weight).saturating_mul(r as Weight)) } fn instr_memory_grow(r: u32, ) -> Weight { - (25_582_000 as Weight) - // Standard Error: 4_756_000 - .saturating_add((2_290_170_000 as Weight).saturating_mul(r as Weight)) + (24_695_000 as Weight) + // Standard Error: 3_876_000 + .saturating_add((2_324_806_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64clz(r: u32, ) -> Weight { - (24_712_000 as Weight) - // Standard Error: 24_000 - .saturating_add((5_226_000 as Weight).saturating_mul(r as Weight)) + (24_043_000 as Weight) + // Standard Error: 13_000 + .saturating_add((5_187_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ctz(r: u32, ) -> Weight { - (24_631_000 as Weight) - // Standard Error: 23_000 - .saturating_add((5_282_000 as Weight).saturating_mul(r as Weight)) + (24_040_000 as Weight) + // Standard Error: 14_000 + .saturating_add((5_077_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64popcnt(r: u32, ) -> Weight { - (24_640_000 as Weight) - // Standard Error: 17_000 - .saturating_add((5_964_000 as Weight).saturating_mul(r as Weight)) + (23_995_000 as Weight) + // Standard Error: 18_000 + .saturating_add((5_801_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64eqz(r: u32, ) -> Weight { - (24_631_000 as Weight) - // Standard Error: 11_000 - .saturating_add((5_128_000 as Weight).saturating_mul(r as Weight)) + (24_010_000 as Weight) + // Standard Error: 12_000 + .saturating_add((5_221_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64extendsi32(r: u32, ) -> Weight { - (24_540_000 as Weight) - // Standard Error: 11_000 - .saturating_add((5_224_000 as Weight).saturating_mul(r as Weight)) + (24_073_000 as Weight) + // Standard Error: 18_000 + .saturating_add((5_205_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64extendui32(r: u32, ) -> Weight { - (24_623_000 as Weight) - // Standard Error: 16_000 - .saturating_add((5_138_000 as Weight).saturating_mul(r as Weight)) + (23_993_000 as Weight) + // Standard Error: 17_000 + .saturating_add((5_079_000 as Weight).saturating_mul(r as Weight)) } fn instr_i32wrapi64(r: u32, ) -> Weight { - (24_623_000 as Weight) - // Standard Error: 15_000 - .saturating_add((5_242_000 as Weight).saturating_mul(r as Weight)) + (24_008_000 as Weight) + // Standard Error: 16_000 + .saturating_add((5_077_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64eq(r: u32, ) -> Weight { - (24_575_000 as Weight) - // Standard Error: 9_000 - .saturating_add((7_328_000 as Weight).saturating_mul(r as Weight)) + (23_991_000 as Weight) + // Standard Error: 17_000 + .saturating_add((7_248_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ne(r: u32, ) -> Weight { - (24_674_000 as Weight) - // Standard Error: 14_000 - .saturating_add((7_147_000 as Weight).saturating_mul(r as Weight)) + (23_983_000 as Weight) + // Standard Error: 21_000 + .saturating_add((7_303_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64lts(r: u32, ) -> Weight { - (24_645_000 as Weight) - // Standard Error: 20_000 - .saturating_add((7_158_000 as Weight).saturating_mul(r as Weight)) + (23_991_000 as Weight) + // Standard Error: 21_000 + .saturating_add((7_106_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ltu(r: u32, ) -> Weight { - (24_688_000 as Weight) - // Standard Error: 16_000 - .saturating_add((7_226_000 as Weight).saturating_mul(r as Weight)) + (24_062_000 as Weight) + // Standard Error: 25_000 + .saturating_add((7_168_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64gts(r: u32, ) -> Weight { - (24_579_000 as Weight) - // Standard Error: 13_000 - .saturating_add((7_187_000 as Weight).saturating_mul(r as Weight)) + (24_028_000 as Weight) + // Standard Error: 26_000 + .saturating_add((7_130_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64gtu(r: u32, ) -> Weight { - (24_578_000 as Weight) - // Standard Error: 15_000 - .saturating_add((7_235_000 as Weight).saturating_mul(r as Weight)) + (23_998_000 as Weight) + // Standard Error: 18_000 + .saturating_add((7_279_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64les(r: u32, ) -> Weight { - (24_625_000 as Weight) - // Standard Error: 17_000 - .saturating_add((7_089_000 as Weight).saturating_mul(r as Weight)) + (24_010_000 as Weight) + // Standard Error: 19_000 + .saturating_add((7_114_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64leu(r: u32, ) -> Weight { - (24_589_000 as Weight) - // Standard Error: 9_000 - .saturating_add((7_078_000 as Weight).saturating_mul(r as Weight)) + (24_003_000 as Weight) + // Standard Error: 13_000 + .saturating_add((7_052_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ges(r: u32, ) -> Weight { - (24_572_000 as Weight) - // Standard Error: 13_000 - .saturating_add((7_286_000 as Weight).saturating_mul(r as Weight)) + (23_948_000 as Weight) + // Standard Error: 15_000 + .saturating_add((7_236_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64geu(r: u32, ) -> Weight { - (24_566_000 as Weight) + (24_042_000 as Weight) // Standard Error: 19_000 - .saturating_add((7_247_000 as Weight).saturating_mul(r as Weight)) + .saturating_add((7_223_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64add(r: u32, ) -> Weight { - (24_581_000 as Weight) - // Standard Error: 18_000 - .saturating_add((7_190_000 as Weight).saturating_mul(r as Weight)) + (23_965_000 as Weight) + // Standard Error: 37_000 + .saturating_add((7_261_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64sub(r: u32, ) -> Weight { - (24_565_000 as Weight) - // Standard Error: 10_000 - .saturating_add((7_242_000 as Weight).saturating_mul(r as Weight)) + (24_023_000 as Weight) + // Standard Error: 26_000 + .saturating_add((7_170_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64mul(r: u32, ) -> Weight { - (24_542_000 as Weight) - // Standard Error: 11_000 - .saturating_add((7_216_000 as Weight).saturating_mul(r as Weight)) + (24_057_000 as Weight) + // Standard Error: 17_000 + .saturating_add((7_050_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64divs(r: u32, ) -> Weight { - (24_608_000 as Weight) - // Standard Error: 16_000 - .saturating_add((12_966_000 as Weight).saturating_mul(r as Weight)) + (24_038_000 as Weight) + // Standard Error: 15_000 + .saturating_add((12_934_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64divu(r: u32, ) -> Weight { - (24_564_000 as Weight) - // Standard Error: 1_424_000 - .saturating_add((13_665_000 as Weight).saturating_mul(r as Weight)) + (23_992_000 as Weight) + // Standard Error: 15_000 + .saturating_add((12_055_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64rems(r: u32, ) -> Weight { - (24_611_000 as Weight) - // Standard Error: 16_000 - .saturating_add((12_932_000 as Weight).saturating_mul(r as Weight)) + (24_082_000 as Weight) + // Standard Error: 18_000 + .saturating_add((12_898_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64remu(r: u32, ) -> Weight { - (24_590_000 as Weight) - // Standard Error: 10_000 - .saturating_add((12_207_000 as Weight).saturating_mul(r as Weight)) + (24_025_000 as Weight) + // Standard Error: 13_000 + .saturating_add((12_178_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64and(r: u32, ) -> Weight { - (24_622_000 as Weight) - // Standard Error: 15_000 - .saturating_add((7_172_000 as Weight).saturating_mul(r as Weight)) + (23_984_000 as Weight) + // Standard Error: 18_000 + .saturating_add((7_214_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64or(r: u32, ) -> Weight { - (24_585_000 as Weight) - // Standard Error: 18_000 - .saturating_add((7_202_000 as Weight).saturating_mul(r as Weight)) + (24_012_000 as Weight) + // Standard Error: 16_000 + .saturating_add((7_183_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64xor(r: u32, ) -> Weight { - (24_600_000 as Weight) - // Standard Error: 20_000 - .saturating_add((7_182_000 as Weight).saturating_mul(r as Weight)) + (24_001_000 as Weight) + // Standard Error: 18_000 + .saturating_add((7_122_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64shl(r: u32, ) -> Weight { - (24_621_000 as Weight) - // Standard Error: 11_000 - .saturating_add((7_226_000 as Weight).saturating_mul(r as Weight)) + (23_973_000 as Weight) + // Standard Error: 13_000 + .saturating_add((7_251_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64shrs(r: u32, ) -> Weight { - (24_643_000 as Weight) - // Standard Error: 22_000 - .saturating_add((7_254_000 as Weight).saturating_mul(r as Weight)) + (23_969_000 as Weight) + // Standard Error: 14_000 + .saturating_add((7_289_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64shru(r: u32, ) -> Weight { - (24_586_000 as Weight) - // Standard Error: 14_000 - .saturating_add((7_246_000 as Weight).saturating_mul(r as Weight)) + (24_008_000 as Weight) + // Standard Error: 15_000 + .saturating_add((7_292_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64rotl(r: u32, ) -> Weight { - (24_631_000 as Weight) - // Standard Error: 22_000 - .saturating_add((7_306_000 as Weight).saturating_mul(r as Weight)) + (24_010_000 as Weight) + // Standard Error: 21_000 + .saturating_add((7_305_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64rotr(r: u32, ) -> Weight { - (24_643_000 as Weight) - // Standard Error: 15_000 - .saturating_add((7_183_000 as Weight).saturating_mul(r as Weight)) + (24_001_000 as Weight) + // Standard Error: 22_000 + .saturating_add((7_299_000 as Weight).saturating_mul(r as Weight)) } } // For backwards compatibility and tests impl WeightInfo for () { fn on_initialize() -> Weight { - (7_239_000 as Weight) + (3_659_000 as Weight) .saturating_add(RocksDbWeight::get().reads(1 as Weight)) } fn on_initialize_per_trie_key(k: u32, ) -> Weight { - (40_584_000 as Weight) + (40_731_000 as Weight) // Standard Error: 4_000 - .saturating_add((2_314_000 as Weight).saturating_mul(k as Weight)) + .saturating_add((2_317_000 as Weight).saturating_mul(k as Weight)) .saturating_add(RocksDbWeight::get().reads(1 as Weight)) + .saturating_add(RocksDbWeight::get().writes(1 as Weight)) .saturating_add(RocksDbWeight::get().writes((1 as Weight).saturating_mul(k as Weight))) } fn on_initialize_per_queue_item(q: u32, ) -> Weight { - (0 as Weight) - // Standard Error: 175_000 - .saturating_add((135_919_000 as Weight).saturating_mul(q as Weight)) + (384_459_000 as Weight) + // Standard Error: 45_000 + .saturating_add((146_401_000 as Weight).saturating_mul(q as Weight)) .saturating_add(RocksDbWeight::get().reads(1 as Weight)) + .saturating_add(RocksDbWeight::get().writes(1 as Weight)) } fn update_schedule() -> Weight { - (36_262_000 as Weight) + (27_803_000 as Weight) .saturating_add(RocksDbWeight::get().reads(1 as Weight)) .saturating_add(RocksDbWeight::get().writes(1 as Weight)) } fn put_code(n: u32, ) -> Weight { - (22_510_000 as Weight) - // Standard Error: 209_000 - .saturating_add((113_251_000 as Weight).saturating_mul(n as Weight)) + (0 as Weight) + // Standard Error: 208_000 + .saturating_add((110_774_000 as Weight).saturating_mul(n as Weight)) .saturating_add(RocksDbWeight::get().reads(1 as Weight)) .saturating_add(RocksDbWeight::get().writes(2 as Weight)) } fn instantiate(n: u32, s: u32, ) -> Weight { - (216_181_000 as Weight) + (175_290_000 as Weight) // Standard Error: 1_000 - .saturating_add((6_000 as Weight).saturating_mul(n as Weight)) + .saturating_add((3_000 as Weight).saturating_mul(n as Weight)) // Standard Error: 1_000 - .saturating_add((2_240_000 as Weight).saturating_mul(s as Weight)) + .saturating_add((2_244_000 as Weight).saturating_mul(s as Weight)) .saturating_add(RocksDbWeight::get().reads(6 as Weight)) .saturating_add(RocksDbWeight::get().writes(3 as Weight)) } fn call() -> Weight { - (209_785_000 as Weight) + (161_225_000 as Weight) .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().writes(2 as Weight)) } fn claim_surcharge() -> Weight { - (302_124_000 as Weight) + (283_759_000 as Weight) .saturating_add(RocksDbWeight::get().reads(4 as Weight)) .saturating_add(RocksDbWeight::get().writes(3 as Weight)) } fn seal_caller(r: u32, ) -> Weight { - (138_697_000 as Weight) - // Standard Error: 412_000 - .saturating_add((390_370_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (118_373_000 as Weight) + // Standard Error: 337_000 + .saturating_add((250_358_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_address(r: u32, ) -> Weight { - (141_999_000 as Weight) - // Standard Error: 218_000 - .saturating_add((389_261_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (125_126_000 as Weight) + // Standard Error: 127_000 + .saturating_add((248_900_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_gas_left(r: u32, ) -> Weight { - (134_956_000 as Weight) - // Standard Error: 205_000 - .saturating_add((384_439_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (127_087_000 as Weight) + // Standard Error: 145_000 + .saturating_add((243_311_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_balance(r: u32, ) -> Weight { - (130_585_000 as Weight) - // Standard Error: 784_000 - .saturating_add((860_797_000 as Weight).saturating_mul(r as Weight)) + (123_879_000 as Weight) + // Standard Error: 227_000 + .saturating_add((521_306_000 as Weight).saturating_mul(r as Weight)) .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_value_transferred(r: u32, ) -> Weight { - (138_382_000 as Weight) - // Standard Error: 163_000 - .saturating_add((384_676_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - } - fn seal_minimum_balance(r: u32, ) -> Weight { - (137_766_000 as Weight) - // Standard Error: 218_000 - .saturating_add((386_002_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - } - fn seal_tombstone_deposit(r: u32, ) -> Weight { - (144_552_000 as Weight) - // Standard Error: 187_000 - .saturating_add((384_754_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - } - fn seal_rent_allowance(r: u32, ) -> Weight { - (150_812_000 as Weight) - // Standard Error: 276_000 - .saturating_add((903_965_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - } - fn seal_block_number(r: u32, ) -> Weight { - (145_168_000 as Weight) - // Standard Error: 191_000 - .saturating_add((382_798_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - } - fn seal_now(r: u32, ) -> Weight { - (145_806_000 as Weight) - // Standard Error: 195_000 - .saturating_add((382_888_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - } - fn seal_weight_to_fee(r: u32, ) -> Weight { - (154_081_000 as Weight) - // Standard Error: 248_000 - .saturating_add((716_294_000 as Weight).saturating_mul(r as Weight)) + (121_348_000 as Weight) + // Standard Error: 125_000 + .saturating_add((244_379_000 as Weight).saturating_mul(r as Weight)) .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } + fn seal_minimum_balance(r: u32, ) -> Weight { + (120_680_000 as Weight) + // Standard Error: 107_000 + .saturating_add((244_096_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + } + fn seal_tombstone_deposit(r: u32, ) -> Weight { + (117_310_000 as Weight) + // Standard Error: 130_000 + .saturating_add((245_096_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + } + fn seal_rent_allowance(r: u32, ) -> Weight { + (131_643_000 as Weight) + // Standard Error: 171_000 + .saturating_add((554_208_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + } + fn seal_block_number(r: u32, ) -> Weight { + (117_553_000 as Weight) + // Standard Error: 128_000 + .saturating_add((244_494_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + } + fn seal_now(r: u32, ) -> Weight { + (123_184_000 as Weight) + // Standard Error: 116_000 + .saturating_add((244_414_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + } + fn seal_weight_to_fee(r: u32, ) -> Weight { + (132_846_000 as Weight) + // Standard Error: 189_000 + .saturating_add((482_450_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(6 as Weight)) + } fn seal_gas(r: u32, ) -> Weight { - (149_684_000 as Weight) - // Standard Error: 460_000 - .saturating_add((196_251_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (113_681_000 as Weight) + // Standard Error: 116_000 + .saturating_add((120_711_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_input(r: u32, ) -> Weight { - (135_447_000 as Weight) - // Standard Error: 75_000 - .saturating_add((8_362_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (118_826_000 as Weight) + // Standard Error: 89_000 + .saturating_add((6_650_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_input_per_kb(n: u32, ) -> Weight { - (146_099_000 as Weight) + (132_497_000 as Weight) // Standard Error: 0 - .saturating_add((270_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + .saturating_add((278_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_return(r: u32, ) -> Weight { - (125_358_000 as Weight) - // Standard Error: 52_000 - .saturating_add((5_454_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (112_447_000 as Weight) + // Standard Error: 73_000 + .saturating_add((4_398_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_return_per_kb(n: u32, ) -> Weight { - (135_523_000 as Weight) + (120_288_000 as Weight) // Standard Error: 0 - .saturating_add((785_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + .saturating_add((787_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_terminate(r: u32, ) -> Weight { - (135_321_000 as Weight) - // Standard Error: 100_000 - .saturating_add((110_300_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) - .saturating_add(RocksDbWeight::get().reads((3 as Weight).saturating_mul(r as Weight))) + (118_973_000 as Weight) + // Standard Error: 124_000 + .saturating_add((75_967_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + .saturating_add(RocksDbWeight::get().reads((2 as Weight).saturating_mul(r as Weight))) .saturating_add(RocksDbWeight::get().writes((4 as Weight).saturating_mul(r as Weight))) } fn seal_restore_to(r: u32, ) -> Weight { - (242_790_000 as Weight) - // Standard Error: 823_000 - .saturating_add((135_544_000 as Weight).saturating_mul(r as Weight)) + (207_295_000 as Weight) + // Standard Error: 385_000 + .saturating_add((103_584_000 as Weight).saturating_mul(r as Weight)) .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().reads((3 as Weight).saturating_mul(r as Weight))) .saturating_add(RocksDbWeight::get().writes((4 as Weight).saturating_mul(r as Weight))) } fn seal_restore_to_per_delta(d: u32, ) -> Weight { - (34_052_000 as Weight) - // Standard Error: 2_395_000 - .saturating_add((3_970_866_000 as Weight).saturating_mul(d as Weight)) + (0 as Weight) + // Standard Error: 2_349_000 + .saturating_add((3_693_440_000 as Weight).saturating_mul(d as Weight)) .saturating_add(RocksDbWeight::get().reads(7 as Weight)) .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(d as Weight))) .saturating_add(RocksDbWeight::get().writes(5 as Weight)) .saturating_add(RocksDbWeight::get().writes((100 as Weight).saturating_mul(d as Weight))) } fn seal_random(r: u32, ) -> Weight { - (154_549_000 as Weight) - // Standard Error: 692_000 - .saturating_add((989_540_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + (166_160_000 as Weight) + // Standard Error: 237_000 + .saturating_add((594_474_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(6 as Weight)) } fn seal_deposit_event(r: u32, ) -> Weight { - (125_367_000 as Weight) - // Standard Error: 977_000 - .saturating_add((1_424_216_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (145_170_000 as Weight) + // Standard Error: 397_000 + .saturating_add((859_096_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_deposit_event_per_topic_and_kb(t: u32, n: u32, ) -> Weight { - (1_843_333_000 as Weight) - // Standard Error: 3_040_000 - .saturating_add((771_663_000 as Weight).saturating_mul(t as Weight)) - // Standard Error: 599_000 - .saturating_add((251_555_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (1_128_905_000 as Weight) + // Standard Error: 4_299_000 + .saturating_add((559_485_000 as Weight).saturating_mul(t as Weight)) + // Standard Error: 847_000 + .saturating_add((253_404_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(t as Weight))) .saturating_add(RocksDbWeight::get().writes((100 as Weight).saturating_mul(t as Weight))) } fn seal_set_rent_allowance(r: u32, ) -> Weight { - (136_437_000 as Weight) - // Standard Error: 299_000 - .saturating_add((1_072_778_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (127_849_000 as Weight) + // Standard Error: 220_000 + .saturating_add((628_543_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().writes(1 as Weight)) } fn seal_set_storage(r: u32, ) -> Weight { - (182_452_000 as Weight) - // Standard Error: 26_839_000 - .saturating_add((15_911_876_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (0 as Weight) + // Standard Error: 45_695_000 + .saturating_add((17_015_513_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) .saturating_add(RocksDbWeight::get().writes(1 as Weight)) .saturating_add(RocksDbWeight::get().writes((100 as Weight).saturating_mul(r as Weight))) } fn seal_set_storage_per_kb(n: u32, ) -> Weight { - (2_385_415_000 as Weight) - // Standard Error: 751_000 - .saturating_add((223_264_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + (1_632_351_000 as Weight) + // Standard Error: 399_000 + .saturating_add((73_694_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(6 as Weight)) .saturating_add(RocksDbWeight::get().writes(2 as Weight)) } fn seal_clear_storage(r: u32, ) -> Weight { (0 as Weight) - // Standard Error: 2_154_000 - .saturating_add((5_341_117_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + // Standard Error: 2_632_000 + .saturating_add((2_148_012_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) .saturating_add(RocksDbWeight::get().writes(1 as Weight)) .saturating_add(RocksDbWeight::get().writes((100 as Weight).saturating_mul(r as Weight))) } fn seal_get_storage(r: u32, ) -> Weight { - (62_353_000 as Weight) - // Standard Error: 1_183_000 - .saturating_add((1_141_653_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (48_127_000 as Weight) + // Standard Error: 1_123_000 + .saturating_add((906_947_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) } fn seal_get_storage_per_kb(n: u32, ) -> Weight { - (905_905_000 as Weight) - // Standard Error: 363_000 - .saturating_add((155_161_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(5 as Weight)) + (676_986_000 as Weight) + // Standard Error: 307_000 + .saturating_add((153_667_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(6 as Weight)) } fn seal_transfer(r: u32, ) -> Weight { - (60_519_000 as Weight) - // Standard Error: 1_942_000 - .saturating_add((6_453_551_000 as Weight).saturating_mul(r as Weight)) + (36_730_000 as Weight) + // Standard Error: 1_966_000 + .saturating_add((3_972_101_000 as Weight).saturating_mul(r as Weight)) .saturating_add(RocksDbWeight::get().reads(5 as Weight)) .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) .saturating_add(RocksDbWeight::get().writes(1 as Weight)) .saturating_add(RocksDbWeight::get().writes((100 as Weight).saturating_mul(r as Weight))) } fn seal_call(r: u32, ) -> Weight { - (192_122_000 as Weight) - // Standard Error: 7_851_000 - .saturating_add((10_736_771_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(5 as Weight)) - .saturating_add(RocksDbWeight::get().reads((100 as Weight).saturating_mul(r as Weight))) + (0 as Weight) + // Standard Error: 10_776_000 + .saturating_add((9_860_978_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(6 as Weight)) + .saturating_add(RocksDbWeight::get().reads((200 as Weight).saturating_mul(r as Weight))) } fn seal_call_per_transfer_input_output_kb(t: u32, i: u32, o: u32, ) -> Weight { - (10_599_501_000 as Weight) - // Standard Error: 133_182_000 - .saturating_add((5_423_848_000 as Weight).saturating_mul(t as Weight)) - // Standard Error: 47_000 - .saturating_add((60_108_000 as Weight).saturating_mul(i as Weight)) - // Standard Error: 50_000 - .saturating_add((82_691_000 as Weight).saturating_mul(o as Weight)) - .saturating_add(RocksDbWeight::get().reads(105 as Weight)) - .saturating_add(RocksDbWeight::get().reads((101 as Weight).saturating_mul(t as Weight))) + (9_838_971_000 as Weight) + // Standard Error: 112_906_000 + .saturating_add((3_413_715_000 as Weight).saturating_mul(t as Weight)) + // Standard Error: 40_000 + .saturating_add((60_054_000 as Weight).saturating_mul(i as Weight)) + // Standard Error: 43_000 + .saturating_add((82_629_000 as Weight).saturating_mul(o as Weight)) + .saturating_add(RocksDbWeight::get().reads(206 as Weight)) .saturating_add(RocksDbWeight::get().writes((101 as Weight).saturating_mul(t as Weight))) } fn seal_instantiate(r: u32, ) -> Weight { (0 as Weight) - // Standard Error: 39_807_000 - .saturating_add((22_562_812_000 as Weight).saturating_mul(r as Weight)) + // Standard Error: 36_803_000 + .saturating_add((18_211_156_000 as Weight).saturating_mul(r as Weight)) .saturating_add(RocksDbWeight::get().reads(6 as Weight)) .saturating_add(RocksDbWeight::get().reads((300 as Weight).saturating_mul(r as Weight))) .saturating_add(RocksDbWeight::get().writes(2 as Weight)) .saturating_add(RocksDbWeight::get().writes((200 as Weight).saturating_mul(r as Weight))) } fn seal_instantiate_per_input_output_salt_kb(i: u32, o: u32, s: u32, ) -> Weight { - (19_823_256_000 as Weight) - // Standard Error: 153_000 - .saturating_add((60_707_000 as Weight).saturating_mul(i as Weight)) - // Standard Error: 153_000 - .saturating_add((83_770_000 as Weight).saturating_mul(o as Weight)) - // Standard Error: 153_000 - .saturating_add((284_423_000 as Weight).saturating_mul(s as Weight)) + (15_975_563_000 as Weight) + // Standard Error: 167_000 + .saturating_add((60_759_000 as Weight).saturating_mul(i as Weight)) + // Standard Error: 167_000 + .saturating_add((83_681_000 as Weight).saturating_mul(o as Weight)) + // Standard Error: 167_000 + .saturating_add((284_260_000 as Weight).saturating_mul(s as Weight)) .saturating_add(RocksDbWeight::get().reads(207 as Weight)) .saturating_add(RocksDbWeight::get().writes(202 as Weight)) } fn seal_hash_sha2_256(r: u32, ) -> Weight { - (142_838_000 as Weight) - // Standard Error: 243_000 - .saturating_add((332_354_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (120_795_000 as Weight) + // Standard Error: 115_000 + .saturating_add((226_658_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_sha2_256_per_kb(n: u32, ) -> Weight { - (877_119_000 as Weight) - // Standard Error: 73_000 - .saturating_add((434_752_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (731_640_000 as Weight) + // Standard Error: 56_000 + .saturating_add((430_102_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_keccak_256(r: u32, ) -> Weight { - (139_913_000 as Weight) - // Standard Error: 160_000 - .saturating_add((345_830_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (121_490_000 as Weight) + // Standard Error: 144_000 + .saturating_add((242_726_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_keccak_256_per_kb(n: u32, ) -> Weight { - (723_122_000 as Weight) - // Standard Error: 29_000 - .saturating_add((343_949_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (624_029_000 as Weight) + // Standard Error: 36_000 + .saturating_add((344_476_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_256(r: u32, ) -> Weight { - (137_249_000 as Weight) - // Standard Error: 168_000 - .saturating_add((320_295_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (120_959_000 as Weight) + // Standard Error: 103_000 + .saturating_add((215_519_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_256_per_kb(n: u32, ) -> Weight { - (736_756_000 as Weight) - // Standard Error: 39_000 - .saturating_add((159_952_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (713_448_000 as Weight) + // Standard Error: 47_000 + .saturating_add((160_493_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_128(r: u32, ) -> Weight { - (124_530_000 as Weight) - // Standard Error: 203_000 - .saturating_add((321_292_000 as Weight).saturating_mul(r as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (122_428_000 as Weight) + // Standard Error: 111_000 + .saturating_add((213_863_000 as Weight).saturating_mul(r as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn seal_hash_blake2_128_per_kb(n: u32, ) -> Weight { - (782_032_000 as Weight) - // Standard Error: 36_000 - .saturating_add((159_878_000 as Weight).saturating_mul(n as Weight)) - .saturating_add(RocksDbWeight::get().reads(4 as Weight)) + (757_838_000 as Weight) + // Standard Error: 47_000 + .saturating_add((160_245_000 as Weight).saturating_mul(n as Weight)) + .saturating_add(RocksDbWeight::get().reads(5 as Weight)) } fn instr_i64const(r: u32, ) -> Weight { - (24_624_000 as Weight) + (24_075_000 as Weight) // Standard Error: 18_000 - .saturating_add((3_280_000 as Weight).saturating_mul(r as Weight)) + .saturating_add((3_122_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64load(r: u32, ) -> Weight { - (27_171_000 as Weight) - // Standard Error: 62_000 - .saturating_add((161_737_000 as Weight).saturating_mul(r as Weight)) + (26_406_000 as Weight) + // Standard Error: 31_000 + .saturating_add((159_539_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64store(r: u32, ) -> Weight { - (27_106_000 as Weight) - // Standard Error: 94_000 - .saturating_add((229_960_000 as Weight).saturating_mul(r as Weight)) + (26_266_000 as Weight) + // Standard Error: 3_229_000 + .saturating_add((238_726_000 as Weight).saturating_mul(r as Weight)) } fn instr_select(r: u32, ) -> Weight { - (24_566_000 as Weight) - // Standard Error: 18_000 - .saturating_add((12_157_000 as Weight).saturating_mul(r as Weight)) + (27_469_000 as Weight) + // Standard Error: 592_000 + .saturating_add((10_423_000 as Weight).saturating_mul(r as Weight)) } fn instr_if(r: u32, ) -> Weight { - (24_531_000 as Weight) - // Standard Error: 17_000 - .saturating_add((12_007_000 as Weight).saturating_mul(r as Weight)) + (24_627_000 as Weight) + // Standard Error: 29_000 + .saturating_add((11_999_000 as Weight).saturating_mul(r as Weight)) } fn instr_br(r: u32, ) -> Weight { - (24_567_000 as Weight) - // Standard Error: 20_000 - .saturating_add((6_132_000 as Weight).saturating_mul(r as Weight)) + (24_008_000 as Weight) + // Standard Error: 22_000 + .saturating_add((6_614_000 as Weight).saturating_mul(r as Weight)) } fn instr_br_if(r: u32, ) -> Weight { - (24_628_000 as Weight) - // Standard Error: 21_000 - .saturating_add((13_480_000 as Weight).saturating_mul(r as Weight)) + (24_040_000 as Weight) + // Standard Error: 20_000 + .saturating_add((14_190_000 as Weight).saturating_mul(r as Weight)) } fn instr_br_table(r: u32, ) -> Weight { - (24_653_000 as Weight) - // Standard Error: 21_000 - .saturating_add((15_005_000 as Weight).saturating_mul(r as Weight)) + (23_997_000 as Weight) + // Standard Error: 24_000 + .saturating_add((15_529_000 as Weight).saturating_mul(r as Weight)) } fn instr_br_table_per_entry(e: u32, ) -> Weight { - (38_573_000 as Weight) - // Standard Error: 0 - .saturating_add((118_000 as Weight).saturating_mul(e as Weight)) + (36_890_000 as Weight) + // Standard Error: 1_000 + .saturating_add((112_000 as Weight).saturating_mul(e as Weight)) } fn instr_call(r: u32, ) -> Weight { - (24_952_000 as Weight) - // Standard Error: 61_000 - .saturating_add((99_409_000 as Weight).saturating_mul(r as Weight)) + (24_266_000 as Weight) + // Standard Error: 198_000 + .saturating_add((99_702_000 as Weight).saturating_mul(r as Weight)) } fn instr_call_indirect(r: u32, ) -> Weight { - (32_478_000 as Weight) - // Standard Error: 242_000 - .saturating_add((193_797_000 as Weight).saturating_mul(r as Weight)) + (31_901_000 as Weight) + // Standard Error: 322_000 + .saturating_add((197_671_000 as Weight).saturating_mul(r as Weight)) } fn instr_call_indirect_per_param(p: u32, ) -> Weight { - (238_200_000 as Weight) - // Standard Error: 4_000 - .saturating_add((3_467_000 as Weight).saturating_mul(p as Weight)) + (239_803_000 as Weight) + // Standard Error: 5_000 + .saturating_add((3_474_000 as Weight).saturating_mul(p as Weight)) } fn instr_local_get(r: u32, ) -> Weight { - (41_994_000 as Weight) - // Standard Error: 22_000 - .saturating_add((3_230_000 as Weight).saturating_mul(r as Weight)) + (41_697_000 as Weight) + // Standard Error: 15_000 + .saturating_add((3_225_000 as Weight).saturating_mul(r as Weight)) } fn instr_local_set(r: u32, ) -> Weight { - (41_994_000 as Weight) - // Standard Error: 20_000 - .saturating_add((3_558_000 as Weight).saturating_mul(r as Weight)) + (41_698_000 as Weight) + // Standard Error: 13_000 + .saturating_add((3_458_000 as Weight).saturating_mul(r as Weight)) } fn instr_local_tee(r: u32, ) -> Weight { - (41_965_000 as Weight) - // Standard Error: 33_000 - .saturating_add((4_806_000 as Weight).saturating_mul(r as Weight)) + (41_715_000 as Weight) + // Standard Error: 19_000 + .saturating_add((4_684_000 as Weight).saturating_mul(r as Weight)) } fn instr_global_get(r: u32, ) -> Weight { - (27_997_000 as Weight) - // Standard Error: 26_000 - .saturating_add((7_859_000 as Weight).saturating_mul(r as Weight)) + (27_751_000 as Weight) + // Standard Error: 20_000 + .saturating_add((7_980_000 as Weight).saturating_mul(r as Weight)) } fn instr_global_set(r: u32, ) -> Weight { - (28_118_000 as Weight) - // Standard Error: 33_000 - .saturating_add((11_825_000 as Weight).saturating_mul(r as Weight)) + (27_632_000 as Weight) + // Standard Error: 21_000 + .saturating_add((12_050_000 as Weight).saturating_mul(r as Weight)) } fn instr_memory_current(r: u32, ) -> Weight { - (27_172_000 as Weight) - // Standard Error: 19_000 - .saturating_add((3_466_000 as Weight).saturating_mul(r as Weight)) + (26_302_000 as Weight) + // Standard Error: 25_000 + .saturating_add((3_480_000 as Weight).saturating_mul(r as Weight)) } fn instr_memory_grow(r: u32, ) -> Weight { - (25_582_000 as Weight) - // Standard Error: 4_756_000 - .saturating_add((2_290_170_000 as Weight).saturating_mul(r as Weight)) + (24_695_000 as Weight) + // Standard Error: 3_876_000 + .saturating_add((2_324_806_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64clz(r: u32, ) -> Weight { - (24_712_000 as Weight) - // Standard Error: 24_000 - .saturating_add((5_226_000 as Weight).saturating_mul(r as Weight)) + (24_043_000 as Weight) + // Standard Error: 13_000 + .saturating_add((5_187_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ctz(r: u32, ) -> Weight { - (24_631_000 as Weight) - // Standard Error: 23_000 - .saturating_add((5_282_000 as Weight).saturating_mul(r as Weight)) + (24_040_000 as Weight) + // Standard Error: 14_000 + .saturating_add((5_077_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64popcnt(r: u32, ) -> Weight { - (24_640_000 as Weight) - // Standard Error: 17_000 - .saturating_add((5_964_000 as Weight).saturating_mul(r as Weight)) + (23_995_000 as Weight) + // Standard Error: 18_000 + .saturating_add((5_801_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64eqz(r: u32, ) -> Weight { - (24_631_000 as Weight) - // Standard Error: 11_000 - .saturating_add((5_128_000 as Weight).saturating_mul(r as Weight)) + (24_010_000 as Weight) + // Standard Error: 12_000 + .saturating_add((5_221_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64extendsi32(r: u32, ) -> Weight { - (24_540_000 as Weight) - // Standard Error: 11_000 - .saturating_add((5_224_000 as Weight).saturating_mul(r as Weight)) + (24_073_000 as Weight) + // Standard Error: 18_000 + .saturating_add((5_205_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64extendui32(r: u32, ) -> Weight { - (24_623_000 as Weight) - // Standard Error: 16_000 - .saturating_add((5_138_000 as Weight).saturating_mul(r as Weight)) + (23_993_000 as Weight) + // Standard Error: 17_000 + .saturating_add((5_079_000 as Weight).saturating_mul(r as Weight)) } fn instr_i32wrapi64(r: u32, ) -> Weight { - (24_623_000 as Weight) - // Standard Error: 15_000 - .saturating_add((5_242_000 as Weight).saturating_mul(r as Weight)) + (24_008_000 as Weight) + // Standard Error: 16_000 + .saturating_add((5_077_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64eq(r: u32, ) -> Weight { - (24_575_000 as Weight) - // Standard Error: 9_000 - .saturating_add((7_328_000 as Weight).saturating_mul(r as Weight)) + (23_991_000 as Weight) + // Standard Error: 17_000 + .saturating_add((7_248_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ne(r: u32, ) -> Weight { - (24_674_000 as Weight) - // Standard Error: 14_000 - .saturating_add((7_147_000 as Weight).saturating_mul(r as Weight)) + (23_983_000 as Weight) + // Standard Error: 21_000 + .saturating_add((7_303_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64lts(r: u32, ) -> Weight { - (24_645_000 as Weight) - // Standard Error: 20_000 - .saturating_add((7_158_000 as Weight).saturating_mul(r as Weight)) + (23_991_000 as Weight) + // Standard Error: 21_000 + .saturating_add((7_106_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ltu(r: u32, ) -> Weight { - (24_688_000 as Weight) - // Standard Error: 16_000 - .saturating_add((7_226_000 as Weight).saturating_mul(r as Weight)) + (24_062_000 as Weight) + // Standard Error: 25_000 + .saturating_add((7_168_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64gts(r: u32, ) -> Weight { - (24_579_000 as Weight) - // Standard Error: 13_000 - .saturating_add((7_187_000 as Weight).saturating_mul(r as Weight)) + (24_028_000 as Weight) + // Standard Error: 26_000 + .saturating_add((7_130_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64gtu(r: u32, ) -> Weight { - (24_578_000 as Weight) - // Standard Error: 15_000 - .saturating_add((7_235_000 as Weight).saturating_mul(r as Weight)) + (23_998_000 as Weight) + // Standard Error: 18_000 + .saturating_add((7_279_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64les(r: u32, ) -> Weight { - (24_625_000 as Weight) - // Standard Error: 17_000 - .saturating_add((7_089_000 as Weight).saturating_mul(r as Weight)) + (24_010_000 as Weight) + // Standard Error: 19_000 + .saturating_add((7_114_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64leu(r: u32, ) -> Weight { - (24_589_000 as Weight) - // Standard Error: 9_000 - .saturating_add((7_078_000 as Weight).saturating_mul(r as Weight)) + (24_003_000 as Weight) + // Standard Error: 13_000 + .saturating_add((7_052_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64ges(r: u32, ) -> Weight { - (24_572_000 as Weight) - // Standard Error: 13_000 - .saturating_add((7_286_000 as Weight).saturating_mul(r as Weight)) + (23_948_000 as Weight) + // Standard Error: 15_000 + .saturating_add((7_236_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64geu(r: u32, ) -> Weight { - (24_566_000 as Weight) + (24_042_000 as Weight) // Standard Error: 19_000 - .saturating_add((7_247_000 as Weight).saturating_mul(r as Weight)) + .saturating_add((7_223_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64add(r: u32, ) -> Weight { - (24_581_000 as Weight) - // Standard Error: 18_000 - .saturating_add((7_190_000 as Weight).saturating_mul(r as Weight)) + (23_965_000 as Weight) + // Standard Error: 37_000 + .saturating_add((7_261_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64sub(r: u32, ) -> Weight { - (24_565_000 as Weight) - // Standard Error: 10_000 - .saturating_add((7_242_000 as Weight).saturating_mul(r as Weight)) + (24_023_000 as Weight) + // Standard Error: 26_000 + .saturating_add((7_170_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64mul(r: u32, ) -> Weight { - (24_542_000 as Weight) - // Standard Error: 11_000 - .saturating_add((7_216_000 as Weight).saturating_mul(r as Weight)) + (24_057_000 as Weight) + // Standard Error: 17_000 + .saturating_add((7_050_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64divs(r: u32, ) -> Weight { - (24_608_000 as Weight) - // Standard Error: 16_000 - .saturating_add((12_966_000 as Weight).saturating_mul(r as Weight)) + (24_038_000 as Weight) + // Standard Error: 15_000 + .saturating_add((12_934_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64divu(r: u32, ) -> Weight { - (24_564_000 as Weight) - // Standard Error: 1_424_000 - .saturating_add((13_665_000 as Weight).saturating_mul(r as Weight)) + (23_992_000 as Weight) + // Standard Error: 15_000 + .saturating_add((12_055_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64rems(r: u32, ) -> Weight { - (24_611_000 as Weight) - // Standard Error: 16_000 - .saturating_add((12_932_000 as Weight).saturating_mul(r as Weight)) + (24_082_000 as Weight) + // Standard Error: 18_000 + .saturating_add((12_898_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64remu(r: u32, ) -> Weight { - (24_590_000 as Weight) - // Standard Error: 10_000 - .saturating_add((12_207_000 as Weight).saturating_mul(r as Weight)) + (24_025_000 as Weight) + // Standard Error: 13_000 + .saturating_add((12_178_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64and(r: u32, ) -> Weight { - (24_622_000 as Weight) - // Standard Error: 15_000 - .saturating_add((7_172_000 as Weight).saturating_mul(r as Weight)) + (23_984_000 as Weight) + // Standard Error: 18_000 + .saturating_add((7_214_000 as Weight).saturating_mul(r as Weight)) } fn instr_i64or(r: u32, ) -> Weight { - (24_585_000 as Weight) - // Standard Error: 18_000 - .saturating_add((7_202_000 as Weight).saturating_mul(r as Weight)) - } - fn instr_i64xor(r: u32, ) -> Weight { - (24_600_000 as Weight) - // Standard Error: 20_000 - .saturating_add((7_182_000 as Weight).saturating_mul(r as Weight)) - } - fn instr_i64shl(r: u32, ) -> Weight { - (24_621_000 as Weight) - // Standard Error: 11_000 - .saturating_add((7_226_000 as Weight).saturating_mul(r as Weight)) - } - fn instr_i64shrs(r: u32, ) -> Weight { - (24_643_000 as Weight) - // Standard Error: 22_000 - .saturating_add((7_254_000 as Weight).saturating_mul(r as Weight)) - } - fn instr_i64shru(r: u32, ) -> Weight { - (24_586_000 as Weight) - // Standard Error: 14_000 - .saturating_add((7_246_000 as Weight).saturating_mul(r as Weight)) - } - fn instr_i64rotl(r: u32, ) -> Weight { - (24_631_000 as Weight) - // Standard Error: 22_000 - .saturating_add((7_306_000 as Weight).saturating_mul(r as Weight)) - } - fn instr_i64rotr(r: u32, ) -> Weight { - (24_643_000 as Weight) - // Standard Error: 15_000 + (24_012_000 as Weight) + // Standard Error: 16_000 .saturating_add((7_183_000 as Weight).saturating_mul(r as Weight)) } + fn instr_i64xor(r: u32, ) -> Weight { + (24_001_000 as Weight) + // Standard Error: 18_000 + .saturating_add((7_122_000 as Weight).saturating_mul(r as Weight)) + } + fn instr_i64shl(r: u32, ) -> Weight { + (23_973_000 as Weight) + // Standard Error: 13_000 + .saturating_add((7_251_000 as Weight).saturating_mul(r as Weight)) + } + fn instr_i64shrs(r: u32, ) -> Weight { + (23_969_000 as Weight) + // Standard Error: 14_000 + .saturating_add((7_289_000 as Weight).saturating_mul(r as Weight)) + } + fn instr_i64shru(r: u32, ) -> Weight { + (24_008_000 as Weight) + // Standard Error: 15_000 + .saturating_add((7_292_000 as Weight).saturating_mul(r as Weight)) + } + fn instr_i64rotl(r: u32, ) -> Weight { + (24_010_000 as Weight) + // Standard Error: 21_000 + .saturating_add((7_305_000 as Weight).saturating_mul(r as Weight)) + } + fn instr_i64rotr(r: u32, ) -> Weight { + (24_001_000 as Weight) + // Standard Error: 22_000 + .saturating_add((7_299_000 as Weight).saturating_mul(r as Weight)) + } } diff --git a/substrate/frame/support/src/storage/child.rs b/substrate/frame/support/src/storage/child.rs index ede7b98e5e..c1885fc074 100644 --- a/substrate/frame/support/src/storage/child.rs +++ b/substrate/frame/support/src/storage/child.rs @@ -243,3 +243,21 @@ pub fn root( ), } } + +/// Return the length in bytes of the value without reading it. `None` if it does not exist. +pub fn len( + child_info: &ChildInfo, + key: &[u8], +) -> Option { + match child_info.child_type() { + ChildType::ParentKeyId => { + let mut buffer = [0; 0]; + sp_io::default_child_storage::read( + child_info.storage_key(), + key, + &mut buffer, + 0, + ) + } + } +}