mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-05-30 07:01:03 +00:00
[xcm] Use Weight::MAX for reserve_asset_deposited, receive_teleported_asset benchmarks (#1726)
# Description ## Summary Previously, the `pallet_xcm::do_reserve_transfer_assets` and `pallet_xcm::do_teleport_assets` functions relied on weight estimation for remote chain execution, which was based on guesswork derived from the local chain. This approach led to complications for runtimes that did not provide or support specific [XCM configurations](https://github.com/paritytech/polkadot-sdk/blob/7cbe0c76ef8fd2aabf9f07de0156941ce3ed44b0/polkadot/xcm/xcm-executor/src/config.rs#L43-L47) for `IsReserve` or `IsTeleporter`. Consequently, such runtimes had to resort to implementing hard-coded weights for XCM instructions like `reserve_asset_deposited` or `receive_teleported_asset` to support extrinsics such as `pallet_xcm::reserve_transfer_assets` and `pallet_xcm::teleport_assets`, which depended on remote weight estimation. The issue of remote weight estimation was addressed and resolved by [Pull Request #1645](https://github.com/paritytech/polkadot-sdk/pull/1645), which removed the need for remote weight estimation. ## Solution As a continuation of this improvement, the current PR proposes further cleanup by removing unnecessary hard-coded values and rectifying benchmark results with `Weight::MAX` that previously used `T::BlockWeights::get().max_block` as an override for unsupported XCM instructions like `ReserveAssetDeposited` and `ReceiveTeleportedAsset`. ## Questions - [x] Can we remove now also `Hardcoded till the XCM pallet is fixed` for `deposit_asset`? E.g. for AssetHubKusama [here](https://github.com/paritytech/polkadot-sdk/blob/7cbe0c76ef8fd2aabf9f07de0156941ce3ed44b0/cumulus/parachains/runtimes/assets/asset-hub-kusama/src/weights/xcm/mod.rs#L129-L134) - [x] Are comments like [this](https://github.com/paritytech/polkadot-sdk/blob/7cbe0c76ef8fd2aabf9f07de0156941ce3ed44b0/polkadot/runtime/kusama/src/weights/xcm/mod.rs#L94) `// Kusama doesn't support ReserveAssetDeposited, so this benchmark has a default weight` still relevant? Shouldnt be removed/changed? ## TODO - [x] `bench bot` regenerate xcm weights for all runtimes - [x] remove hard-coded stuff from system parachain weight files - [ ] when merged, open `polkadot-fellow/runtimes` PR ## References Fixes #1132 Closes #1132 Old polkadot repo [PR](https://github.com/paritytech/polkadot/pull/7546) --------- Co-authored-by: command-bot <>
This commit is contained in:
+4
-7
@@ -35,11 +35,8 @@ fn relay_origin_assertions(t: RelayToSystemParaTest) {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn system_para_dest_assertions_incomplete(_t: RelayToSystemParaTest) {
|
fn system_para_dest_assertions(_t: RelayToSystemParaTest) {
|
||||||
AssetHubWestend::assert_dmp_queue_incomplete(
|
AssetHubWestend::assert_dmp_queue_error(Error::WeightNotComputable);
|
||||||
Some(Weight::from_parts(1_000_000_000, 0)),
|
|
||||||
Some(Error::UntrustedReserveLocation),
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn system_para_to_relay_assertions(_t: SystemParaToRelayTest) {
|
fn system_para_to_relay_assertions(_t: SystemParaToRelayTest) {
|
||||||
@@ -178,7 +175,7 @@ fn limited_reserve_transfer_native_asset_from_relay_to_system_para_fails() {
|
|||||||
let receiver_balance_before = test.receiver.balance;
|
let receiver_balance_before = test.receiver.balance;
|
||||||
|
|
||||||
test.set_assertion::<Westend>(relay_origin_assertions);
|
test.set_assertion::<Westend>(relay_origin_assertions);
|
||||||
test.set_assertion::<AssetHubWestend>(system_para_dest_assertions_incomplete);
|
test.set_assertion::<AssetHubWestend>(system_para_dest_assertions);
|
||||||
test.set_dispatchable::<Westend>(relay_limited_reserve_transfer_assets);
|
test.set_dispatchable::<Westend>(relay_limited_reserve_transfer_assets);
|
||||||
test.assert();
|
test.assert();
|
||||||
|
|
||||||
@@ -237,7 +234,7 @@ fn reserve_transfer_native_asset_from_relay_to_system_para_fails() {
|
|||||||
let receiver_balance_before = test.receiver.balance;
|
let receiver_balance_before = test.receiver.balance;
|
||||||
|
|
||||||
test.set_assertion::<Westend>(relay_origin_assertions);
|
test.set_assertion::<Westend>(relay_origin_assertions);
|
||||||
test.set_assertion::<AssetHubWestend>(system_para_dest_assertions_incomplete);
|
test.set_assertion::<AssetHubWestend>(system_para_dest_assertions);
|
||||||
test.set_dispatchable::<Westend>(relay_reserve_transfer_assets);
|
test.set_dispatchable::<Westend>(relay_reserve_transfer_assets);
|
||||||
test.assert();
|
test.assert();
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -119,8 +119,8 @@ fn send_xcm_from_para_to_system_para_paying_fee_with_assets_works() {
|
|||||||
type RuntimeEvent = <AssetHubWestend as Chain>::RuntimeEvent;
|
type RuntimeEvent = <AssetHubWestend as Chain>::RuntimeEvent;
|
||||||
|
|
||||||
AssetHubWestend::assert_xcmp_queue_success(Some(Weight::from_parts(
|
AssetHubWestend::assert_xcmp_queue_success(Some(Weight::from_parts(
|
||||||
2_176_414_000,
|
16_290_336_000,
|
||||||
203_593,
|
562_893,
|
||||||
)));
|
)));
|
||||||
|
|
||||||
assert_expected_events!(
|
assert_expected_events!(
|
||||||
|
|||||||
+68
-72
@@ -97,7 +97,7 @@ fn para_origin_assertions(t: SystemParaToRelayTest) {
|
|||||||
fn para_dest_assertions(t: RelayToSystemParaTest) {
|
fn para_dest_assertions(t: RelayToSystemParaTest) {
|
||||||
type RuntimeEvent = <AssetHubWestend as Chain>::RuntimeEvent;
|
type RuntimeEvent = <AssetHubWestend as Chain>::RuntimeEvent;
|
||||||
|
|
||||||
AssetHubWestend::assert_dmp_queue_complete(Some(Weight::from_parts(164_733_000, 0)));
|
AssetHubWestend::assert_dmp_queue_complete(Some(Weight::from_parts(164_793_000, 3593)));
|
||||||
|
|
||||||
assert_expected_events!(
|
assert_expected_events!(
|
||||||
AssetHubWestend,
|
AssetHubWestend,
|
||||||
@@ -142,16 +142,15 @@ fn system_para_limited_teleport_assets(t: SystemParaToRelayTest) -> DispatchResu
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Uncomment when https://github.com/paritytech/polkadot/pull/7424 is merged
|
fn system_para_teleport_assets(t: SystemParaToRelayTest) -> DispatchResult {
|
||||||
// fn system_para_teleport_assets(t: SystemParaToRelayTest) -> DispatchResult {
|
<AssetHubWestend as AssetHubWestendPallet>::PolkadotXcm::teleport_assets(
|
||||||
// <AssetHubWestend as AssetHubWestendPallet>::PolkadotXcm::teleport_assets(
|
t.signed_origin,
|
||||||
// t.signed_origin,
|
bx!(t.args.dest.into()),
|
||||||
// bx!(t.args.dest),
|
bx!(t.args.beneficiary.into()),
|
||||||
// bx!(t.args.beneficiary),
|
bx!(t.args.assets.into()),
|
||||||
// bx!(t.args.assets),
|
t.args.fee_asset_item,
|
||||||
// t.args.fee_asset_item,
|
)
|
||||||
// )
|
}
|
||||||
// }
|
|
||||||
|
|
||||||
/// Limited Teleport of native asset from Relay Chain to the System Parachain should work
|
/// Limited Teleport of native asset from Relay Chain to the System Parachain should work
|
||||||
#[test]
|
#[test]
|
||||||
@@ -286,78 +285,75 @@ fn teleport_native_assets_from_relay_to_system_para_works() {
|
|||||||
assert!(receiver_balance_after > receiver_balance_before);
|
assert!(receiver_balance_after > receiver_balance_before);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: Uncomment when https://github.com/paritytech/polkadot/pull/7424 is merged
|
/// Teleport of native asset from System Parachains to the Relay Chain
|
||||||
|
/// should work when there is enough balance in Relay Chain's `CheckAccount`
|
||||||
|
#[test]
|
||||||
|
fn teleport_native_assets_back_from_system_para_to_relay_works() {
|
||||||
|
// Dependency - Relay Chain's `CheckAccount` should have enough balance
|
||||||
|
teleport_native_assets_from_relay_to_system_para_works();
|
||||||
|
|
||||||
// Right now it is failing in the Relay Chain with a
|
// Init values for Relay Chain
|
||||||
// `messageQueue.ProcessingFailed` event `error: Unsupported`.
|
let amount_to_send: Balance = ASSET_HUB_WESTEND_ED * 1000;
|
||||||
// The reason is the `Weigher` in `pallet_xcm` is not properly calculating the `remote_weight`
|
let destination = AssetHubWestend::parent_location();
|
||||||
// and it cause an `Overweight` error in `AllowTopLevelPaidExecutionFrom` barrier
|
let beneficiary_id = WestendReceiver::get();
|
||||||
|
let assets = (Parent, amount_to_send).into();
|
||||||
|
|
||||||
// /// Teleport of native asset from System Parachains to the Relay Chain
|
let test_args = TestContext {
|
||||||
// /// should work when there is enough balance in Relay Chain's `CheckAccount`
|
sender: AssetHubWestendSender::get(),
|
||||||
// #[test]
|
receiver: WestendReceiver::get(),
|
||||||
// fn teleport_native_assets_back_from_system_para_to_relay_works() {
|
args: system_para_test_args(destination, beneficiary_id, amount_to_send, assets, None),
|
||||||
// // Dependency - Relay Chain's `CheckAccount` should have enough balance
|
};
|
||||||
// teleport_native_assets_from_relay_to_system_para_works();
|
|
||||||
|
|
||||||
// // Init values for Relay Chain
|
let mut test = SystemParaToRelayTest::new(test_args);
|
||||||
// let amount_to_send: Balance = ASSET_HUB_WESTEND_ED * 1000;
|
|
||||||
// let test_args = TestContext {
|
|
||||||
// sender: AssetHubWestendSender::get(),
|
|
||||||
// receiver: WestendReceiver::get(),
|
|
||||||
// args: get_para_dispatch_args(amount_to_send),
|
|
||||||
// };
|
|
||||||
|
|
||||||
// let mut test = SystemParaToRelayTest::new(test_args);
|
let sender_balance_before = test.sender.balance;
|
||||||
|
let receiver_balance_before = test.receiver.balance;
|
||||||
|
|
||||||
// let sender_balance_before = test.sender.balance;
|
test.set_assertion::<AssetHubWestend>(para_origin_assertions);
|
||||||
// let receiver_balance_before = test.receiver.balance;
|
test.set_assertion::<Westend>(relay_dest_assertions);
|
||||||
|
test.set_dispatchable::<AssetHubWestend>(system_para_teleport_assets);
|
||||||
|
test.assert();
|
||||||
|
|
||||||
// test.set_assertion::<AssetHubWestend>(para_origin_assertions);
|
let sender_balance_after = test.sender.balance;
|
||||||
// test.set_assertion::<Westend>(relay_dest_assertions);
|
let receiver_balance_after = test.receiver.balance;
|
||||||
// test.set_dispatchable::<AssetHubWestend>(system_para_teleport_assets);
|
|
||||||
// test.assert();
|
|
||||||
|
|
||||||
// let sender_balance_after = test.sender.balance;
|
// Sender's balance is reduced
|
||||||
// let receiver_balance_after = test.receiver.balance;
|
assert_eq!(sender_balance_before - amount_to_send, sender_balance_after);
|
||||||
|
// Receiver's balance is increased
|
||||||
|
assert!(receiver_balance_after > receiver_balance_before);
|
||||||
|
}
|
||||||
|
|
||||||
// // Sender's balance is reduced
|
/// Teleport of native asset from System Parachain to Relay Chain
|
||||||
// assert_eq!(sender_balance_before - amount_to_send, sender_balance_after);
|
/// shouldn't work when there is not enough balance in Relay Chain's `CheckAccount`
|
||||||
// // Receiver's balance is increased
|
#[test]
|
||||||
// assert!(receiver_balance_after > receiver_balance_before);
|
fn teleport_native_assets_from_system_para_to_relay_fails() {
|
||||||
// }
|
// Init values for Relay Chain
|
||||||
|
let amount_to_send: Balance = ASSET_HUB_WESTEND_ED * 1000;
|
||||||
|
let destination = AssetHubWestend::parent_location();
|
||||||
|
let beneficiary_id = WestendReceiver::get();
|
||||||
|
let assets = (Parent, amount_to_send).into();
|
||||||
|
|
||||||
// /// Teleport of native asset from System Parachain to Relay Chain
|
let test_args = TestContext {
|
||||||
// /// shouldn't work when there is not enough balance in Relay Chain's `CheckAccount`
|
sender: AssetHubWestendSender::get(),
|
||||||
// #[test]
|
receiver: WestendReceiver::get(),
|
||||||
// fn teleport_native_assets_from_system_para_to_relay_fails() {
|
args: system_para_test_args(destination, beneficiary_id, amount_to_send, assets, None),
|
||||||
// // Init values for Relay Chain
|
};
|
||||||
// let amount_to_send: Balance = ASSET_HUB_WESTEND_ED * 1000;
|
|
||||||
// let assets = (Parent, amount_to_send).into();
|
|
||||||
//
|
|
||||||
// let test_args = TestContext {
|
|
||||||
// sender: AssetHubWestendSender::get(),
|
|
||||||
// receiver: WestendReceiver::get(),
|
|
||||||
// args: system_para_test_args(amount_to_send),
|
|
||||||
// assets,
|
|
||||||
// None
|
|
||||||
// };
|
|
||||||
|
|
||||||
// let mut test = SystemParaToRelayTest::new(test_args);
|
let mut test = SystemParaToRelayTest::new(test_args);
|
||||||
|
|
||||||
// let sender_balance_before = test.sender.balance;
|
let sender_balance_before = test.sender.balance;
|
||||||
// let receiver_balance_before = test.receiver.balance;
|
let receiver_balance_before = test.receiver.balance;
|
||||||
|
|
||||||
// test.set_assertion::<AssetHubWestend>(para_origin_assertions);
|
test.set_assertion::<AssetHubWestend>(para_origin_assertions);
|
||||||
// test.set_assertion::<Westend>(relay_dest_assertions);
|
test.set_assertion::<Westend>(relay_dest_assertions_fail);
|
||||||
// test.set_dispatchable::<AssetHubWestend>(system_para_teleport_assets);
|
test.set_dispatchable::<AssetHubWestend>(system_para_teleport_assets);
|
||||||
// test.assert();
|
test.assert();
|
||||||
|
|
||||||
// let sender_balance_after = test.sender.balance;
|
let sender_balance_after = test.sender.balance;
|
||||||
// let receiver_balance_after = test.receiver.balance;
|
let receiver_balance_after = test.receiver.balance;
|
||||||
|
|
||||||
// // Sender's balance is reduced
|
// Sender's balance is reduced
|
||||||
// assert_eq!(sender_balance_before - amount_to_send, sender_balance_after);
|
assert_eq!(sender_balance_before - amount_to_send, sender_balance_after);
|
||||||
// // Receiver's balance does not change
|
// Receiver's balance does not change
|
||||||
// assert_eq!(receiver_balance_after, receiver_balance_before);
|
assert_eq!(receiver_balance_after, receiver_balance_before);
|
||||||
// }
|
}
|
||||||
|
|||||||
@@ -503,6 +503,22 @@ macro_rules! impl_assert_events_helpers_for_parachain {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// Asserts a XCM from Relay Chain is executed with error
|
||||||
|
pub fn assert_dmp_queue_error(
|
||||||
|
expected_error: $crate::impls::Error,
|
||||||
|
) {
|
||||||
|
$crate::impls::assert_expected_events!(
|
||||||
|
Self,
|
||||||
|
vec![
|
||||||
|
[<$chain RuntimeEvent>]::DmpQueue($crate::impls::cumulus_pallet_dmp_queue::Event::ExecutedDownward {
|
||||||
|
outcome: $crate::impls::Outcome::Error(error), ..
|
||||||
|
}) => {
|
||||||
|
error: *error == expected_error,
|
||||||
|
},
|
||||||
|
]
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
/// Asserts a XCM from another Parachain is completely executed
|
/// Asserts a XCM from another Parachain is completely executed
|
||||||
pub fn assert_xcmp_queue_success(expected_weight: Option<$crate::impls::Weight>) {
|
pub fn assert_xcmp_queue_success(expected_weight: Option<$crate::impls::Weight>) {
|
||||||
$crate::impls::assert_expected_events!(
|
$crate::impls::assert_expected_events!(
|
||||||
|
|||||||
@@ -61,16 +61,8 @@ impl<Call> XcmWeightInfo<Call> for AssetHubKusamaXcmWeight<Call> {
|
|||||||
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
// Currently there is no trusted reserve (`IsReserve = ()`),
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// but we need this hack for `pallet_xcm::reserve_transfer_assets`
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7424
|
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7546
|
|
||||||
fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight {
|
|
||||||
// TODO: if we change `IsReserve = ...` then use this line...
|
|
||||||
// TODO: or if remote weight estimation is fixed, then remove
|
|
||||||
// TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974
|
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
hardcoded_weight.min(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
||||||
@@ -127,10 +119,7 @@ impl<Call> XcmWeightInfo<Call> for AssetHubKusamaXcmWeight<Call> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset())
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn deposit_reserve_asset(
|
fn deposit_reserve_asset(
|
||||||
assets: &MultiAssetFilter,
|
assets: &MultiAssetFilter,
|
||||||
|
|||||||
+38
-40
@@ -17,28 +17,26 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("asset-hub-kusama-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("asset-hub-kusama-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// ./target/production/polkadot-parachain
|
// target/production/polkadot-parachain
|
||||||
// benchmark
|
// benchmark
|
||||||
// pallet
|
// pallet
|
||||||
// --template=./templates/xcm-bench-template.hbs
|
|
||||||
// --chain=asset-hub-kusama-dev
|
|
||||||
// --wasm-execution=compiled
|
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
|
||||||
// --no-storage-info
|
|
||||||
// --no-median-slopes
|
|
||||||
// --no-min-squares
|
|
||||||
// --extrinsic=*
|
|
||||||
// --steps=50
|
// --steps=50
|
||||||
// --repeat=20
|
// --repeat=20
|
||||||
// --json
|
// --extrinsic=*
|
||||||
// --header=./file_header.txt
|
// --wasm-execution=compiled
|
||||||
// --output=./parachains/runtimes/assets/asset-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
// --heap-pages=4096
|
||||||
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
|
// --chain=asset-hub-kusama-dev
|
||||||
|
// --header=./cumulus/file_header.txt
|
||||||
|
// --template=./cumulus/templates/xcm-bench-template.hbs
|
||||||
|
// --output=./cumulus/parachains/runtimes/assets/asset-hub-kusama/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -56,8 +54,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 26_104_000 picoseconds.
|
// Minimum execution time: 25_602_000 picoseconds.
|
||||||
Weight::from_parts(26_722_000, 3593)
|
Weight::from_parts(26_312_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -67,8 +65,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 52_259_000 picoseconds.
|
// Minimum execution time: 51_173_000 picoseconds.
|
||||||
Weight::from_parts(53_854_000, 6196)
|
Weight::from_parts(52_221_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -88,10 +86,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
||||||
pub fn transfer_reserve_asset() -> Weight {
|
pub fn transfer_reserve_asset() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `210`
|
// Measured: `246`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 77_248_000 picoseconds.
|
// Minimum execution time: 74_651_000 picoseconds.
|
||||||
Weight::from_parts(80_354_000, 6196)
|
Weight::from_parts(76_500_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(8))
|
.saturating_add(T::DbWeight::get().reads(8))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -101,8 +99,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 500_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(500_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
||||||
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||||
@@ -118,10 +116,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
||||||
pub fn initiate_reserve_withdraw() -> Weight {
|
pub fn initiate_reserve_withdraw() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `109`
|
// Measured: `145`
|
||||||
// Estimated: `3574`
|
// Estimated: `3610`
|
||||||
// Minimum execution time: 482_070_000 picoseconds.
|
// Minimum execution time: 458_666_000 picoseconds.
|
||||||
Weight::from_parts(490_269_000, 3574)
|
Weight::from_parts(470_470_000, 3610)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -129,8 +127,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 3_970_000 picoseconds.
|
// Minimum execution time: 3_701_000 picoseconds.
|
||||||
Weight::from_parts(4_056_000, 0)
|
Weight::from_parts(3_887_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `System::Account` (r:1 w:1)
|
// Storage: `System::Account` (r:1 w:1)
|
||||||
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
||||||
@@ -138,8 +136,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 26_324_000 picoseconds.
|
// Minimum execution time: 25_709_000 picoseconds.
|
||||||
Weight::from_parts(26_985_000, 3593)
|
Weight::from_parts(26_320_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -159,10 +157,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
||||||
pub fn deposit_reserve_asset() -> Weight {
|
pub fn deposit_reserve_asset() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `109`
|
// Measured: `145`
|
||||||
// Estimated: `3593`
|
// Estimated: `3610`
|
||||||
// Minimum execution time: 52_814_000 picoseconds.
|
// Minimum execution time: 51_663_000 picoseconds.
|
||||||
Weight::from_parts(54_666_000, 3593)
|
Weight::from_parts(52_538_000, 3610)
|
||||||
.saturating_add(T::DbWeight::get().reads(7))
|
.saturating_add(T::DbWeight::get().reads(7))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -180,10 +178,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
// Proof: `ParachainSystem::PendingUpwardMessages` (`max_values`: Some(1), `max_size`: None, mode: `Measured`)
|
||||||
pub fn initiate_teleport() -> Weight {
|
pub fn initiate_teleport() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `109`
|
// Measured: `145`
|
||||||
// Estimated: `3574`
|
// Estimated: `3610`
|
||||||
// Minimum execution time: 33_044_000 picoseconds.
|
// Minimum execution time: 31_972_000 picoseconds.
|
||||||
Weight::from_parts(33_849_000, 3574)
|
Weight::from_parts(32_834_000, 3610)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,16 +61,8 @@ impl<Call> XcmWeightInfo<Call> for AssetHubPolkadotXcmWeight<Call> {
|
|||||||
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
// Currently there is no trusted reserve (`IsReserve = ()`),
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// but we need this hack for `pallet_xcm::reserve_transfer_assets`
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7424
|
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7546
|
|
||||||
fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight {
|
|
||||||
// TODO: if we change `IsReserve = ...` then use this line...
|
|
||||||
// TODO: or if remote weight estimation is fixed, then remove
|
|
||||||
// TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974
|
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
hardcoded_weight.min(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
||||||
@@ -127,10 +119,7 @@ impl<Call> XcmWeightInfo<Call> for AssetHubPolkadotXcmWeight<Call> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset())
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn deposit_reserve_asset(
|
fn deposit_reserve_asset(
|
||||||
assets: &MultiAssetFilter,
|
assets: &MultiAssetFilter,
|
||||||
|
|||||||
+31
-33
@@ -17,28 +17,26 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-27, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("asset-hub-polkadot-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("asset-hub-polkadot-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// ./target/production/polkadot-parachain
|
// target/production/polkadot-parachain
|
||||||
// benchmark
|
// benchmark
|
||||||
// pallet
|
// pallet
|
||||||
// --template=./templates/xcm-bench-template.hbs
|
|
||||||
// --chain=asset-hub-polkadot-dev
|
|
||||||
// --wasm-execution=compiled
|
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
|
||||||
// --no-storage-info
|
|
||||||
// --no-median-slopes
|
|
||||||
// --no-min-squares
|
|
||||||
// --extrinsic=*
|
|
||||||
// --steps=50
|
// --steps=50
|
||||||
// --repeat=20
|
// --repeat=20
|
||||||
// --json
|
// --extrinsic=*
|
||||||
// --header=./file_header.txt
|
// --wasm-execution=compiled
|
||||||
// --output=./parachains/runtimes/assets/asset-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
// --heap-pages=4096
|
||||||
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
|
// --chain=asset-hub-polkadot-dev
|
||||||
|
// --header=./cumulus/file_header.txt
|
||||||
|
// --template=./cumulus/templates/xcm-bench-template.hbs
|
||||||
|
// --output=./cumulus/parachains/runtimes/assets/asset-hub-polkadot/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -56,8 +54,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 26_090_000 picoseconds.
|
// Minimum execution time: 25_903_000 picoseconds.
|
||||||
Weight::from_parts(27_006_000, 3593)
|
Weight::from_parts(26_768_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -67,8 +65,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 50_699_000 picoseconds.
|
// Minimum execution time: 51_042_000 picoseconds.
|
||||||
Weight::from_parts(51_888_000, 6196)
|
Weight::from_parts(51_939_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -90,8 +88,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `176`
|
// Measured: `176`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 72_130_000 picoseconds.
|
// Minimum execution time: 74_626_000 picoseconds.
|
||||||
Weight::from_parts(73_994_000, 6196)
|
Weight::from_parts(75_963_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(8))
|
.saturating_add(T::DbWeight::get().reads(8))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -101,8 +99,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 500_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(500_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
||||||
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||||
@@ -120,8 +118,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `75`
|
// Measured: `75`
|
||||||
// Estimated: `3540`
|
// Estimated: `3540`
|
||||||
// Minimum execution time: 477_183_000 picoseconds.
|
// Minimum execution time: 480_030_000 picoseconds.
|
||||||
Weight::from_parts(488_156_000, 3540)
|
Weight::from_parts(486_039_000, 3540)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -129,8 +127,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 3_966_000 picoseconds.
|
// Minimum execution time: 3_936_000 picoseconds.
|
||||||
Weight::from_parts(4_129_000, 0)
|
Weight::from_parts(4_033_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `System::Account` (r:1 w:1)
|
// Storage: `System::Account` (r:1 w:1)
|
||||||
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
||||||
@@ -138,8 +136,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 26_047_000 picoseconds.
|
// Minimum execution time: 26_274_000 picoseconds.
|
||||||
Weight::from_parts(26_982_000, 3593)
|
Weight::from_parts(26_609_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -161,8 +159,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `75`
|
// Measured: `75`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 51_076_000 picoseconds.
|
// Minimum execution time: 52_888_000 picoseconds.
|
||||||
Weight::from_parts(51_826_000, 3593)
|
Weight::from_parts(53_835_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(7))
|
.saturating_add(T::DbWeight::get().reads(7))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -182,8 +180,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `75`
|
// Measured: `75`
|
||||||
// Estimated: `3540`
|
// Estimated: `3540`
|
||||||
// Minimum execution time: 30_606_000 picoseconds.
|
// Minimum execution time: 33_395_000 picoseconds.
|
||||||
Weight::from_parts(31_168_000, 3540)
|
Weight::from_parts(33_827_000, 3540)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,16 +61,8 @@ impl<Call> XcmWeightInfo<Call> for AssetHubWestendXcmWeight<Call> {
|
|||||||
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
// Currently there is no trusted reserve (`IsReserve = ()`),
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// but we need this hack for `pallet_xcm::reserve_transfer_assets`
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7424
|
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7546
|
|
||||||
fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight {
|
|
||||||
// TODO: if we change `IsReserve = ...` then use this line...
|
|
||||||
// TODO: or if remote weight estimation is fixed, then remove
|
|
||||||
// TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974
|
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
hardcoded_weight.min(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
||||||
@@ -127,10 +119,7 @@ impl<Call> XcmWeightInfo<Call> for AssetHubWestendXcmWeight<Call> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset())
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn deposit_reserve_asset(
|
fn deposit_reserve_asset(
|
||||||
assets: &MultiAssetFilter,
|
assets: &MultiAssetFilter,
|
||||||
|
|||||||
+31
-33
@@ -17,28 +17,26 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("asset-hub-westend-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("asset-hub-westend-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// ./target/production/polkadot-parachain
|
// target/production/polkadot-parachain
|
||||||
// benchmark
|
// benchmark
|
||||||
// pallet
|
// pallet
|
||||||
// --template=./templates/xcm-bench-template.hbs
|
|
||||||
// --chain=asset-hub-westend-dev
|
|
||||||
// --wasm-execution=compiled
|
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
|
||||||
// --no-storage-info
|
|
||||||
// --no-median-slopes
|
|
||||||
// --no-min-squares
|
|
||||||
// --extrinsic=*
|
|
||||||
// --steps=50
|
// --steps=50
|
||||||
// --repeat=20
|
// --repeat=20
|
||||||
// --json
|
// --extrinsic=*
|
||||||
// --header=./file_header.txt
|
// --wasm-execution=compiled
|
||||||
// --output=./parachains/runtimes/assets/asset-hub-westend/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
// --heap-pages=4096
|
||||||
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
|
// --chain=asset-hub-westend-dev
|
||||||
|
// --header=./cumulus/file_header.txt
|
||||||
|
// --template=./cumulus/templates/xcm-bench-template.hbs
|
||||||
|
// --output=./cumulus/parachains/runtimes/assets/asset-hub-westend/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -56,8 +54,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 25_411_000 picoseconds.
|
// Minimum execution time: 25_407_000 picoseconds.
|
||||||
Weight::from_parts(25_663_000, 3593)
|
Weight::from_parts(25_949_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -67,8 +65,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 49_478_000 picoseconds.
|
// Minimum execution time: 51_335_000 picoseconds.
|
||||||
Weight::from_parts(50_417_000, 6196)
|
Weight::from_parts(52_090_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -90,8 +88,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `246`
|
// Measured: `246`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 72_958_000 picoseconds.
|
// Minimum execution time: 74_312_000 picoseconds.
|
||||||
Weight::from_parts(74_503_000, 6196)
|
Weight::from_parts(76_725_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(8))
|
.saturating_add(T::DbWeight::get().reads(8))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -101,8 +99,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 500_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(500_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
||||||
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||||
@@ -120,8 +118,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `145`
|
// Measured: `145`
|
||||||
// Estimated: `3610`
|
// Estimated: `3610`
|
||||||
// Minimum execution time: 456_993_000 picoseconds.
|
// Minimum execution time: 446_848_000 picoseconds.
|
||||||
Weight::from_parts(469_393_000, 3610)
|
Weight::from_parts(466_251_000, 3610)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -129,8 +127,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 3_580_000 picoseconds.
|
// Minimum execution time: 3_602_000 picoseconds.
|
||||||
Weight::from_parts(3_717_000, 0)
|
Weight::from_parts(3_844_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `System::Account` (r:1 w:1)
|
// Storage: `System::Account` (r:1 w:1)
|
||||||
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
||||||
@@ -138,8 +136,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 25_087_000 picoseconds.
|
// Minimum execution time: 25_480_000 picoseconds.
|
||||||
Weight::from_parts(25_788_000, 3593)
|
Weight::from_parts(26_142_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -161,8 +159,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `145`
|
// Measured: `145`
|
||||||
// Estimated: `3610`
|
// Estimated: `3610`
|
||||||
// Minimum execution time: 50_824_000 picoseconds.
|
// Minimum execution time: 51_540_000 picoseconds.
|
||||||
Weight::from_parts(52_309_000, 3610)
|
Weight::from_parts(53_744_000, 3610)
|
||||||
.saturating_add(T::DbWeight::get().reads(7))
|
.saturating_add(T::DbWeight::get().reads(7))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -182,8 +180,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `145`
|
// Measured: `145`
|
||||||
// Estimated: `3610`
|
// Estimated: `3610`
|
||||||
// Minimum execution time: 31_854_000 picoseconds.
|
// Minimum execution time: 32_279_000 picoseconds.
|
||||||
Weight::from_parts(32_553_000, 3610)
|
Weight::from_parts(33_176_000, 3610)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,16 +61,8 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubKusamaXcmWeight<Call> {
|
|||||||
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
// Currently there is no trusted reserve (`IsReserve = ()`),
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// but we need this hack for `pallet_xcm::reserve_transfer_assets`
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7424
|
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7546
|
|
||||||
fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight {
|
|
||||||
// TODO: if we change `IsReserve = ...` then use this line...
|
|
||||||
// TODO: or if remote weight estimation is fixed, then remove
|
|
||||||
// TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974
|
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
hardcoded_weight.min(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
||||||
@@ -127,10 +119,7 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubKusamaXcmWeight<Call> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset())
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn deposit_reserve_asset(
|
fn deposit_reserve_asset(
|
||||||
assets: &MultiAssetFilter,
|
assets: &MultiAssetFilter,
|
||||||
|
|||||||
+31
-33
@@ -17,28 +17,26 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-kusama-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// ./target/production/polkadot-parachain
|
// target/production/polkadot-parachain
|
||||||
// benchmark
|
// benchmark
|
||||||
// pallet
|
// pallet
|
||||||
// --template=./templates/xcm-bench-template.hbs
|
|
||||||
// --chain=bridge-hub-kusama-dev
|
|
||||||
// --wasm-execution=compiled
|
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
|
||||||
// --no-storage-info
|
|
||||||
// --no-median-slopes
|
|
||||||
// --no-min-squares
|
|
||||||
// --extrinsic=*
|
|
||||||
// --steps=50
|
// --steps=50
|
||||||
// --repeat=20
|
// --repeat=20
|
||||||
// --json
|
// --extrinsic=*
|
||||||
// --header=./file_header.txt
|
// --wasm-execution=compiled
|
||||||
// --output=./parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
// --heap-pages=4096
|
||||||
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
|
// --chain=bridge-hub-kusama-dev
|
||||||
|
// --header=./cumulus/file_header.txt
|
||||||
|
// --template=./cumulus/templates/xcm-bench-template.hbs
|
||||||
|
// --output=./cumulus/parachains/runtimes/bridge-hubs/bridge-hub-kusama/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -56,8 +54,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 24_064_000 picoseconds.
|
// Minimum execution time: 25_447_000 picoseconds.
|
||||||
Weight::from_parts(24_751_000, 3593)
|
Weight::from_parts(25_810_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -67,8 +65,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `153`
|
// Measured: `153`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 51_097_000 picoseconds.
|
// Minimum execution time: 53_908_000 picoseconds.
|
||||||
Weight::from_parts(51_960_000, 6196)
|
Weight::from_parts(54_568_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -90,8 +88,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `223`
|
// Measured: `223`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 75_319_000 picoseconds.
|
// Minimum execution time: 79_923_000 picoseconds.
|
||||||
Weight::from_parts(77_356_000, 6196)
|
Weight::from_parts(80_790_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(8))
|
.saturating_add(T::DbWeight::get().reads(8))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -101,8 +99,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 500_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(500_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
||||||
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||||
@@ -120,8 +118,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `70`
|
// Measured: `70`
|
||||||
// Estimated: `3535`
|
// Estimated: `3535`
|
||||||
// Minimum execution time: 29_392_000 picoseconds.
|
// Minimum execution time: 31_923_000 picoseconds.
|
||||||
Weight::from_parts(29_943_000, 3535)
|
Weight::from_parts(32_499_000, 3535)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -129,8 +127,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 3_637_000 picoseconds.
|
// Minimum execution time: 3_903_000 picoseconds.
|
||||||
Weight::from_parts(3_720_000, 0)
|
Weight::from_parts(4_065_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `System::Account` (r:1 w:1)
|
// Storage: `System::Account` (r:1 w:1)
|
||||||
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
||||||
@@ -138,8 +136,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `52`
|
// Measured: `52`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 25_045_000 picoseconds.
|
// Minimum execution time: 26_987_000 picoseconds.
|
||||||
Weight::from_parts(25_546_000, 3593)
|
Weight::from_parts(27_486_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -161,8 +159,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `122`
|
// Measured: `122`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 51_450_000 picoseconds.
|
// Minimum execution time: 56_012_000 picoseconds.
|
||||||
Weight::from_parts(52_354_000, 3593)
|
Weight::from_parts(58_067_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(7))
|
.saturating_add(T::DbWeight::get().reads(7))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -182,8 +180,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `70`
|
// Measured: `70`
|
||||||
// Estimated: `3535`
|
// Estimated: `3535`
|
||||||
// Minimum execution time: 29_711_000 picoseconds.
|
// Minimum execution time: 32_350_000 picoseconds.
|
||||||
Weight::from_parts(30_759_000, 3535)
|
Weight::from_parts(33_403_000, 3535)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -61,16 +61,8 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubPolkadotXcmWeight<Call> {
|
|||||||
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
// Currently there is no trusted reserve (`IsReserve = ()`),
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// but we need this hack for `pallet_xcm::reserve_transfer_assets`
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7424
|
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7546
|
|
||||||
fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight {
|
|
||||||
// TODO: if we change `IsReserve = ...` then use this line...
|
|
||||||
// TODO: or if remote weight estimation is fixed, then remove
|
|
||||||
// TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974
|
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
hardcoded_weight.min(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
||||||
@@ -127,10 +119,7 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubPolkadotXcmWeight<Call> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset())
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn deposit_reserve_asset(
|
fn deposit_reserve_asset(
|
||||||
assets: &MultiAssetFilter,
|
assets: &MultiAssetFilter,
|
||||||
@@ -154,10 +143,7 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubPolkadotXcmWeight<Call> {
|
|||||||
_dest: &MultiLocation,
|
_dest: &MultiLocation,
|
||||||
_xcm: &Xcm<()>,
|
_xcm: &Xcm<()>,
|
||||||
) -> Weight {
|
) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::initiate_teleport())
|
||||||
let hardcoded_weight = Weight::from_parts(200_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::initiate_teleport());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight {
|
fn report_holding(_response_info: &QueryResponseInfo, _assets: &MultiAssetFilter) -> Weight {
|
||||||
XcmGeneric::<Runtime>::report_holding()
|
XcmGeneric::<Runtime>::report_holding()
|
||||||
|
|||||||
+31
-33
@@ -17,28 +17,26 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-polkadot-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// ./target/production/polkadot-parachain
|
// target/production/polkadot-parachain
|
||||||
// benchmark
|
// benchmark
|
||||||
// pallet
|
// pallet
|
||||||
// --template=./templates/xcm-bench-template.hbs
|
|
||||||
// --chain=bridge-hub-polkadot-dev
|
|
||||||
// --wasm-execution=compiled
|
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
|
||||||
// --no-storage-info
|
|
||||||
// --no-median-slopes
|
|
||||||
// --no-min-squares
|
|
||||||
// --extrinsic=*
|
|
||||||
// --steps=50
|
// --steps=50
|
||||||
// --repeat=20
|
// --repeat=20
|
||||||
// --json
|
// --extrinsic=*
|
||||||
// --header=./file_header.txt
|
// --wasm-execution=compiled
|
||||||
// --output=./parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
// --heap-pages=4096
|
||||||
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
|
// --chain=bridge-hub-polkadot-dev
|
||||||
|
// --header=./cumulus/file_header.txt
|
||||||
|
// --template=./cumulus/templates/xcm-bench-template.hbs
|
||||||
|
// --output=./cumulus/parachains/runtimes/bridge-hubs/bridge-hub-polkadot/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -56,8 +54,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 23_862_000 picoseconds.
|
// Minimum execution time: 24_237_000 picoseconds.
|
||||||
Weight::from_parts(24_603_000, 3593)
|
Weight::from_parts(24_697_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -67,8 +65,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `153`
|
// Measured: `153`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 51_101_000 picoseconds.
|
// Minimum execution time: 52_269_000 picoseconds.
|
||||||
Weight::from_parts(51_976_000, 6196)
|
Weight::from_parts(53_848_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -90,8 +88,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `223`
|
// Measured: `223`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 72_983_000 picoseconds.
|
// Minimum execution time: 77_611_000 picoseconds.
|
||||||
Weight::from_parts(74_099_000, 6196)
|
Weight::from_parts(82_634_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(8))
|
.saturating_add(T::DbWeight::get().reads(8))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -101,8 +99,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 500_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(500_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
||||||
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||||
@@ -120,8 +118,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `70`
|
// Measured: `70`
|
||||||
// Estimated: `3535`
|
// Estimated: `3535`
|
||||||
// Minimum execution time: 27_131_000 picoseconds.
|
// Minimum execution time: 29_506_000 picoseconds.
|
||||||
Weight::from_parts(28_062_000, 3535)
|
Weight::from_parts(30_269_000, 3535)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -129,8 +127,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 3_564_000 picoseconds.
|
// Minimum execution time: 3_541_000 picoseconds.
|
||||||
Weight::from_parts(3_738_000, 0)
|
Weight::from_parts(3_629_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `System::Account` (r:1 w:1)
|
// Storage: `System::Account` (r:1 w:1)
|
||||||
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
||||||
@@ -138,8 +136,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `52`
|
// Measured: `52`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 24_453_000 picoseconds.
|
// Minimum execution time: 25_651_000 picoseconds.
|
||||||
Weight::from_parts(25_216_000, 3593)
|
Weight::from_parts(26_078_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -161,8 +159,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `122`
|
// Measured: `122`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 48_913_000 picoseconds.
|
// Minimum execution time: 52_050_000 picoseconds.
|
||||||
Weight::from_parts(50_202_000, 3593)
|
Weight::from_parts(53_293_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(7))
|
.saturating_add(T::DbWeight::get().reads(7))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -182,8 +180,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `70`
|
// Measured: `70`
|
||||||
// Estimated: `3535`
|
// Estimated: `3535`
|
||||||
// Minimum execution time: 27_592_000 picoseconds.
|
// Minimum execution time: 30_009_000 picoseconds.
|
||||||
Weight::from_parts(28_099_000, 3535)
|
Weight::from_parts(30_540_000, 3535)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -62,16 +62,8 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubRococoXcmWeight<Call> {
|
|||||||
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
fn withdraw_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
// Currently there is no trusted reserve (`IsReserve = ()`),
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// but we need this hack for `pallet_xcm::reserve_transfer_assets`
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7424
|
|
||||||
// (TODO) fix https://github.com/paritytech/polkadot/pull/7546
|
|
||||||
fn reserve_asset_deposited(_assets: &MultiAssets) -> Weight {
|
|
||||||
// TODO: if we change `IsReserve = ...` then use this line...
|
|
||||||
// TODO: or if remote weight estimation is fixed, then remove
|
|
||||||
// TODO: hardcoded - fix https://github.com/paritytech/cumulus/issues/1974
|
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
hardcoded_weight.min(XcmFungibleWeight::<Runtime>::reserve_asset_deposited())
|
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::receive_teleported_asset())
|
||||||
@@ -128,10 +120,7 @@ impl<Call> XcmWeightInfo<Call> for BridgeHubRococoXcmWeight<Call> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
fn deposit_asset(assets: &MultiAssetFilter, _dest: &MultiLocation) -> Weight {
|
||||||
// Hardcoded till the XCM pallet is fixed
|
assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset())
|
||||||
let hardcoded_weight = Weight::from_parts(1_000_000_000_u64, 0);
|
|
||||||
let weight = assets.weigh_multi_assets(XcmFungibleWeight::<Runtime>::deposit_asset());
|
|
||||||
hardcoded_weight.min(weight)
|
|
||||||
}
|
}
|
||||||
fn deposit_reserve_asset(
|
fn deposit_reserve_asset(
|
||||||
assets: &MultiAssetFilter,
|
assets: &MultiAssetFilter,
|
||||||
|
|||||||
+31
-33
@@ -17,28 +17,26 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-31, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-ynta1nyy-project-238-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("bridge-hub-rococo-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// ./target/production/polkadot-parachain
|
// target/production/polkadot-parachain
|
||||||
// benchmark
|
// benchmark
|
||||||
// pallet
|
// pallet
|
||||||
// --template=./templates/xcm-bench-template.hbs
|
|
||||||
// --chain=bridge-hub-rococo-dev
|
|
||||||
// --wasm-execution=compiled
|
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
|
||||||
// --no-storage-info
|
|
||||||
// --no-median-slopes
|
|
||||||
// --no-min-squares
|
|
||||||
// --extrinsic=*
|
|
||||||
// --steps=50
|
// --steps=50
|
||||||
// --repeat=20
|
// --repeat=20
|
||||||
// --json
|
// --extrinsic=*
|
||||||
// --header=./file_header.txt
|
// --wasm-execution=compiled
|
||||||
// --output=./parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/pallet_xcm_benchmarks_fungible.rs
|
// --heap-pages=4096
|
||||||
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
|
// --chain=bridge-hub-rococo-dev
|
||||||
|
// --header=./cumulus/file_header.txt
|
||||||
|
// --template=./cumulus/templates/xcm-bench-template.hbs
|
||||||
|
// --output=./cumulus/parachains/runtimes/bridge-hubs/bridge-hub-rococo/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -56,8 +54,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 24_521_000 picoseconds.
|
// Minimum execution time: 23_601_000 picoseconds.
|
||||||
Weight::from_parts(25_005_000, 3593)
|
Weight::from_parts(24_226_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -67,8 +65,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `153`
|
// Measured: `153`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 52_274_000 picoseconds.
|
// Minimum execution time: 51_043_000 picoseconds.
|
||||||
Weight::from_parts(53_374_000, 6196)
|
Weight::from_parts(52_326_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -90,8 +88,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `260`
|
// Measured: `260`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 77_625_000 picoseconds.
|
// Minimum execution time: 75_639_000 picoseconds.
|
||||||
Weight::from_parts(78_530_000, 6196)
|
Weight::from_parts(76_736_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(8))
|
.saturating_add(T::DbWeight::get().reads(8))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -101,8 +99,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 500_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(500_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
// Storage: `ParachainInfo::ParachainId` (r:1 w:0)
|
||||||
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
// Proof: `ParachainInfo::ParachainId` (`max_values`: Some(1), `max_size`: Some(4), added: 499, mode: `MaxEncodedLen`)
|
||||||
@@ -120,8 +118,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `107`
|
// Measured: `107`
|
||||||
// Estimated: `3572`
|
// Estimated: `3572`
|
||||||
// Minimum execution time: 32_804_000 picoseconds.
|
// Minimum execution time: 31_190_000 picoseconds.
|
||||||
Weight::from_parts(33_462_000, 3572)
|
Weight::from_parts(32_150_000, 3572)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -129,8 +127,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 3_921_000 picoseconds.
|
// Minimum execution time: 3_603_000 picoseconds.
|
||||||
Weight::from_parts(4_050_000, 0)
|
Weight::from_parts(3_721_000, 0)
|
||||||
}
|
}
|
||||||
// Storage: `System::Account` (r:1 w:1)
|
// Storage: `System::Account` (r:1 w:1)
|
||||||
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
// Proof: `System::Account` (`max_values`: None, `max_size`: Some(128), added: 2603, mode: `MaxEncodedLen`)
|
||||||
@@ -138,8 +136,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `52`
|
// Measured: `52`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 25_436_000 picoseconds.
|
// Minimum execution time: 24_265_000 picoseconds.
|
||||||
Weight::from_parts(25_789_000, 3593)
|
Weight::from_parts(25_004_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -161,8 +159,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `159`
|
// Measured: `159`
|
||||||
// Estimated: `3624`
|
// Estimated: `3624`
|
||||||
// Minimum execution time: 53_846_000 picoseconds.
|
// Minimum execution time: 51_882_000 picoseconds.
|
||||||
Weight::from_parts(54_684_000, 3624)
|
Weight::from_parts(53_228_000, 3624)
|
||||||
.saturating_add(T::DbWeight::get().reads(7))
|
.saturating_add(T::DbWeight::get().reads(7))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -182,8 +180,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `107`
|
// Measured: `107`
|
||||||
// Estimated: `3572`
|
// Estimated: `3572`
|
||||||
// Minimum execution time: 33_052_000 picoseconds.
|
// Minimum execution time: 32_195_000 picoseconds.
|
||||||
Weight::from_parts(33_897_000, 3572)
|
Weight::from_parts(33_206_000, 3572)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -91,7 +91,6 @@ impl<RuntimeCall> XcmWeightInfo<RuntimeCall> for RococoXcmWeight<RuntimeCall> {
|
|||||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// Rococo doesn't support ReserveAssetDeposited, so this benchmark has a default weight
|
|
||||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::reserve_asset_deposited())
|
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::reserve_asset_deposited())
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
|
|||||||
@@ -17,10 +17,10 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-17, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-gghbxkbs-project-163-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("rococo-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// target/production/polkadot
|
// target/production/polkadot
|
||||||
@@ -31,12 +31,12 @@
|
|||||||
// --extrinsic=*
|
// --extrinsic=*
|
||||||
// --wasm-execution=compiled
|
// --wasm-execution=compiled
|
||||||
// --heap-pages=4096
|
// --heap-pages=4096
|
||||||
// --json-file=/builds/parity/mirrors/polkadot/.git/.artifacts/bench.json
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
// --chain=rococo-dev
|
// --chain=rococo-dev
|
||||||
// --header=./file_header.txt
|
// --header=./polkadot/file_header.txt
|
||||||
// --template=./xcm/pallet-xcm-benchmarks/template.hbs
|
// --template=./polkadot/xcm/pallet-xcm-benchmarks/template.hbs
|
||||||
// --output=./runtime/rococo/src/weights/xcm/
|
// --output=./polkadot/runtime/rococo/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -55,8 +55,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 24_892_000 picoseconds.
|
// Minimum execution time: 23_189_000 picoseconds.
|
||||||
Weight::from_parts(25_219_000, 3593)
|
Weight::from_parts(23_896_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -66,8 +66,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 52_112_000 picoseconds.
|
// Minimum execution time: 50_299_000 picoseconds.
|
||||||
Weight::from_parts(53_104_000, 6196)
|
Weight::from_parts(50_962_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -83,10 +83,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn transfer_reserve_asset() -> Weight {
|
pub(crate) fn transfer_reserve_asset() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `210`
|
// Measured: `243`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 76_459_000 picoseconds.
|
// Minimum execution time: 71_748_000 picoseconds.
|
||||||
Weight::from_parts(79_152_000, 6196)
|
Weight::from_parts(74_072_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -96,8 +96,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 2_000_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(2_000_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
/// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0)
|
/// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0)
|
||||||
/// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
@@ -109,10 +109,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn initiate_reserve_withdraw() -> Weight {
|
pub(crate) fn initiate_reserve_withdraw() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `109`
|
// Measured: `142`
|
||||||
// Estimated: `3574`
|
// Estimated: `3607`
|
||||||
// Minimum execution time: 29_734_000 picoseconds.
|
// Minimum execution time: 27_806_000 picoseconds.
|
||||||
Weight::from_parts(30_651_000, 3574)
|
Weight::from_parts(28_594_000, 3607)
|
||||||
.saturating_add(T::DbWeight::get().reads(4))
|
.saturating_add(T::DbWeight::get().reads(4))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -122,8 +122,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `103`
|
// Measured: `103`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 23_028_000 picoseconds.
|
// Minimum execution time: 21_199_000 picoseconds.
|
||||||
Weight::from_parts(23_687_000, 3593)
|
Weight::from_parts(21_857_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -133,8 +133,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 26_399_000 picoseconds.
|
// Minimum execution time: 23_578_000 picoseconds.
|
||||||
Weight::from_parts(27_262_000, 3593)
|
Weight::from_parts(24_060_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -150,10 +150,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn deposit_reserve_asset() -> Weight {
|
pub(crate) fn deposit_reserve_asset() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `109`
|
// Measured: `142`
|
||||||
// Estimated: `3593`
|
// Estimated: `3607`
|
||||||
// Minimum execution time: 52_015_000 picoseconds.
|
// Minimum execution time: 48_522_000 picoseconds.
|
||||||
Weight::from_parts(53_498_000, 3593)
|
Weight::from_parts(49_640_000, 3607)
|
||||||
.saturating_add(T::DbWeight::get().reads(5))
|
.saturating_add(T::DbWeight::get().reads(5))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -169,10 +169,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn initiate_teleport() -> Weight {
|
pub(crate) fn initiate_teleport() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `109`
|
// Measured: `142`
|
||||||
// Estimated: `3593`
|
// Estimated: `3607`
|
||||||
// Minimum execution time: 53_833_000 picoseconds.
|
// Minimum execution time: 50_429_000 picoseconds.
|
||||||
Weight::from_parts(55_688_000, 3593)
|
Weight::from_parts(51_295_000, 3607)
|
||||||
.saturating_add(T::DbWeight::get().reads(5))
|
.saturating_add(T::DbWeight::get().reads(5))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -94,7 +94,6 @@ impl<RuntimeCall> XcmWeightInfo<RuntimeCall> for WestendXcmWeight<RuntimeCall> {
|
|||||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::withdraw_asset())
|
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::withdraw_asset())
|
||||||
}
|
}
|
||||||
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
fn reserve_asset_deposited(assets: &MultiAssets) -> Weight {
|
||||||
// Westend doesn't support ReserveAssetDeposited, so this benchmark has a default weight
|
|
||||||
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::reserve_asset_deposited())
|
assets.weigh_multi_assets(XcmBalancesWeight::<Runtime>::reserve_asset_deposited())
|
||||||
}
|
}
|
||||||
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
fn receive_teleported_asset(assets: &MultiAssets) -> Weight {
|
||||||
|
|||||||
@@ -17,10 +17,10 @@
|
|||||||
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
//! Autogenerated weights for `pallet_xcm_benchmarks::fungible`
|
||||||
//!
|
//!
|
||||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 4.0.0-dev
|
||||||
//! DATE: 2023-07-17, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
//! DATE: 2023-09-28, STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]`
|
||||||
//! WORST CASE MAP SIZE: `1000000`
|
//! WORST CASE MAP SIZE: `1000000`
|
||||||
//! HOSTNAME: `runner-gghbxkbs-project-163-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
//! HOSTNAME: `runner-nbnwcyh-project-674-concurrent-0`, CPU: `Intel(R) Xeon(R) CPU @ 2.60GHz`
|
||||||
//! EXECUTION: , WASM-EXECUTION: Compiled, CHAIN: Some("westend-dev"), DB CACHE: 1024
|
//! WASM-EXECUTION: Compiled, CHAIN: Some("westend-dev"), DB CACHE: 1024
|
||||||
|
|
||||||
// Executed Command:
|
// Executed Command:
|
||||||
// target/production/polkadot
|
// target/production/polkadot
|
||||||
@@ -31,12 +31,12 @@
|
|||||||
// --extrinsic=*
|
// --extrinsic=*
|
||||||
// --wasm-execution=compiled
|
// --wasm-execution=compiled
|
||||||
// --heap-pages=4096
|
// --heap-pages=4096
|
||||||
// --json-file=/builds/parity/mirrors/polkadot/.git/.artifacts/bench.json
|
// --json-file=/builds/parity/mirrors/polkadot-sdk/.git/.artifacts/bench.json
|
||||||
// --pallet=pallet_xcm_benchmarks::fungible
|
// --pallet=pallet_xcm_benchmarks::fungible
|
||||||
// --chain=westend-dev
|
// --chain=westend-dev
|
||||||
// --header=./file_header.txt
|
// --header=./polkadot/file_header.txt
|
||||||
// --template=./xcm/pallet-xcm-benchmarks/template.hbs
|
// --template=./polkadot/xcm/pallet-xcm-benchmarks/template.hbs
|
||||||
// --output=./runtime/westend/src/weights/xcm/
|
// --output=./polkadot/runtime/westend/src/weights/xcm/
|
||||||
|
|
||||||
#![cfg_attr(rustfmt, rustfmt_skip)]
|
#![cfg_attr(rustfmt, rustfmt_skip)]
|
||||||
#![allow(unused_parens)]
|
#![allow(unused_parens)]
|
||||||
@@ -55,8 +55,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 24_887_000 picoseconds.
|
// Minimum execution time: 24_642_000 picoseconds.
|
||||||
Weight::from_parts(25_361_000, 3593)
|
Weight::from_parts(24_973_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -66,8 +66,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `101`
|
// Measured: `101`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 52_408_000 picoseconds.
|
// Minimum execution time: 50_882_000 picoseconds.
|
||||||
Weight::from_parts(53_387_000, 6196)
|
Weight::from_parts(51_516_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(2))
|
.saturating_add(T::DbWeight::get().reads(2))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -83,10 +83,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn transfer_reserve_asset() -> Weight {
|
pub(crate) fn transfer_reserve_asset() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `177`
|
// Measured: `210`
|
||||||
// Estimated: `6196`
|
// Estimated: `6196`
|
||||||
// Minimum execution time: 74_753_000 picoseconds.
|
// Minimum execution time: 73_923_000 picoseconds.
|
||||||
Weight::from_parts(76_838_000, 6196)
|
Weight::from_parts(75_454_000, 6196)
|
||||||
.saturating_add(T::DbWeight::get().reads(6))
|
.saturating_add(T::DbWeight::get().reads(6))
|
||||||
.saturating_add(T::DbWeight::get().writes(4))
|
.saturating_add(T::DbWeight::get().writes(4))
|
||||||
}
|
}
|
||||||
@@ -96,8 +96,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `0`
|
// Estimated: `0`
|
||||||
// Minimum execution time: 2_000_000_000_000 picoseconds.
|
// Minimum execution time: 18_446_744_073_709_551_000 picoseconds.
|
||||||
Weight::from_parts(2_000_000_000_000, 0)
|
Weight::from_parts(18_446_744_073_709_551_000, 0)
|
||||||
}
|
}
|
||||||
/// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0)
|
/// Storage: `Dmp::DeliveryFeeFactor` (r:1 w:0)
|
||||||
/// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DeliveryFeeFactor` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
@@ -109,10 +109,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn initiate_reserve_withdraw() -> Weight {
|
pub(crate) fn initiate_reserve_withdraw() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `76`
|
// Measured: `109`
|
||||||
// Estimated: `3541`
|
// Estimated: `3574`
|
||||||
// Minimum execution time: 29_272_000 picoseconds.
|
// Minimum execution time: 29_035_000 picoseconds.
|
||||||
Weight::from_parts(30_061_000, 3541)
|
Weight::from_parts(30_086_000, 3574)
|
||||||
.saturating_add(T::DbWeight::get().reads(4))
|
.saturating_add(T::DbWeight::get().reads(4))
|
||||||
.saturating_add(T::DbWeight::get().writes(2))
|
.saturating_add(T::DbWeight::get().writes(2))
|
||||||
}
|
}
|
||||||
@@ -122,8 +122,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `103`
|
// Measured: `103`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 23_112_000 picoseconds.
|
// Minimum execution time: 22_094_000 picoseconds.
|
||||||
Weight::from_parts(23_705_000, 3593)
|
Weight::from_parts(22_560_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -133,8 +133,8 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `0`
|
// Measured: `0`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 26_077_000 picoseconds.
|
// Minimum execution time: 24_771_000 picoseconds.
|
||||||
Weight::from_parts(26_486_000, 3593)
|
Weight::from_parts(25_280_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(1))
|
.saturating_add(T::DbWeight::get().reads(1))
|
||||||
.saturating_add(T::DbWeight::get().writes(1))
|
.saturating_add(T::DbWeight::get().writes(1))
|
||||||
}
|
}
|
||||||
@@ -150,10 +150,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn deposit_reserve_asset() -> Weight {
|
pub(crate) fn deposit_reserve_asset() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `76`
|
// Measured: `109`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 51_022_000 picoseconds.
|
// Minimum execution time: 49_777_000 picoseconds.
|
||||||
Weight::from_parts(52_498_000, 3593)
|
Weight::from_parts(50_833_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(5))
|
.saturating_add(T::DbWeight::get().reads(5))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
@@ -169,10 +169,10 @@ impl<T: frame_system::Config> WeightInfo<T> {
|
|||||||
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
/// Proof: `Dmp::DownwardMessageQueueHeads` (`max_values`: None, `max_size`: None, mode: `Measured`)
|
||||||
pub(crate) fn initiate_teleport() -> Weight {
|
pub(crate) fn initiate_teleport() -> Weight {
|
||||||
// Proof Size summary in bytes:
|
// Proof Size summary in bytes:
|
||||||
// Measured: `76`
|
// Measured: `109`
|
||||||
// Estimated: `3593`
|
// Estimated: `3593`
|
||||||
// Minimum execution time: 53_062_000 picoseconds.
|
// Minimum execution time: 51_425_000 picoseconds.
|
||||||
Weight::from_parts(54_300_000, 3593)
|
Weight::from_parts(52_213_000, 3593)
|
||||||
.saturating_add(T::DbWeight::get().reads(5))
|
.saturating_add(T::DbWeight::get().reads(5))
|
||||||
.saturating_add(T::DbWeight::get().writes(3))
|
.saturating_add(T::DbWeight::get().writes(3))
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -20,6 +20,7 @@ use frame_benchmarking::{benchmarks_instance_pallet, BenchmarkError, BenchmarkRe
|
|||||||
use frame_support::{
|
use frame_support::{
|
||||||
pallet_prelude::Get,
|
pallet_prelude::Get,
|
||||||
traits::fungible::{Inspect, Mutate},
|
traits::fungible::{Inspect, Mutate},
|
||||||
|
weights::Weight,
|
||||||
};
|
};
|
||||||
use sp_runtime::traits::{Bounded, Zero};
|
use sp_runtime::traits::{Bounded, Zero};
|
||||||
use sp_std::{prelude::*, vec};
|
use sp_std::{prelude::*, vec};
|
||||||
@@ -134,7 +135,7 @@ benchmarks_instance_pallet! {
|
|||||||
reserve_asset_deposited {
|
reserve_asset_deposited {
|
||||||
let (trusted_reserve, transferable_reserve_asset) = T::TrustedReserve::get()
|
let (trusted_reserve, transferable_reserve_asset) = T::TrustedReserve::get()
|
||||||
.ok_or(BenchmarkError::Override(
|
.ok_or(BenchmarkError::Override(
|
||||||
BenchmarkResult::from_weight(T::BlockWeights::get().max_block)
|
BenchmarkResult::from_weight(Weight::MAX)
|
||||||
))?;
|
))?;
|
||||||
|
|
||||||
let assets: MultiAssets = vec![ transferable_reserve_asset ].into();
|
let assets: MultiAssets = vec![ transferable_reserve_asset ].into();
|
||||||
@@ -187,7 +188,7 @@ benchmarks_instance_pallet! {
|
|||||||
}: {
|
}: {
|
||||||
executor.bench_process(xcm).map_err(|_| {
|
executor.bench_process(xcm).map_err(|_| {
|
||||||
BenchmarkError::Override(
|
BenchmarkError::Override(
|
||||||
BenchmarkResult::from_weight(T::BlockWeights::get().max_block)
|
BenchmarkResult::from_weight(Weight::MAX)
|
||||||
)
|
)
|
||||||
})?;
|
})?;
|
||||||
} verify {
|
} verify {
|
||||||
|
|||||||
Reference in New Issue
Block a user