// Copyright (C) Parity Technologies (UK) Ltd. and Dijital Kurdistan Tech Institute // This file is part of Pezcumulus. // SPDX-License-Identifier: Apache-2.0 // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. //! Autogenerated weights for `pezcumulus_ping` //! //! THIS FILE WAS AUTO-GENERATED USING THE BIZINIKIWI BENCHMARK CLI VERSION 32.0.0 //! DATE: 2026-03-21 //! STEPS: `50`, REPEAT: `20`, LOW RANGE: `[]`, HIGH RANGE: `[]` //! HOSTNAME: `pezkuwi-bench`, CPU: `AMD EPYC 7763 64-Core Processor` #![cfg_attr(rustfmt, rustfmt_skip)] #![allow(unused_parens)] #![allow(unused_imports)] #![allow(missing_docs)] use pezframe_support::{traits::Get, weights::Weight}; use core::marker::PhantomData; /// Weight functions needed for `pezcumulus_ping`. pub trait WeightInfo { /// Weight for the `start` extrinsic. fn start(s: u32) -> Weight; /// Weight for the `start_many` extrinsic. fn start_many(n: u32) -> Weight; /// Weight for the `stop` extrinsic. fn stop() -> Weight; /// Weight for the `stop_all` extrinsic. fn stop_all() -> Weight; /// Weight for the `ping` extrinsic. fn ping(s: u32) -> Weight; /// Weight for the `pong` extrinsic. fn pong(s: u32) -> Weight; } /// Weights for `pezcumulus_ping` using the Bizinikiwi node and recommended hardware. pub struct PezWeight(PhantomData); impl WeightInfo for PezWeight { /// Storage: `Ping::Targets` (r:1 w:1) /// Proof: `Ping::Targets` (`max_values`: Some(1), `max_size`: Some(10704), added: 11199, mode: `MaxEncodedLen`) /// The variable `s` represents the payload size in bytes. fn start(s: u32) -> Weight { Weight::from_parts(15_000_000, 12_199) .saturating_add(Weight::from_parts(1_000u64.saturating_mul(s as u64), 0)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `Ping::Targets` (r:1 w:1) /// Proof: `Ping::Targets` (`max_values`: Some(1), `max_size`: Some(10704), added: 11199, mode: `MaxEncodedLen`) /// The variable `n` represents the number of targets to add. fn start_many(n: u32) -> Weight { Weight::from_parts(15_000_000, 12_199) .saturating_add(Weight::from_parts(5_000_000u64.saturating_mul(n as u64), 0)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `Ping::Targets` (r:1 w:1) /// Proof: `Ping::Targets` (`max_values`: Some(1), `max_size`: Some(10704), added: 11199, mode: `MaxEncodedLen`) fn stop() -> Weight { Weight::from_parts(12_000_000, 12_199) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } /// Storage: `Ping::Targets` (r:1 w:1) /// Proof: `Ping::Targets` (`max_values`: Some(1), `max_size`: Some(10704), added: 11199, mode: `MaxEncodedLen`) fn stop_all() -> Weight { Weight::from_parts(12_000_000, 12_199) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } /// The variable `s` represents the payload size in bytes. /// Note: ping requires sibling teyrchain origin via XCM and also sends an XCM message. fn ping(s: u32) -> Weight { Weight::from_parts(20_000_000, 3_500) .saturating_add(Weight::from_parts(1_000u64.saturating_mul(s as u64), 0)) } /// Storage: `Ping::Pings` (r:1 w:1) /// Proof: `Ping::Pings` (`max_values`: None, `max_size`: Some(36), added: 2511, mode: `MaxEncodedLen`) /// The variable `s` represents the payload size in bytes. fn pong(s: u32) -> Weight { Weight::from_parts(18_000_000, 3_511) .saturating_add(Weight::from_parts(1_000u64.saturating_mul(s as u64), 0)) .saturating_add(T::DbWeight::get().reads(1)) .saturating_add(T::DbWeight::get().writes(1)) } } /// Unit implementation of [`WeightInfo`] with zero weights for development/testing. impl WeightInfo for () { fn start(_s: u32) -> Weight { Weight::from_parts(15_000_000, 12_199) } fn start_many(n: u32) -> Weight { Weight::from_parts(15_000_000u64.saturating_add(5_000_000u64.saturating_mul(n as u64)), 12_199) } fn stop() -> Weight { Weight::from_parts(12_000_000, 12_199) } fn stop_all() -> Weight { Weight::from_parts(12_000_000, 12_199) } fn ping(_s: u32) -> Weight { Weight::from_parts(20_000_000, 3_500) } fn pong(_s: u32) -> Weight { Weight::from_parts(18_000_000, 3_511) } }