mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-04-26 14:37:57 +00:00
Include StorageInfo in Benchmarking Pipeline (#9090)
* extend storageinfo * extend_storage_info * use vec * add storage info to pipeline * get read and written keys * undo storageinfo move * refactor keytracker * return read / write count * playing with key matching * add basic `StorageInfo` constructor * add whitelisted to returned info * fix some test stuff * pipe comments into benchmark data * add_storage_comments * add comments to template * track only storage prefix * Update frame/benchmarking/src/lib.rs * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/balances/src/weights.rs --template=./.maintain/frame-weight-template.hbs * fix test * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/balances/src/weights.rs --template=./.maintain/frame-weight-template.hbs * remove test logs * add temp benchmark script * Apply suggestions from code review Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com> * remove keytracker and use trackedstoragekey * add comment for unknown keys * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_timestamp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/timestamp/src/weights.rs --template=./.maintain/frame-weight-template.hbs * remove duplicate comments with unknown keys * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_timestamp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/timestamp/src/weights.rs --template=./.maintain/frame-weight-template.hbs * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/balances/src/weights.rs --template=./.maintain/frame-weight-template.hbs * refactor bench tracker, and fix results * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_balances --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/balances/src/weights.rs --template=./.maintain/frame-weight-template.hbs * fix child tries in new tracker * extra newline * fix unused warning * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_timestamp --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/timestamp/src/weights.rs --template=./.maintain/frame-weight-template.hbs * fix master merge * storage info usage refactor * remove now unused * fix refactor * use a vec for prefix * fix tests * also update writer to use vec * disable read and written keys for now * cargo run --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=frame_system --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/system/src/weights.rs --template=./.maintain/frame-weight-template.hbs * Update frame/system/src/weights.rs * fix test * Delete weights.rs * reset weights Co-authored-by: Parity Bot <admin@parity.io> Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com>
This commit is contained in:
@@ -438,147 +438,205 @@ mod tests {
|
||||
<Module<TraitImpl>>::storage_info(),
|
||||
vec![
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"U32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"U32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"U32").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBU32").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"U32MYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"U32MYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"U32MYDEF").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBU32MYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBU32MYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBU32MYDEF").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GETU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GETU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GETU32").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GETU32WITHCONFIG"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GETU32WITHCONFIG".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GETU32WITHCONFIG").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32WITHCONFIG"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETU32WITHCONFIG".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32WITHCONFIG").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GETU32MYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GETU32MYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GETU32MYDEF").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32MYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETU32MYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32MYDEF").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GETU32WITHCONFIGMYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GETU32WITHCONFIGMYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GETU32WITHCONFIGMYDEF").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32WITHCONFIGMYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETU32WITHCONFIGMYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32WITHCONFIGMYDEF").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32WITHCONFIGMYDEFOPT"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETU32WITHCONFIGMYDEFOPT".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETU32WITHCONFIGMYDEFOPT").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GetU32WithBuilder"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GetU32WithBuilder".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GetU32WithBuilder").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GetOptU32WithBuilderSome"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GetOptU32WithBuilderSome".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GetOptU32WithBuilderSome").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GetOptU32WithBuilderNone"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GetOptU32WithBuilderNone".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GetOptU32WithBuilderNone").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(4),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"MAPU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"MAPU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"MAPU32").to_vec(),
|
||||
max_values: Some(3),
|
||||
max_size: Some(8 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBMAPU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBMAPU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBMAPU32").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(8 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GETMAPU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GETMAPU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GETMAPU32").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(8 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETMAPU32"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETMAPU32".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETMAPU32").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(8 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"GETMAPU32MYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"GETMAPU32MYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"GETMAPU32MYDEF").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(8 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PUBGETMAPU32MYDEF"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PUBGETMAPU32MYDEF".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PUBGETMAPU32MYDEF").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(8 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"DOUBLEMAP"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"DOUBLEMAP".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"DOUBLEMAP").to_vec(),
|
||||
max_values: Some(3),
|
||||
max_size: Some(12 + 16 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"DOUBLEMAP2"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"DOUBLEMAP2".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"DOUBLEMAP2").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(12 + 16 + 16),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"COMPLEXTYPE1"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"COMPLEXTYPE1".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"COMPLEXTYPE1").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(5),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"COMPLEXTYPE2"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"COMPLEXTYPE2".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"COMPLEXTYPE2").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(1156),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"COMPLEXTYPE3"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"COMPLEXTYPE3".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"COMPLEXTYPE3").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: Some(100),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"NMAP"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"NMAP".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"NMAP").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(16 + 4 + 8 + 2 + 1),
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"NMAP2"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"NMAP2".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"NMAP2").to_vec(),
|
||||
max_values: None,
|
||||
max_size: Some(16 + 4 + 1),
|
||||
},
|
||||
@@ -669,22 +727,30 @@ mod test2 {
|
||||
<Module<TraitImpl>>::storage_info(),
|
||||
vec![
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"SingleDef"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"SingleDef".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"SingleDef").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: None,
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"PairDef"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"PairDef".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"PairDef").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: None,
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"Single"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"Single".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"Single").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: None,
|
||||
},
|
||||
StorageInfo {
|
||||
prefix: prefix(b"TestStorage", b"Pair"),
|
||||
pallet_name: b"TestStorage".to_vec(),
|
||||
storage_name: b"Pair".to_vec(),
|
||||
prefix: prefix(b"TestStorage", b"Pair").to_vec(),
|
||||
max_values: Some(1),
|
||||
max_size: None,
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user