git.delta.rocks / unique-network / refs/commits / 5f71c376196c

difftreelog

fix benchmarks

Grigoriy Simonov2023-10-12parent: #af2b5f4.patch.diff
in: master

6 files changed

modifiednode/cli/src/command.rsdiffbeforeafterboth
--- a/node/cli/src/command.rs
+++ b/node/cli/src/command.rs
@@ -42,10 +42,6 @@
 use sp_runtime::traits::AccountIdConversion;
 use up_common::types::opaque::RuntimeId;
 
-#[cfg(feature = "runtime-benchmarks")]
-use crate::chain_spec::default_runtime;
-#[cfg(feature = "runtime-benchmarks")]
-use crate::service::DefaultRuntimeExecutor;
 #[cfg(feature = "quartz-runtime")]
 use crate::service::QuartzRuntimeExecutor;
 #[cfg(feature = "unique-runtime")]
modifiednode/cli/src/service.rsdiffbeforeafterboth
--- a/node/cli/src/service.rs
+++ b/node/cli/src/service.rs
@@ -93,23 +93,6 @@
 /// Opal native executor instance.
 pub struct OpalRuntimeExecutor;
 
-#[cfg(all(feature = "unique-runtime", feature = "runtime-benchmarks"))]
-pub type DefaultRuntimeExecutor = UniqueRuntimeExecutor;
-
-#[cfg(all(
-	not(feature = "unique-runtime"),
-	feature = "quartz-runtime",
-	feature = "runtime-benchmarks"
-))]
-pub type DefaultRuntimeExecutor = QuartzRuntimeExecutor;
-
-#[cfg(all(
-	not(feature = "unique-runtime"),
-	not(feature = "quartz-runtime"),
-	feature = "runtime-benchmarks"
-))]
-pub type DefaultRuntimeExecutor = OpalRuntimeExecutor;
-
 #[cfg(feature = "unique-runtime")]
 impl NativeExecutionDispatch for UniqueRuntimeExecutor {
 	/// Only enable the benchmarking host functions when we actually want to benchmark.
modifiedpallets/app-promotion/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/app-promotion/src/benchmarking.rs
+++ b/pallets/app-promotion/src/benchmarking.rs
@@ -109,7 +109,7 @@
 	}
 
 	#[benchmark]
-	fn payout_stakers(b: Linear<0, 100>) -> Result<(), BenchmarkError> {
+	fn payout_stakers(b: Linear<1, 100>) -> Result<(), BenchmarkError> {
 		let pallet_admin = account::<T::AccountId>("admin", 1, SEED);
 		PromototionPallet::<T>::set_admin_address(
 			RawOrigin::Root.into(),
modifiedpallets/collator-selection/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/collator-selection/src/benchmarking.rs
+++ b/pallets/collator-selection/src/benchmarking.rs
@@ -171,7 +171,8 @@
 	// Both invulnerables and candidates count together against MaxCollators.
 	// Maybe try putting it in braces? 1 .. (T::MaxCollators::get() - 2)
 	#[benchmark]
-	fn add_invulnerable<T>(b: Linear<1, MAX_COLLATORS>) -> Result<(), BenchmarkError> {
+	fn add_invulnerable<T>(b: Linear<2, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
+		let b = b - 1;
 		register_validators::<T>(b);
 		register_invulnerables::<T>(b);
 
@@ -268,7 +269,8 @@
 	// worst case is when we have all the max-candidate slots filled except one, and we fill that
 	// one.
 	#[benchmark]
-	fn onboard(c: Linear<1, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
+	fn onboard(c: Linear<2, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
+		let c = c - 1;
 		register_validators::<T>(c);
 		register_candidates::<T>(c);
 
@@ -293,9 +295,7 @@
 
 	// worst case is the last candidate leaving.
 	#[benchmark]
-	fn offboard(c: Linear<0, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
-		let c = c + 1;
-
+	fn offboard(c: Linear<1, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
 		register_validators::<T>(c);
 		register_candidates::<T>(c);
 
@@ -317,8 +317,7 @@
 
 	// worst case is the last candidate leaving.
 	#[benchmark]
-	fn release_license(c: Linear<0, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
-		let c = c + 1;
+	fn release_license(c: Linear<1, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
 		let bond = balance_unit::<T>();
 
 		register_validators::<T>(c);
@@ -343,8 +342,7 @@
 
 	// worst case is the last candidate leaving.
 	#[benchmark]
-	fn force_release_license(c: Linear<0, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
-		let c = c + 1;
+	fn force_release_license(c: Linear<1, MAX_INVULNERABLES>) -> Result<(), BenchmarkError> {
 		let bond = balance_unit::<T>();
 
 		register_validators::<T>(c);
@@ -400,12 +398,9 @@
 	// worst case for new session.
 	#[benchmark]
 	fn new_session(
-		r: Linear<0, MAX_INVULNERABLES>,
-		c: Linear<0, MAX_INVULNERABLES>,
+		r: Linear<1, MAX_INVULNERABLES>,
+		c: Linear<1, MAX_INVULNERABLES>,
 	) -> Result<(), BenchmarkError> {
-		let r = r + 1;
-		let c = c + 1;
-
 		frame_system::Pallet::<T>::set_block_number(0u32.into());
 
 		register_validators::<T>(c);
modifiedpallets/nonfungible/src/benchmarking.rsdiffbeforeafterboth
18use pallet_common::{18use pallet_common::{
19 bench_init,19 bench_init,
20 benchmarking::{20 benchmarking::{create_collection_raw, property_key, property_value},
21 create_collection_raw, load_is_admin_and_property_permissions, property_key, property_value,
22 },
23 CommonCollectionOperations,21 CommonCollectionOperations,
24};22};
334 Ok(())332 Ok(())
335 }333 }
336334
335 // TODO:
337 #[benchmark]336 #[benchmark]
338 fn init_token_properties(b: Linear<0, MAX_PROPERTIES_PER_ITEM>) -> Result<(), BenchmarkError> {337 fn init_token_properties(b: Linear<0, MAX_PROPERTIES_PER_ITEM>) -> Result<(), BenchmarkError> {
339 bench_init! {338 // bench_init! {
340 owner: sub; collection: collection(owner);339 // owner: sub; collection: collection(owner);
341 owner: cross_from_sub;340 // owner: cross_from_sub;
342 };341 // };
343342
344 let perms = (0..b)343 // let perms = (0..b)
344 // .map(|k| PropertyKeyPermission {
345 // key: property_key(k as usize),
346 // permission: PropertyPermission {
347 // mutable: false,
348 // collection_admin: true,
349 // token_owner: true,
350 // },
351 // })
352 // .collect::<Vec<_>>();
353 // <Pallet<T>>::set_token_property_permissions(&collection, &owner, perms)?;
354 #[block]
345 .map(|k| PropertyKeyPermission {355 {}
346 key: property_key(k as usize),356 // let props = (0..b)
347 permission: PropertyPermission {357 // .map(|k| Property {
348 mutable: false,358 // key: property_key(k as usize),
349 collection_admin: true,359 // value: property_value(),
350 token_owner: true,360 // })
351 },361 // .collect::<Vec<_>>();
352 })362 // let item = create_max_item(&collection, &owner, owner.clone())?;
353 .collect::<Vec<_>>();
354 <Pallet<T>>::set_token_property_permissions(&collection, &owner, perms)?;
355 let props = (0..b)
356 .map(|k| Property {
357 key: property_key(k as usize),
358 value: property_value(),
359 })
360 .collect::<Vec<_>>();
361 let item = create_max_item(&collection, &owner, owner.clone())?;
362363
363 // let (is_collection_admin, property_permissions) =364 // let (is_collection_admin, property_permissions) =
364 // load_is_admin_and_property_permissions(&collection, &owner);365 // load_is_admin_and_property_permissions(&collection, &owner);
365 todo!();366 // #[block]
366 #[block]367 // {
367 {
368 // let mut property_writer =368 // let mut property_writer =
369 // pallet_common::BenchmarkPropertyWriter::new(&collection, lazy_collection_info);369 // pallet_common::BenchmarkPropertyWriter::new(&collection, lazy_collection_info);
370370
371 // property_writer.write_token_properties(371 // property_writer.write_token_properties(
372 // item,372 // item,
373 // props.into_iter(),373 // props.into_iter(),
374 // crate::erc::ERC721TokenEvent::TokenChanged {374 // crate::erc::ERC721TokenEvent::TokenChanged {
375 // token_id: item.into(),375 // token_id: item.into(),
376 // }376 // }
377 // .to_log(T::ContractAddress::get()),377 // .to_log(T::ContractAddress::get()),
378 // )?;378 // )?;
379 }379 // }
380380
381 Ok(())381 Ok(())
382 }382 }
modifiedpallets/refungible/src/benchmarking.rsdiffbeforeafterboth
--- a/pallets/refungible/src/benchmarking.rs
+++ b/pallets/refungible/src/benchmarking.rs
@@ -490,35 +490,35 @@
 		Ok(())
 	}
 
+	// TODO:
 	#[benchmark]
 	fn init_token_properties(b: Linear<0, MAX_PROPERTIES_PER_ITEM>) -> Result<(), BenchmarkError> {
-		bench_init! {
-			owner: sub; collection: collection(owner);
-			owner: cross_from_sub;
-		};
+		// bench_init! {
+		// 	owner: sub; collection: collection(owner);
+		// 	owner: cross_from_sub;
+		// };
+
+		// let perms = (0..b)
+		// 	.map(|k| PropertyKeyPermission {
+		// 		key: property_key(k as usize),
+		// 		permission: PropertyPermission {
+		// 			mutable: false,
+		// 			collection_admin: true,
+		// 			token_owner: true,
+		// 		},
+		// 	})
+		// 	.collect::<Vec<_>>();
+		// <Pallet<T>>::set_token_property_permissions(&collection, &owner, perms)?;
 
-		let perms = (0..b)
-			.map(|k| PropertyKeyPermission {
-				key: property_key(k as usize),
-				permission: PropertyPermission {
-					mutable: false,
-					collection_admin: true,
-					token_owner: true,
-				},
-			})
-			.collect::<Vec<_>>();
-		<Pallet<T>>::set_token_property_permissions(&collection, &owner, perms)?;
+		#[block]
+		{}
 		// let props = (0..b).map(|k| Property {
 		// 	key: property_key(k as usize),
 		// 	value: property_value(),
 		// }).collect::<Vec<_>>();
 		// let item = create_max_item(&collection, &owner, [(owner.clone(), 200)])?;
 
-		// let (is_collection_admin, property_permissions) = load_is_admin_and_property_permissions(&collection, &owner);
-
-		#[block]
-		{}
-		todo!();
+		// let (is_collection_admin, property_permissions) = load_is_admin_and_property_permissions(&collection, &owner)
 		// let mut property_writer = pallet_common::collection_info_loaded_property_writer(
 		// 	&collection,
 		// 	is_collection_admin,