make fee calculations correct based on nanoseconds
Signed-off-by: Uncle Stinky <uncle.stinky@ghostchain.io>
This commit is contained in:
parent
ffa65dc0a7
commit
99ac2f1f08
@ -1,6 +1,6 @@
|
||||
[package]
|
||||
name = "casper-runtime-constants"
|
||||
version = "0.4.0"
|
||||
version = "0.4.1"
|
||||
authors.workspace = true
|
||||
edition.workspace = true
|
||||
homepage.workspace = true
|
||||
|
||||
@ -39,7 +39,7 @@ pub mod time {
|
||||
|
||||
// 1 in 4 blocks (on average, not counting collisions) woll be primary babe
|
||||
// blocks.The choice of is done on accordance to the slot duration and expected
|
||||
// target block tim, for safely resisting network delays of maximum two
|
||||
// target block time, for safely resisting network delays of maximum two
|
||||
// seconds.
|
||||
pub const PRIMARY_PROBABILITY: (u64, u64) = (1, 4);
|
||||
}
|
||||
@ -69,7 +69,7 @@ pub mod fee {
|
||||
type Balance = Balance;
|
||||
|
||||
fn polynomial() -> WeightToFeeCoefficients<Self::Balance> {
|
||||
let fee_per_nanosecond: Balance = 10 * super::currency::FTSO;
|
||||
let fee_per_nanosecond: Balance = (10 * super::currency::FTSO) / 1_000;
|
||||
|
||||
smallvec![WeightToFeeCoefficient {
|
||||
degree: 1,
|
||||
@ -84,7 +84,7 @@ pub mod fee {
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::{
|
||||
currency::{CSPR, STNK, STRH},
|
||||
currency::{CSPR, STRH},
|
||||
fee::WeightToFee,
|
||||
};
|
||||
use crate::weights::ExtrinsicBaseWeight;
|
||||
@ -94,8 +94,8 @@ mod tests {
|
||||
#[test]
|
||||
fn full_block_fee_is_correct() {
|
||||
let full_block = WeightToFee::weight_to_fee(&MAXIMUM_BLOCK_WEIGHT);
|
||||
assert!(full_block >= 50 * CSPR);
|
||||
assert!(full_block <= 70 * CSPR);
|
||||
assert!(full_block >= 30 * CSPR);
|
||||
assert!(full_block <= 50 * CSPR);
|
||||
}
|
||||
|
||||
#[test]
|
||||
@ -103,7 +103,7 @@ mod tests {
|
||||
let x = WeightToFee::weight_to_fee(&ExtrinsicBaseWeight::get());
|
||||
|
||||
let lower_bound = STRH / 2;
|
||||
let upper_bound = (3 * STRH) / 2;
|
||||
let upper_bound = 6 * STRH;
|
||||
|
||||
assert!(x >= lower_bound);
|
||||
assert!(x <= upper_bound);
|
||||
|
||||
@ -14,8 +14,8 @@
|
||||
// along with Ghost Network. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 32.0.0
|
||||
//! DATE: 2024-07-30 (Y/M/D)
|
||||
//! HOSTNAME: `ghostown`, CPU: `Intel(R) Core(TM) i3-2310M CPU @ 2.10GHz`
|
||||
//! DATE: 2026-08-31 (Y/M/D)
|
||||
//! HOSTNAME: `LAPTOP-IOUQRLAP`, CPU: `AMD Ryzen 7 2700U with Radeon Vega Mobile Gfx`
|
||||
//!
|
||||
//! SHORT-NAME: `block`, LONG-NAME: `BlockExecution`, RUNTIME: `Development`
|
||||
//! WARMUPS: `10`, REPEAT: `100`
|
||||
@ -41,17 +41,17 @@ parameter_types! {
|
||||
/// Calculated by multiplying the *Average* with `1.0` and adding `0`.
|
||||
///
|
||||
/// Stats nanoseconds:
|
||||
/// Min, Max: 64_363_191, 66_078_314
|
||||
/// Average: 64_551_214
|
||||
/// Median: 64_500_078
|
||||
/// Std-Dev: 229678.99
|
||||
/// Min, Max: 553_400, 1_996_400
|
||||
/// Average: 771_526
|
||||
/// Median: 680_500
|
||||
/// Std-Dev: 248209.17
|
||||
///
|
||||
/// Percentiles nanoseconds:
|
||||
/// 99th: 65_668_012
|
||||
/// 95th: 64_888_421
|
||||
/// 75th: 64_563_448
|
||||
/// 99th: 1_652_700
|
||||
/// 95th: 1_212_900
|
||||
/// 75th: 849_300
|
||||
pub const BlockExecutionWeight: Weight =
|
||||
Weight::from_parts(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(64_551_214), 0);
|
||||
Weight::from_parts(WEIGHT_REF_TIME_PER_NANOS.saturating_mul(771_526), 0);
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
|
||||
Loading…
Reference in New Issue
Block a user