瀏覽代碼

runtime: utility: Simplify benchmarking.

Shamil Gadelshin 3 年之前
父節點
當前提交
3925b9eb58

+ 8 - 122
runtime-modules/utility/src/benchmarking.rs

@@ -74,8 +74,8 @@ benchmarks! {
         assert_last_event::<T>(RawEvent::Signaled(signal).into());
     }
 
-    update_working_group_budget_positive_forum {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Forum);
+    update_working_group_budget_positive {
+        set_wg_and_council_budget::<T>(100, WorkingGroup::Forum); // All groups are similar
     }: update_working_group_budget(
         RawOrigin::Root,
         WorkingGroup::Forum,
@@ -86,8 +86,8 @@ benchmarks! {
         assert_new_budgets::<T>(99, 101, WorkingGroup::Forum, 1, BalanceKind::Positive);
     }
 
-    update_working_group_budget_negative_forum {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Forum);
+    update_working_group_budget_negative {
+        set_wg_and_council_budget::<T>(100, WorkingGroup::Forum); // All groups are similar
     }: update_working_group_budget(
         RawOrigin::Root,
         WorkingGroup::Forum,
@@ -98,74 +98,6 @@ benchmarks! {
         assert_new_budgets::<T>(101, 99, WorkingGroup::Forum, 1, BalanceKind::Negative);
     }
 
-    update_working_group_budget_positive_storage {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Storage);
-    }: update_working_group_budget(
-        RawOrigin::Root,
-        WorkingGroup::Storage,
-        One::one(),
-        BalanceKind::Positive
-    )
-    verify {
-        assert_new_budgets::<T>(99, 101, WorkingGroup::Storage, 1, BalanceKind::Positive);
-    }
-
-    update_working_group_budget_negative_storage {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Storage);
-    }: update_working_group_budget(
-        RawOrigin::Root,
-        WorkingGroup::Storage,
-        One::one(),
-        BalanceKind::Negative
-    )
-    verify {
-        assert_new_budgets::<T>(101, 99, WorkingGroup::Storage, 1, BalanceKind::Negative);
-    }
-
-    update_working_group_budget_positive_content {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Content);
-    }: update_working_group_budget(
-        RawOrigin::Root,
-        WorkingGroup::Content,
-        One::one(),
-        BalanceKind::Positive
-    )
-    verify {
-        assert_new_budgets::<T>(99, 101, WorkingGroup::Content, 1, BalanceKind::Positive);
-    }
-
-    update_working_group_budget_negative_content {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Content);
-    }: update_working_group_budget(RawOrigin::Root, WorkingGroup::Content, One::one(),
-    BalanceKind::Negative)
-    verify {
-        assert_new_budgets::<T>(101, 99, WorkingGroup::Content, 1, BalanceKind::Negative);
-    }
-
-    update_working_group_budget_positive_membership {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Membership);
-    }: update_working_group_budget(
-        RawOrigin::Root,
-        WorkingGroup::Membership,
-        One::one(),
-        BalanceKind::Positive
-    )
-    verify {
-        assert_new_budgets::<T>(99, 101, WorkingGroup::Membership, 1, BalanceKind::Positive);
-    }
-
-    update_working_group_budget_negative_membership {
-        set_wg_and_council_budget::<T>(100, WorkingGroup::Membership);
-    }: update_working_group_budget(
-        RawOrigin::Root,
-        WorkingGroup::Membership,
-        One::one(),
-        BalanceKind::Negative
-    )
-    verify {
-        assert_new_budgets::<T>(101, 99, WorkingGroup::Membership, 1, BalanceKind::Negative);
-    }
-
     burn_account_tokens {
         let account_id = account::<T::AccountId>("caller", 0, 0);
         let initial_issuance = Balances::<T>::total_issuance();
@@ -196,62 +128,16 @@ mod tests {
     }
 
     #[test]
-    fn test_update_working_group_budget_positive_forum() {
-        initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_positive_forum::<
-                Test,
-            >());
-        });
-    }
-
-    #[test]
-    fn test_update_working_group_budget_negative_forum() {
-        initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_negative_forum::<
-                Test,
-            >());
-        });
-    }
-
-    #[test]
-    fn test_update_working_group_budget_positive_storage() {
-        initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_positive_storage::<Test>());
-        });
-    }
-
-    #[test]
-    fn test_update_working_group_budget_negative_storage() {
-        initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_negative_storage::<Test>());
-        });
-    }
-
-    #[test]
-    fn test_update_working_group_budget_positive_content() {
-        initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_positive_content::<Test>());
-        });
-    }
-
-    #[test]
-    fn test_update_working_group_budget_negative_content() {
-        initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_negative_content::<Test>());
-        });
-    }
-
-    #[test]
-    fn test_update_working_group_budget_positive_membership() {
+    fn test_update_working_group_budget_positive() {
         initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_positive_membership::<Test>());
+            assert_ok!(test_benchmark_update_working_group_budget_positive::<Test>());
         });
     }
 
     #[test]
-    fn test_update_working_group_budget_negative_membership() {
+    fn test_update_working_group_budget_negative() {
         initial_test_ext().execute_with(|| {
-            assert_ok!(test_benchmark_update_working_group_budget_negative_membership::<Test>());
+            assert_ok!(test_benchmark_update_working_group_budget_negative::<Test>());
         });
     }
 

+ 11 - 58
runtime-modules/utility/src/lib.rs

@@ -56,14 +56,8 @@ pub trait Trait: frame_system::Trait + balances::Trait + council::Trait {
 /// Note: This was auto generated through the benchmark CLI using the `--weight-trait` flag
 pub trait WeightInfo {
     fn execute_signal_proposal(i: u32) -> Weight;
-    fn update_working_group_budget_positive_forum() -> Weight;
-    fn update_working_group_budget_negative_forum() -> Weight;
-    fn update_working_group_budget_positive_storage() -> Weight;
-    fn update_working_group_budget_negative_storage() -> Weight;
-    fn update_working_group_budget_positive_content() -> Weight;
-    fn update_working_group_budget_negative_content() -> Weight;
-    fn update_working_group_budget_positive_membership() -> Weight;
-    fn update_working_group_budget_negative_membership() -> Weight;
+    fn update_working_group_budget_positive() -> Weight;
+    fn update_working_group_budget_negative() -> Weight;
     fn burn_account_tokens() -> Weight;
 }
 
@@ -177,7 +171,7 @@ decl_module! {
         /// - DB:
         ///    - O(1) doesn't depend on the state or parameters
         /// # </weight>
-        #[weight = Module::<T>::get_update_working_group_budget_weight(&working_group, &balance_kind)]
+        #[weight = Module::<T>::get_update_working_group_budget_weight(&balance_kind)]
         pub fn update_working_group_budget(
             origin,
             working_group: WorkingGroup,
@@ -186,7 +180,6 @@ decl_module! {
         ) {
             ensure_root(origin.clone())?;
 
-
             let wg_budget = T::get_working_group_budget(working_group);
             let current_budget = Council::<T>::budget();
 
@@ -240,55 +233,15 @@ decl_module! {
 
 impl<T: Trait> Module<T> {
     // Returns the weigt for update_working_group_budget extrinsic according to parameters
-    fn get_update_working_group_budget_weight(
-        group: &WorkingGroup,
-        balance_kind: &BalanceKind,
-    ) -> Weight {
+    fn get_update_working_group_budget_weight(balance_kind: &BalanceKind) -> Weight {
         match balance_kind {
-            BalanceKind::Positive => match group {
-                WorkingGroup::Forum => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_positive_forum()
-                }
-                WorkingGroup::Storage => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_positive_storage()
-                }
-                WorkingGroup::Content => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_positive_content()
-                }
-                WorkingGroup::Membership => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_positive_membership()
-                }
-                WorkingGroup::Operations => {
-                    //TODO: benchmark it
-                    WeightInfoUtilities::<T>::update_working_group_budget_positive_membership()
-                }
-                WorkingGroup::Gateway => {
-                    //TODO: benchmark it
-                    WeightInfoUtilities::<T>::update_working_group_budget_positive_membership()
-                }
-            },
-            BalanceKind::Negative => match group {
-                WorkingGroup::Forum => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_negative_forum()
-                }
-                WorkingGroup::Storage => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_negative_storage()
-                }
-                WorkingGroup::Membership => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_negative_membership()
-                }
-                WorkingGroup::Content => {
-                    WeightInfoUtilities::<T>::update_working_group_budget_negative_content()
-                }
-                WorkingGroup::Operations => {
-                    //TODO: benchmark it
-                    WeightInfoUtilities::<T>::update_working_group_budget_negative_content()
-                }
-                WorkingGroup::Gateway => {
-                    //TODO: benchmark it
-                    WeightInfoUtilities::<T>::update_working_group_budget_negative_content()
-                }
-            },
+            BalanceKind::Positive => {
+                WeightInfoUtilities::<T>::update_working_group_budget_positive()
+            }
+
+            BalanceKind::Negative => {
+                WeightInfoUtilities::<T>::update_working_group_budget_negative()
+            }
         }
     }
 }

+ 2 - 20
runtime-modules/utility/src/tests/mocks.rs

@@ -194,28 +194,10 @@ impl WeightInfo for () {
     fn execute_signal_proposal(_: u32) -> Weight {
         0
     }
-    fn update_working_group_budget_positive_forum() -> Weight {
+    fn update_working_group_budget_positive() -> Weight {
         0
     }
-    fn update_working_group_budget_negative_forum() -> Weight {
-        0
-    }
-    fn update_working_group_budget_positive_storage() -> Weight {
-        0
-    }
-    fn update_working_group_budget_negative_storage() -> Weight {
-        0
-    }
-    fn update_working_group_budget_positive_content() -> Weight {
-        0
-    }
-    fn update_working_group_budget_negative_content() -> Weight {
-        0
-    }
-    fn update_working_group_budget_positive_membership() -> Weight {
-        0
-    }
-    fn update_working_group_budget_negative_membership() -> Weight {
+    fn update_working_group_budget_negative() -> Weight {
         0
     }
     fn burn_account_tokens() -> Weight {

+ 7 - 37
runtime/src/weights/joystream_utility.rs

@@ -1,4 +1,4 @@
-//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 2.0.0
+//! THIS FILE WAS AUTO-GENERATED USING THE SUBSTRATE BENCHMARK CLI VERSION 2.0.1
 
 #![allow(unused_parens)]
 #![allow(unused_imports)]
@@ -8,49 +8,19 @@ use frame_support::weights::{constants::RocksDbWeight as DbWeight, Weight};
 pub struct WeightInfo;
 impl joystream_utility::WeightInfo for WeightInfo {
     fn execute_signal_proposal(i: u32) -> Weight {
-        (81_623_000 as Weight).saturating_add((162_000 as Weight).saturating_mul(i as Weight))
+        (108_316_000 as Weight).saturating_add((177_000 as Weight).saturating_mul(i as Weight))
     }
-    fn update_working_group_budget_positive_forum() -> Weight {
-        (158_627_000 as Weight)
+    fn update_working_group_budget_positive() -> Weight {
+        (191_000_000 as Weight)
             .saturating_add(DbWeight::get().reads(2 as Weight))
             .saturating_add(DbWeight::get().writes(2 as Weight))
     }
-    fn update_working_group_budget_negative_forum() -> Weight {
-        (158_189_000 as Weight)
-            .saturating_add(DbWeight::get().reads(2 as Weight))
-            .saturating_add(DbWeight::get().writes(2 as Weight))
-    }
-    fn update_working_group_budget_positive_storage() -> Weight {
-        (158_593_000 as Weight)
-            .saturating_add(DbWeight::get().reads(2 as Weight))
-            .saturating_add(DbWeight::get().writes(2 as Weight))
-    }
-    fn update_working_group_budget_negative_storage() -> Weight {
-        (158_974_000 as Weight)
-            .saturating_add(DbWeight::get().reads(2 as Weight))
-            .saturating_add(DbWeight::get().writes(2 as Weight))
-    }
-    fn update_working_group_budget_positive_content() -> Weight {
-        (158_706_000 as Weight)
-            .saturating_add(DbWeight::get().reads(2 as Weight))
-            .saturating_add(DbWeight::get().writes(2 as Weight))
-    }
-    fn update_working_group_budget_negative_content() -> Weight {
-        (158_540_000 as Weight)
-            .saturating_add(DbWeight::get().reads(2 as Weight))
-            .saturating_add(DbWeight::get().writes(2 as Weight))
-    }
-    fn update_working_group_budget_positive_membership() -> Weight {
-        (156_882_000 as Weight)
-            .saturating_add(DbWeight::get().reads(2 as Weight))
-            .saturating_add(DbWeight::get().writes(2 as Weight))
-    }
-    fn update_working_group_budget_negative_membership() -> Weight {
-        (157_833_000 as Weight)
+    fn update_working_group_budget_negative() -> Weight {
+        (197_000_000 as Weight)
             .saturating_add(DbWeight::get().reads(2 as Weight))
             .saturating_add(DbWeight::get().writes(2 as Weight))
     }
     fn burn_account_tokens() -> Weight {
-        (166_780_000 as Weight)
+        (262_000_000 as Weight)
     }
 }