Oliver Tale-Yazdi
3af87703de
Add Weightless benchmark bailing ( #12829 )
...
* Calls can be 'Weightless'
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix (child)-bounties benches
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Just use one dummy value
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* 🤦
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2022-12-02 20:14:21 +00:00
Koute
8d81065a54
Support running the pallet benchmarks analysis without running the benchmarks ( #12361 )
...
* Support running the pallet benchmarks analysis without running the benchmarks
* Rename `override-results` to `json-input` and update the help comment
* ".git/.scripts/fmt.sh" 1
Co-authored-by: command-bot <>
2022-09-28 19:38:12 +00:00
Shawn Tabrizi
30951822ba
Weight v1.5: Opaque Struct ( #12138 )
...
* initial idea
* update frame_support
* update a bunch more
* add ord
* adjust RuntimeDbWeight
* frame_system builds
* re-export
* frame_support tests pass
* frame_executive compile
* frame_executive builds
* frame_system tests passing
* pallet-utility tests pass
* fix a bunch of pallets
* more
* phragmen
* state-trie-migration
* scheduler and referenda
* pallet-election-provider-multi-phase
* aura
* staking
* more
* babe
* balances
* bunch more
* sudo
* transaction-payment
* asset-tx-payment
* last pallets
* fix alliance merge
* fix node template runtime
* fix pallet-contracts cc @athei
* fix node runtime
* fix compile on runtime-benchmarks feature
* comment
* fix frame-support-test
* fix more tests
* weight regex
* frame system works
* fix a bunch
* more
* more
* more
* more
* more
* more fixes
* update templates
* fix contracts benchmarks
* Update lib.rs
* Update lib.rs
* fix ui
* make scalar saturating mul const
* more const functions
* scalar div
* refactor using constant functions
* move impl
* fix overhead template
* use compactas
* Update lib.rs
2022-08-31 11:26:13 +00:00
Oliver Tale-Yazdi
99fae0cd57
bench-cli: Support JSON output ( #10771 )
...
* Add dependencies
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Make benchmark results serializable
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add `--json[-file]` options
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Enable JSON output
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use specific serde version
Polkadot does not compile otherwise.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review comments
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review comment: fs::write
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2022-02-02 14:25:13 +00:00
Bastian Köcher
f3662b4bba
Happy new year 2022 ( #10573 )
2022-01-03 09:22:14 +01:00
Gavin Wood
1e24e45ea1
Remove Default bound for AccountId ( #10403 )
...
* Remove Default for AccountId
* More removals of default
* Update frame/authorship/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update frame/authorship/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update frame/authorship/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update frame/authorship/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* More work
* More work
* Remove old code
* More work
* pallet-asset-tx-payment
* tips
* sc-consensus-babe
* sc-finality-grandpa
* sc-consensus-babe-rpc
* sc-cli
* make npos crates accept non-default account (#10420 )
* minimal changes to make npos pallets all work
* make this pesky reduce.rs a bit cleaner
* more work
* more work
* Tests build
* Fix imonline tests
* Formatting
* Fixes
* Fixes
* Fix bench
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* Formatting
* Fixes
* Formatting
* Fixes
* Formatting
* Fixes
* Formatting
* Fixes
* Formatting
* Update client/keystore/src/local.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/finality-grandpa/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/keystore/src/local.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/keystore/src/local.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update frame/staking/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update frame/staking/src/lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update primitives/runtime/src/traits.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Formatting
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: kianenigma <kian@parity.io >
2021-12-13 15:03:59 +01:00
Falco Hirschenberger
6ec82c7a83
Add weight for decoding the call to benchmarks ( #9781 )
...
* First two bechmarks converted
* Add decoding weight to benchmarks.
* Update frame/democracy/src/benchmarking.rs
* Adapt to new Call-ing convention
* Resolve conflicts and change more calls
* Remove error impl for codec and use plain `expect` for error handling instead
* Compile fix
* Spaces to tabs
* Update frame/democracy/src/benchmarking.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Add origin-type specifier to benchmarks macro
* formatting
* Update frame/benchmarking/src/lib.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Change manual to automatic benchmark syntax
* Formatting
* Revert "Change manual to automatic benchmark syntax"
This reverts commit ea5b5d906b318b6525c1e6d2bd05c5011595c21a.
Because tests are lost and cleanup code in the verify function is not run on failing calls.
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
2021-09-27 15:17:38 +00:00
Shawn Tabrizi
250f9fc1ae
Dont Convert Benchmark Error Too Early ( #9743 )
...
* dont convert benchmark error
* fix warning
* fix more warnings
* more fixes
* more fixes
* add missing feature deps
* Update frame/election-provider-multi-phase/src/benchmarking.rs
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
* Update frame/election-provider-multi-phase/src/benchmarking.rs
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
* use from
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
2021-09-10 12:06:24 +00:00
Shawn Tabrizi
5d78dbf27f
Allow Skipping Benchmark Errors ( #9699 )
...
* introduce benchmark skip
* fmt
* Update lib.rs
* fix up
2021-09-06 23:25:20 +00:00
Shawn Tabrizi
ccfe485b91
Custom Benchmark Errors and Override ( #9517 )
...
* initial idea
* update benchmark test to frame v2
* fix some errors
* fixes for elec phrag
* fix tests
* update extrinsic time and docs
* fix import
* undo extra changes
* helper function
* wrong way
* Update frame/benchmarking/src/utils.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* doesnt need encode/decode
* fix benchmark return
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2021-08-19 12:34:56 +00:00
Kian Paimani
abd08e29ce
Rewrap all comments to 100 line width ( #9490 )
...
* reformat everything again
* manual formatting
* last manual fix
* Fix build
2021-08-11 14:56:55 +00:00
Shawn Tabrizi
0489c1768c
FRAME Weights with Storage Metadata ( #9471 )
...
* weights with metadata
* fix
* fix contract test
* skip metadata tag
* special handling for `frame_system`
* cargo run --quiet --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
* add skip metadata to contracts
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_contracts --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/contracts/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* fix contract test
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* expose component information
* fix test generation
* refactor list benchmarks
* move component selection out of runtime
* add benchmark verification
* missing feature
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* add internal repeats
* update weights with internal repeats
* fix warning
* return error with pov
* try without tracking
* Revert "return error with pov"
This reverts commit 44c36cbbd3c6818f36f377e3e291f1df156e40f7.
* Revert "try without tracking"
This reverts commit f401c44aebff2232389d8d307b20924891e5d77d.
* Revert "Revert "try without tracking""
This reverts commit 4b4e05929802ad3e8154e107359447634e5fb21b.
* state without tracking
* fix build
* temp test
* split db and timing benchmarks
* extend db results?
* default repeat is internal
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* fix warning
* bump linked hash map
* use linked hash map for storage tracker
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* remove conflicting short command
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_democracy --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/democracy/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* missed one linked hashmap
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_bounties --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/bounties/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_election_provider_multi_phase --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/election-provider-multi-phase/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* new weights with latest changes
* Update frame/benchmarking/src/utils.rs
Co-authored-by: Parity Benchmarking Bot <admin@parity.io >
2021-08-07 16:05:12 +00:00
Shawn Tabrizi
fa8c6274ac
Refactor Benchmarks for Less Wasm Memory Usage ( #9373 )
...
* extract repeat out of benchmark
* remove r
* unused
* cargo run --quiet --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
* cargo run --quiet --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
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* use linked map to keep order
* cargo run --quiet --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
* Delete pallet_balances.rs
* Delete out
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* steps and repeat to tuple (current_*, total_*)
* idea for list command
* fmt
* use benchmark list in cli
* handle steps in cli
* move log update to cli
* fmt
* remove old todo
* line width
* cargo run --quiet --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
* benchmark metadata function
* don't need this warm up
* cargo run --quiet --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 warnings
* fix node-template
* fix
* fmt
* line width
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* improve docs
* improve cli
* fix format
* fix bug?
* Revert "fix bug?"
This reverts commit 8051bf1bf9bae862ff28dfff386e7045cd3f045e.
* skip frame-metadata
* extract repeat out of benchmark
* remove r
* cargo run --quiet --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
* cargo run --quiet --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
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* use linked map to keep order
* cargo run --quiet --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
* Delete pallet_balances.rs
* Delete out
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* steps and repeat to tuple (current_*, total_*)
* idea for list command
* fmt
* use benchmark list in cli
* handle steps in cli
* move log update to cli
* remove old todo
* line width
* cargo run --quiet --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
* benchmark metadata function
* don't need this warm up
* cargo run --quiet --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 warnings
* fix node-template
* fix
* fmt
* line width
* cargo run --quiet --release --features=runtime-benchmarks --manifest-path=bin/node/cli/Cargo.toml -- benchmark --chain=dev --steps=50 --repeat=20 --pallet=pallet_staking --extrinsic=* --execution=wasm --wasm-execution=compiled --heap-pages=4096 --output=./frame/staking/src/weights.rs --template=./.maintain/frame-weight-template.hbs
* improve docs
* improve cli
* fix format
* fix bug?
* Revert "fix bug?"
This reverts commit 8051bf1bf9bae862ff28dfff386e7045cd3f045e.
* skip frame-metadata
* Update .gitlab-ci.yml
* fix import
* Update .gitlab-ci.yml
Co-authored-by: Parity Benchmarking Bot <admin@parity.io >
2021-08-01 18:13:58 +00:00
Bastian Köcher
7b56ab15b4
Run cargo fmt on the whole code base ( #9394 )
...
* Run cargo fmt on the whole code base
* Second run
* Add CI check
* Fix compilation
* More unnecessary braces
* Handle weights
* Use --all
* Use correct attributes...
* Fix UI tests
* AHHHHHHHHH
* 🤦
* Docs
* Fix compilation
* 🤷
* Please stop
* 🤦 x 2
* More
* make rustfmt.toml consistent with polkadot
Co-authored-by: André Silva <andrerfosilva@gmail.com >
2021-07-21 14:32:32 +00:00
Shawn Tabrizi
b42b8fc5fb
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 >
2021-07-07 22:06:06 +00:00
Shawn Tabrizi
c04b44b0a3
Add PoV Tracking to Benchmarking Pipeline ( #8559 )
...
* Added a function to estimate proof size for benchmarking
* integrate proof_size into benchmarking pipeline
* Update client/db/src/bench.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/db/src/bench.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* fix tests
* one more test
* Update bench.rs
* Update utils/frame/benchmarking-cli/src/writer.rs
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
* Update utils/frame/benchmarking-cli/src/command.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: arkpar <arkady.paronyan@gmail.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
2021-04-08 12:54:46 +02:00
ropottnik
81efcc4e52
improve benchmarking error output ( #7863 )
...
* add concat Vec<u8> function and use it for better error logging in add_benchmark! macro
* refactor benchmark error reporting to use format! and RuntimeString
2021-01-15 12:38:21 +00:00
Bastian Köcher
e3e651f72c
Happy new year ( #7814 )
...
* Happy new year
Updates the copyright years and fixes wrong license headers.
* Fix the template
* Split HEADER into HEADER-APACHE & HEADER-GPL
2021-01-04 09:03:13 +00:00
Shawn Tabrizi
36a684a14b
Support Multiple Instances with Benchmarks ( #7669 )
...
* Support multiple instances with benchmarks
* fix tests
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* docs
* fix output
* Update lib.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-12-11 09:20:10 +00:00
Gavin Wood
26465eadaa
Introduce cancel_proposal to rid us of those pesky proposals ( #7111 )
...
* Introduce `cancel_proposal`
Also fix proposal weight.
* Support proposal cancellation from runtime.
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* Fix benchmarks
* fix benchmark
* whitelisted caller weights
* fix build
* Fixes
* Fixes
* Fixes
* Fixes
* Update frame/democracy/src/lib.rs
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
* Fixes
* Fixes
* Fixes
* Fixes
* Fixes
* doc updates
* new weights
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2020-09-24 21:33:02 +00:00
Shawn Tabrizi
4462f7150d
Enable verification logic when executing benchmarks ( #6929 )
...
* Add `--verify` flag to benchmark execution
* make it so `--verify` can be used for getting the actual benchmarks
* undo manual testing
* oops
* use benchmark config struct
* verify is default on, docs update
* remove clone
* improve formatting
* fix test
* bump impl for ci
2020-08-24 15:24:00 +02:00
Shawn Tabrizi
481ad884d6
Dynamic Benchmarking DB Whitelist ( #6815 )
...
* Add `get_whitelist` api
* add whitelisted caller
* Whitelist caller
* remove caller 0
* initial piping of origin (not actual value yet)
* remove attempt to pass origin around
* Add whitelist for `DidUpdate` storage on `pallet_timestamp`
* fix traits
* only add to whitelist if !contains
* PassBy not implemented error
* Whitelist read/writes explicitly per key
* update docs
* reduce trait constraint
* copy pasta
* Apply suggestions from code review
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com >
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
* rename functions @apopiak
* missed some renaming
* enable doc tests
* Update docs
Co-authored-by: Guillaume Thiolliere <gui.thiolliere@gmail.com >
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
2020-08-19 16:15:50 +00:00
Shawn Tabrizi
dd6ef0a3a5
Improve Benchmark Writer: Remove Unused Components, Remove Multiply by Zero, Files Split by Pallet ( #6785 )
...
* initial improvements
* better file management, ignore unused components
* Output warning when components unused
* update comment
* Write even when base weight is zero
* remove unwrap where possible
* Dont sort components to dedup
* undo delete
* improve clarity of unused components
* remove unused dep
* Update Process.json
2020-08-03 12:41:54 +00:00
Shawn Tabrizi
01d0d13fad
Update Balances Pallet to use WeightInfo ( #6610 )
...
* Update balance benchmarks
* Update weight functions
* Remove user component
* make componentless
* Add support for `#[extra]` tag on benchmarks
* Update balances completely
* Apply suggestions from code review
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
* Fix some tests
* Maybe fix to test. Need approval from @tomusdrw this is okay
* Make test better
* keep weights conservative
* Update macro for merge master
* Add headers
* Apply suggestions from code review
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
Co-authored-by: Alexander Theißen <alex.theissen@me.com >
Co-authored-by: Alexander Popiak <alexander.popiak@parity.io >
2020-07-30 17:08:23 +02:00
Guillaume Thiolliere
1eeb4b0e3f
benchmarks! macro: factorize instance usage. ( #6750 )
...
* factorize benchmark!
* fix types
* fix types
2020-07-29 14:33:54 +02:00
Shawn Tabrizi
935ee6f545
Add DB Read/Write Tracking to Benchmarking Pipeline ( #6386 )
...
* initial mockup
* add and wipe
* track writes
* start to add to pipeline
* return all reads/writes
* Log reads and writes from bench db
* causes panic
* Allow multiple commits
* commit before ending benchmark
* doesn't work???
* fix
* Update lib.rs
* switch to struct for `BenchmarkResults`
* add to output
* fix test
* line width
* @kianenigma review
* Add Whitelist to DB Tracking in Benchmarks Pipeline (#6405 )
* hardcoded whitelist
* Add whitelist to pipeline
* Remove whitelist pipeline from CLI, add to runtime
* clean-up unused db initialized whitelist
* Add regression analysis to DB Tracking (#6475 )
* Add selector
* add tests
* debug formatter for easy formula
* Update client/db/src/bench.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: arkpar <arkady.paronyan@gmail.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
2020-06-24 21:03:55 +02:00
Benjamin Kampmann
be8c96adec
Relax substrate licensing scheme ( #5947 )
2020-05-15 13:21:56 +02:00
Marcio Diaz
7cc095ec9f
Add verify block to benchmark tests ( #5551 )
...
* Add verify block to benchmarks macro.
* Update all benchmarks.
* Add tests, add params.
* Should panic.
* ups, add closures
* Update tests.rs
* update macro syntax
* Revert benchmark syntax change
* verify only in tests
* Update tests.rs
* Uncomment staking
* Fix tests for benchmark instance
* Add docs
* Update frame/benchmarking/src/lib.rs
* add trace logs to benchmarks
* Verify returns closure
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2020-04-08 12:55:06 +02:00
Gavin Wood
b472d60a52
Batch benchmarks together with * notation. ( #5436 )
...
* Batch benchmarks together with `*` notation.
* Fix short structopt conflict
* Return error if `batches` is empty
* Move fast benchmarks macro into `frame_benchmarking` (#5445 )
* Move macro into `frame_benchmarking`
* Update docs
* Extra line
* Return error if `batches` is empty
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2020-03-31 15:20:09 +02:00
Marcio Diaz
22e23b0103
Benchmark Collective Pallet ( #5343 )
...
* Init
* Fix execute.
* Duplicate macro for instances temporarilly
* Add propose.
* Add vote, close.
* Propose from own module
* Add old members to set_members.
* Add previous proposals to propose.
* Compress a bit the macro.
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2020-03-24 18:06:29 +01:00
Marcio Diaz
f39e705523
Fix benchmarks! macro for non dispatchable code ( #5100 )
...
* Init allowing non dispatchable closure to be benchmarked.
* Remove example, add it in timestamp
* Fix nits.
* Move test to example.
* Update frame/example/src/lib.rs
Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com >
* Update frame/example/src/lib.rs
Co-Authored-By: Shawn Tabrizi <shawntabrizi@gmail.com >
* Apply review suggestion: move test to benchmarking crate.
* Update frame/benchmarking/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Remove unused imports.
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Benjamin Kampmann <ben.kampmann@googlemail.com >
2020-03-04 10:13:14 +01:00
Marcio Diaz
347b5d641c
Add options to overwrite range bounds in benchmark command. ( #5072 )
...
* Add --mins --maxs to benchmark command.
* Apply review suggestions.
2020-02-28 15:40:42 +01:00
Marcio Diaz
d39605d9cd
Propagate DispatchError for benchmarks. ( #5075 )
...
* Propagate DispatchError for benchmarks.
* Apply review suggestions.
* Use RuntimeString.
* fix expect
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-02-28 12:05:27 +01:00
Marcio Diaz
d024364503
Add steps setting to benchmarking CLI ( #5033 )
...
* Add steps setting to CLI, use max value to hit worst case.
* Bump impl_version.
* Apply review suggestion.
2020-02-25 15:51:25 +01:00
Shawn Tabrizi
ad90ab7ec9
Add storage root recalculation time to benchmarks ( #5035 )
2020-02-24 18:07:38 +01:00
Gavin Wood
f5176ba377
Benchmark macro ( #4962 )
...
* MAcro benchamrks
* Iterative macro
* Tidying it up.
* Macro improvements
* Bits..
* Last benchmaks.
* Repo benchmark macro
* Add the possibility of evaluating arbitrary expressions in a
benchmaark
* Better syntax and docs
* Update `BenchmarkParameter`
* Add `ignore` to sudo-code in docs
* First try of timestamp implementation.
* Fix macro docs, remove warnings.
* Use macro in balances pallet.
* Make some space in frame benchmarking.
* Remove _benchmarks_seed variable.
* Bump impl_version.
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
Co-authored-by: Marcio Diaz <marcio@parity.io >
2020-02-20 17:20:16 +01:00