Vivek Pandya
bc53b9a03a
Remove years from copyright notes. ( #13415 )
...
* Change copyright year to 2023 from 2022
* Fix incorrect update of copyright year
* Remove years from copy right header
* Fix remaining files
* Fix typo in a header and remove update-copyright.sh
2023-02-21 18:46:41 +00:00
Sergej Sakac
5ccd9bfc5a
Warn validators with slow hardware ( #12620 )
...
* move Metric
* run hardware bench if validiator flag is being used
* fix rustdoc & update node-template
* fix
* unused improt
* warn
* move Requirement
* bench_result
* ensure_requirements
* make the code compile
* check if authority
* Update client/sysinfo/src/sysinfo.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* nit fixes
* warning signs
* Update client/sysinfo/src/sysinfo.rs
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2023-01-20 20:26:12 +01:00
Michal Kucharczyk
986d20b352
Use temporary db for benchmarking ( #12254 )
...
* Use temporary db for benchmarking
If no db option was given benchmarks shall use temporary database.
Otherwise the test can use locally stored database which maybe
out-of-date causing test to fail.
* nicer syntax
* explanatory comment added
* Update utils/frame/benchmarking-cli/src/lib.rs
Co-authored-by: Bastian Köcher <info@kchr.de >
2022-09-20 21:19:38 +00:00
Bastian Köcher
73d9ae3284
Introduce trie level cache and remove state cache ( #11407 )
...
* trie state cache
* Also cache missing access on read.
* fix comp
* bis
* fix
* use has_lru
* remove local storage cache on size 0.
* No cache.
* local cache only
* trie cache and local cache
* storage cache (with local)
* trie cache no local cache
* Add state access benchmark
* Remove warnings etc
* Add trie cache benchmark
* No extra "clone" required
* Change benchmark to use multiple blocks
* Use patches
* Integrate shitty implementation
* More stuff
* Revert "Merge branch 'master' into trie_state_cache"
This reverts commit 947cd8e6d43fced10e21b76d5b92ffa57b57c318, reversing
changes made to 29ff036463 .
* Improve benchmark
* Adapt to latest changes
* Adapt to changes in trie
* Add a test that uses iterator
* Start fixing it
* Remove obsolete file
* Make it compile
* Start rewriting the trie node cache
* More work on the cache
* More docs and code etc
* Make data cache an optional
* Tests
* Remove debug stuff
* Recorder
* Some docs and a simple test for the recorder
* Compile fixes
* Make it compile
* More fixes
* More fixes
* Fix fix fix
* Make sure cache and recorder work together for basic stuff
* Test that data caching and recording works
* Test `TrieDBMut` with caching
* Try something
* Fixes, fixes, fixes
* Forward the recorder
* Make it compile
* Use recorder in more places
* Switch to new `with_optional_recorder` fn
* Refactor and cleanups
* Move `ProvingBackend` tests
* Simplify
* Move over all functionality to the essence
* Fix compilation
* Implement estimate encoded size for StorageProof
* Start using the `cache` everywhere
* Use the cache everywhere
* Fix compilation
* Fix tests
* Adds `TrieBackendBuilder` and enhances the tests
* Ensure that recorder drain checks that values are found as expected
* Switch over to `TrieBackendBuilder`
* Start fixing the problem with child tries and recording
* Fix recording of child tries
* Make it compile
* Overwrite `storage_hash` in `TrieBackend`
* Add `storage_cache` to the benchmarks
* Fix `no_std` build
* Speed up cache lookup
* Extend the state access benchmark to also hash a runtime
* Fix build
* Fix compilation
* Rewrite value cache
* Add lru cache
* Ensure that the cache lru works
* Value cache should not be optional
* Add support for keeping the shared node cache in its bounds
* Make the cache configurable
* Check that the cache respects the bounds
* Adds a new test
* Fixes
* Docs and some renamings
* More docs
* Start using the new recorder
* Fix more code
* Take `self` argument
* Remove warnings
* Fix benchmark
* Fix accounting
* Rip off the state cache
* Start fixing fallout after removing the state cache
* Make it compile after trie changes
* Fix test
* Add some logging
* Some docs
* Some fixups and clean ups
* Fix benchmark
* Remove unneeded file
* Use git for patching
* Make CI happy
* Update primitives/trie/Cargo.toml
Co-authored-by: Koute <koute@users.noreply.github.com >
* Update primitives/state-machine/src/trie_backend.rs
Co-authored-by: cheme <emericchevalier.pro@gmail.com >
* Introduce new `AsTrieBackend` trait
* Make the LocalTrieCache not clonable
* Make it work in no_std and add docs
* Remove duplicate dependency
* Switch to ahash for better performance
* Speedup value cache merge
* Output errors on underflow
* Ensure the internal LRU map doesn't grow too much
* Use const fn to calculate the value cache element size
* Remove cache configuration
* Fix
* Clear the cache in between for more testing
* Try to come up with a failing test case
* Make the test fail
* Fix the child trie recording
* Make everything compile after the changes to trie
* Adapt to latest trie-db changes
* Fix on stable
* Update primitives/trie/src/cache.rs
Co-authored-by: cheme <emericchevalier.pro@gmail.com >
* Fix wrong merge
* Docs
* Fix warnings
* Cargo.lock
* Bump pin-project
* Fix warnings
* Switch to released crate version
* More fixes
* Make clippy and rustdocs happy
* More clippy
* Print error when using deprecated `--state-cache-size`
* 🤦
* Fixes
* Fix storage_hash linkings
* Update client/rpc/src/dev/mod.rs
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
* Review feedback
* encode bound
* Rework the shared value cache
Instead of using a `u64` to represent the key we now use an `Arc<[u8]>`. This arc is also stored in
some extra `HashSet`. We store the key are in an extra `HashSet` to de-duplicate the keys accross
different storage roots. When the latest key usage is dropped in the lru, we also remove the key
from the `HashSet`.
* Improve of the cache by merging the old and new solution
* FMT
* Please stop coming back all the time :crying:
* Update primitives/trie/src/cache/shared_cache.rs
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
* Fixes
* Make clippy happy
* Ensure we don't deadlock
* Only use one lock to simplify the code
* Do not depend on `Hasher`
* Fix tests
* FMT
* Clippy 🤦
Co-authored-by: cheme <emericchevalier.pro@gmail.com >
Co-authored-by: Koute <koute@users.noreply.github.com >
Co-authored-by: Arkadiy Paronyan <arkady.paronyan@gmail.com >
2022-08-18 18:59:22 +00:00
Oliver Tale-Yazdi
1843ae83ba
Add benchmark extrinsic command ( #11456 )
...
* Benchmark extrinsic
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Reduce warmup and repeat
Running this 1000 times with a full block takes ~33 minutes 🙈 .
Reducing it to ~3 minutes per default.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Make ExistentialDeposit public
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add 'bechmark extrinsic' command
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add --list and cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Unrelated Clippy
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Clippy
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tests and doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Move implementations up + fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Dont use parameter_types macro
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cache to_lowercase() call
The .to_lowercase() on the builder is actually not needes
since its already documented to only return lower case.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Spelling
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use correct nightly for fmt...
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Rename ED
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix compile
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Subtract block base weight
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use tmp folder for test
This should already be the case since --dev is passed but
somehow not...
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2022-07-19 06:10:15 +00:00
Oliver Tale-Yazdi
9980d314b1
Follow ups for benchmark machine ( #11270 )
...
* Follow ups for the MachineCmd
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix CI
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add to node-template
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix test with feature flag
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Lower disk requirements
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add ExecutionLimit to the disk benchmarks
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Rename DISK_WRITE_LIMIT -> DEFAULT_DISK_EXECUTION_LIMIT
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Rename POLKADOT_REFERENCE_HARDWARE -> SUBSTRATE_REFERENCE_HARDWARE
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix build profile + add license
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove deps
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Set tolerance to 10%
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Ignore test
I cannot reproduce the CI error, even with the full command:
cargo test --workspace --locked --release --verbose --features runtime-benchmarks --manifest-path ./bin/node/cli/Cargo.toml
I will put an 'ignore' on that test for now, since it works for me and is worth having.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove test
Still cannot reproduce the error and it fails in the CI.
Removing it now.
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2022-04-26 14:31:26 +00:00
Oliver Tale-Yazdi
362dc50940
Add benchmark machine placeholder ( #11198 )
...
* Move new_rng to shared code
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add bechmark machine command
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use sc-sysinfo
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add --no-hardware-benchmarks
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Lockfile
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Do not create components if not needed
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Revert "Add --no-hardware-benchmarks"
This reverts commit d4ee98222bf1a5ea62ac60dd7d5c62070e2d7f70.
* Fix tests
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update Cargo deps
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Move sr255119::verify bench to sc-sysinfo
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Move sr255119::verify bench to sc-sysinfo
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Switch benchmarks to return f64
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Hide command until completed
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Use concrete rand implementation
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Put clobber into a function
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add comment
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Update cargo to match polkadot
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove doc that does not format in the console
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Limit benchmark by time
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add ExecutionLimit and make function infallible
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* CI
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2022-04-15 12:09:16 +00:00
Oliver Tale-Yazdi
a7261180ee
Sub-commands for benchmark ( #11164 )
...
* Restructure benchmark commands
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add benchmark block test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup imports
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* CI
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Extend error message
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Apply suggestions from code review
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add commands to node-template
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Zeke Mostov <z.mostov@gmail.com >
2022-04-07 19:33:11 +00:00
Oliver Tale-Yazdi
fa8fa8fa33
Add benchmark-block command ( #11091 )
...
* Add benchmark-block command
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Apply suggestions from code review
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
* Beauty fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Beauty fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
Co-authored-by: parity-processbot <>
2022-03-25 11:27:43 +00:00
Oliver Tale-Yazdi
96cf135586
Add execution overhead benchmarking ( #10977 )
...
* Add benchmark-block
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove first approach
This reverts commit cf96a0a2307433f23187e77864de4a89ecbaef0a.
* Add block and extrinsic benchmarks
* Doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix template
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Beauty fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Check for non-empty chain
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add tests for Stats
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Apply suggestions from code review
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Push first version again
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Push first version again
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Beauty fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Apply suggestions from code review
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update utils/frame/benchmarking-cli/src/overhead/template.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Doc + Template fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Comment fix
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add test
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Pust merge fixup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fixup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Move code to better place
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2022-03-17 10:40:31 +00:00
Daan Schutte
1c1c1f4566
Additional benchmark-storage flags ( #11004 )
...
* Fix typos
* Enable overwriting handlebars template
* Optionally name json output or disable json altogether
* Don't write to json by default
* Include block id in handlebars output
* Include warmups for write benchmarks
* PR comments
* Drop unnecessary file extension
* Use more appropriate types
* Use more appropriate error message
* More use of more appropriate types
* Rework write benchmark warmups
* Run same benchmark for both read and write
2022-03-15 14:21:16 +00:00
Bastian Köcher
42484508d7
Update clap to the latest version ( #11017 )
...
* Update clap to the latest version
Besides that it also removes some `structopt` leftovers from some docs.
* Fix compile errors
* More fixes
2022-03-12 14:31:37 +00:00
Oliver Tale-Yazdi
4c984500a7
Storage benchmarking ( #10897 )
...
* WIP
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* WIP: DB benchmarking
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* WIP
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* WIP
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Simplify code
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove old files
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove old files
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Minimize changes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add license
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove dependencies
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Extend template
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Linter
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Linter
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Beauty fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove default
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Add feature
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Remove seed
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* CI wakeup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fmt
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Review fixes
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Adding doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Adding doc
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Improve template
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Do not expose columns
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix ColumnId
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Nicer template prints
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Cleanup
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Fix json path
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Simplify `bench_write` logic
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
* Invert tx before the second commit
Signed-off-by: Oliver Tale-Yazdi <oliver.tale-yazdi@parity.io >
2022-02-25 19:30:57 +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
Qinxuan Chen
e327b734bc
use clap3 instead of structopt ( #10632 )
...
* use clap3 instead of structopt
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* format
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* update ss58-registry and revert some nits
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* Fix clippy and doc
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* update clap to 3.0.7
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* Apply review suggestions
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* remove useless option long name
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
* cargo fmt
Signed-off-by: koushiro <koushiro.cqx@gmail.com >
2022-01-24 16:28:46 +00:00
Arkadiy Paronyan
c33fb8db76
Increase default rocksdb cache ( #10659 )
2022-01-14 11:02:53 +00:00
Bastian Köcher
f3662b4bba
Happy new year 2022 ( #10573 )
2022-01-03 09:22:14 +01:00
Kian Paimani
942d1f9826
Show storage info in the raw benchmark output. ( #9588 )
2021-08-20 11:09:04 +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
Kian Paimani
3850a43323
Make election benchmarks more *memory-aware* ( #9286 )
...
* Make benchmarks a bit better with mem
* Make election benchmarks more *memory-aware*
* Fix a few errors
* cargo run --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
* Manually fix the weights
* Update lock file
* remove dupe
* Fix tests
* cargo update pwasm
Co-authored-by: Parity Bot <admin@parity.io >
2021-07-09 19:55:31 +00:00
Bastian Köcher
6a6f330412
Make wasmtime the default when the feature is enabled ( #8855 )
...
* Make wasmtime the default when the feature is enabled
* Update client/cli/src/arg_enums.rs
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
2021-05-19 08:29:32 +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
Falco Hirschenberger
249f1503e6
Add more relaxed pallet-name parsing ( #8353 )
...
Make it possbible to use the pallet's path name, with `-` separator or crate name with `_` separator.
fixes #8226
2021-03-15 14:47:02 +01:00
Shawn Tabrizi
cdc59db5b7
Make Benchmark Output Analysis Function Configurable ( #8228 )
...
* Integrate `output-analysis`
* fix test
* use default
* 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
* 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 --output-analysis=max
* Update frame/system/src/weights.rs
* dont discard value_dist and model
* feedback
Co-authored-by: Parity Benchmarking Bot <admin@parity.io >
2021-03-02 15:56:51 +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
3ac070b61e
Use Handlebars Template for Benchmark CLI Output ( #7390 )
...
* add_handlebar_template_to_benchmark
- add benchmark-cli arg to take in a handlebar-template file
* update to always use template
* rewrite writer for handlebars
* polish
* pass cmd data
* update docs
* support custom filename output
* Update command.rs
* Create frame-weight-template.hbs
* use a vector to maintain benchmark order
* fix tests
* Custom string serializer, remove feature flag
* update docs
* docs on public objects
* small fix
Co-authored-by: Ezadkiel Marbella <zadkiel.m@gmail.com >
2020-10-27 12:25:57 +00:00
Shawn Tabrizi
4e5f9fb72b
More Improvements to Benchmarking CLI + Generic WeightInfo ( #7168 )
...
* Generic WeightInfo, Output File Path
* Make `WeightInfo` generic
* Add support for header file
* fix line width
* add `--spaces` flag
* Configurable trait and struct strings
* make elections phragmen generic
* Add date to generated file
* Apply suggestions from code review
Co-authored-by: Gavin Wood <gavin@parity.io >
* fixes
* add settings metadata to output
Co-authored-by: nikvolf <nikvolf@gmail.com >
Co-authored-by: Gavin Wood <gavin@parity.io >
2020-09-23 13:56:30 +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
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
Shawn Tabrizi
2019f70768
Benchmarks Writer CLI ( #6567 )
...
* 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
* initial idea
* use all benchmarks
* broken
* working without trait
* Make work for multiple pallets
* Fix merge issues
* writer appends to file
* implement () for balances weight trait
* update name of trait
* Weights to WeightInfo
* auto trait writer
* Heap pages are configurable
* clean out runtime changes
* more clean up
* Fix string generation
* Update comments
* Update bin/node/runtime/src/lib.rs
Co-authored-by: arkpar <arkady.paronyan@gmail.com >
2020-07-06 09:34:24 +00:00
Cecile Tonglet
e3fc4f7fba
Add a feature to create automatically a random temporary directory for base path & remove Clone ( #6221 )
...
* Initial commit
Forked at: 4adac40c07
Parent branch: origin/master
* Add a feature to create automatically a temporary directory for base path
* doc fix and todos
* use parking_lot instead
* use refcell instead since we stay in the main thread
* remove Clone derives
* add test
* solving dependency issue
* clarifying doc
* conflict argument with base-path
* WIP
Forked at: 4adac40c07
Parent branch: origin/master
* revert dep deletion
* fixing test and making base_path optional
* hold basepath while the service is running
* fixes
* Update client/cli/src/params/shared_params.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/service/Cargo.toml
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/mod.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/service/src/config.rs
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
* WIP
Forked at: 4adac40c07
Parent branch: origin/master
* improve doc
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-06-10 13:13:25 +02:00
Benjamin Kampmann
be8c96adec
Relax substrate licensing scheme ( #5947 )
2020-05-15 13:21:56 +02:00
Cecile Tonglet
3da069e359
CLI: refactoring: remove Options from sc_service::Configuration's fields ( #5271 )
...
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* Rename IntoConfiguration to CliConfiguration
* Renamed into_configuration to create_configuration
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* Move keystore params to its own module
* Use in-memory keystore even for build-spec
* Enforce proper value for node name
* dev_key_seed
* Telemetry endpoints
* rustfmt
* Converted all RunCmd
* rustfmt
* Added export-blocks
* Missed something
* Removed config_path in NetworkConfiguration (not used)
* Fixed warnings
* public_addresses is used but never set, keeping it
* Merge Configuration.node and NetworkConfiguration.node_name
...because they are the same thing
* Added: import-blocks
* Adding a proc_macro to help impl SubstrateCli
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* Re-export spec_factory from sc_cli
* Re-added all the commands
* Refactored node_key_params
* Fixed previous refucktoring
* Clean-up and removed full_version()
* Renamed get_is_dev to not confuse with Configuration field
* Fixed sc-cli-derive example
* Fixing tests
* Fixing tests and removing some (will re-add later)
* Fixing more tests
* Removes the need of type parameter
* Converting bin/node and simplifying API
* Converting more
* Converting last command
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* Fixing tests and added default for WasmExecutionMethod
* Fixing stuff
* Fixed something I broke oops
* Update Cargo.lock
* Moving things around
* Convert everything to Result
* Added new macros to simplify the impl of CliConfiguration
* Added a macro to generate CliConfiguration automatically for subcommands
* Revert... too many macros (this one is not really useful)
This reverts commit 9c516dd38b40fbc420b02c1f8e61d5b2b1a4e434.
* Renamed is_dev to get_is_dev
Good enough for now
* Fixed name roles (this is plural, not singular)
* Clean-up
* Re-export NodeKeyConfig and TelemetryEndpoints from sc_service
* Improve styling/formatting
* Added copyrights
* Added doc and fixed warnings
* Added myself to code owners
* Yes it is needed according to the history
* Revert formatting
* Fixing conflict
* Updated build.rs
* Cargo.lock
* Clean-up
* Update client/cli-derive/Cargo.toml
Co-Authored-By: Seun Lanlege <seunlanlege@gmail.com >
* Fail if using proc_macro and build.rs is not set properly
* Dropped all get_ in front of methods
* Clean-up
* Fixing proc macro missing env var
* Get the configuration inside the Runtime (needed for polkadot)
* Clean-up
* Get is_dev from argument like the others
* Get chain ID instead of chain spec from shared params
* &self is passed to spec_factory/load_spec
* Wrong text
* Fix example
* Officialize macro and made a cool doc
* Renamed spec_factory to load_spec (substrate_cli_configuration)
* Removed not so useful ChainSpec
* Renamed SubstrateCLI to SubstrateCli
* Added changelog for impl_version being full now
* Renamed Runtime to Runner
* Update changelog to show example
* Removed option on database cache size
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* Fix on removal of option
* typo
* Clean-up imports
* Added info in Cargo.toml
* typo
* remarks
* Moved function for build.rs to substrate-build-script-utils
* Fixed example & test of cli-derive
* Moved function for build.rs to substrate-build-script-utils
* Renamed substrate_cli_configuration to substrate_cli oops
It implements SubstrateCli not CliConfiguration!
* Added documentation and wrapper macro
* Removed option on database cache size
* Removed option on database cache size
* Clean-up
* Reduce risk of errors due to typos
* Removed option on database cache size
* Added NOTE as suggested
* Added doc as suggested
* Fixed test
* typo
* renamed runtime to runner
* Fixed weird argument
* More commas
* Moved client/cli-derive to client/cli/derive
* Added 7 tests for the macros
* Improve error message
* Upgrade assert_cmd
* Fixing missing stuff
* Fixed unused import
* Improve SubstrateCli doc
* Applied suggestions
* Fix and clean-up imports
* Started replacing macros WIP
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* Started removing substrate_cli
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* WIP
Forked at: d6aa8e954c
Parent branch: origin/master
* fixed bug introduced while refactoring
* Renamed NetworkConfigurationParams to NetworkParams for consistency sake
* Fixed test
* Update client/cli/src/commands/runcmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/runcmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/export_blocks_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/check_block_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update bin/node/cli/src/command.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update bin/node/cli/src/command.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/export_blocks_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Revert "Update client/cli/src/commands/export_blocks_cmd.rs"
This reverts commit 5906776953392c02beac6bc0bf50f8cbe1a12a01.
* Revert "Update client/cli/src/commands/check_block_cmd.rs"
This reverts commit f705f42b7f3d732be001141afee210fe46a1ef47.
* Revert "Update client/cli/src/commands/export_blocks_cmd.rs"
This reverts commit 8d57c0550164449e6eb2d3bacb04c750c714fcea.
* Revert "Update client/cli/src/commands/runcmd.rs"
This reverts commit 93e74cf5d2e1c0dc49cdff8608d59fc40fc59338.
* Revert "Update client/cli/src/commands/runcmd.rs"
This reverts commit 11d527ba345c0d79f0d3b5b071933d95474d0614.
* Update client/cli/src/commands/export_blocks_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/import_blocks_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/purge_chain_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Changed ::sc_cli to $crate in the macro
* fixed tests
* fixed conflicts
* Fixing test
* Update client/cli/src/commands/purge_chain_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/params/pruning_params.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Remove comment as suggested
* Apply suggestion
* Update client/cli/src/commands/purge_chain_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/purge_chain_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/commands/purge_chain_cmd.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update utils/frame/benchmarking-cli/src/command.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/runner.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/runner.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/runner.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/params/pruning_params.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/params/node_key_params.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/params/network_params.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Update client/cli/src/config.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Added doc
* Fixed error introduced after applying suggestion
* Revert "Update client/cli/src/params/pruning_params.rs"
This reverts commit 0574d06a4f1efd86e94c1214420a12e7a4be0099.
* Print error
* Apply suggestions from code review
* Remove useless Results
* Fixed CI failing on polkadot approval
Co-authored-by: Seun Lanlege <seunlanlege@gmail.com >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-04-07 11:38:07 +02:00
Arkadiy Paronyan
433824511e
Reset benchmarks by removing post-genesis changes ( #5435 )
...
* Reset by removing pos-genesis changes
* CLI option for DB cache size
* Update Cargo.lock
Co-authored-by: Shawn Tabrizi <shawntabrizi@gmail.com >
2020-04-01 14:08:23 +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
0c10687022
Regression algorithm for runtime benchmarks ( #5288 )
...
* Add linregress
* Regression, initial stuff.
* More analytics
* whitespace
* Fix
* Median slopes regression algo
* Warnings
* Update to lastest benchmark changes.
* Use both algorithms temp.
* Move analysis to frame.
* Fix tests.
* Only build analysis in std
Co-authored-by: Gav Wood <gavin@parity.io >
2020-03-23 14:07:25 +01:00
Shawn Tabrizi
400a62680f
Benchmark Im Online Pallet ( #5318 )
...
* Initial benchmarking setup
* Add keystore
* validate unsigned
* Update frame/im-online/src/benchmarking.rs
Co-Authored-By: Marcio Diaz <marcio.diaz@gmail.com >
* Fix verify_unsigned benchmark
* add variable for teting the external addresss length
* Update frame/im-online/src/benchmarking.rs
Co-Authored-By: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
* Update utils/frame/benchmarking-cli/src/lib.rs
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
Co-authored-by: Marcio Diaz <marcio.diaz@gmail.com >
Co-authored-by: Kian Paimani <5588131+kianenigma@users.noreply.github.com >
Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org >
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-03-20 12:42:00 +01:00
Nikolay Volf
372745705d
create parallel tasks extension ( #5249 )
2020-03-16 16:30:39 +01:00
Arkadiy Paronyan
dc0bf210fb
ChainSpec trait ( #5185 )
...
* ChainSpec trait
* Apply suggestions from code review
Co-Authored-By: Bastian Köcher <bkchr@users.noreply.github.com >
* Added docs
* Fixed build
* Fixed build
Co-authored-by: Bastian Köcher <bkchr@users.noreply.github.com >
2020-03-12 00:00:10 +01:00
Marcio Diaz
914ce67fd7
Add dev chain as default chain for benchmarks. ( #5204 )
2020-03-11 12:44:48 +01:00
Stanislav Tkach
93ee3104e7
Use CLI to configure max instances cache ( #5177 )
...
* Use CLI to configure max instances cache
* Fix tests
* Move default value into CLI
* Use SmallVec
* Apply review comments
* Get rid of `SmallVec`
Co-authored-by: Bastian Köcher <git@kchr.de >
2020-03-11 09:43:37 +01:00
Bastian Köcher
1cfcf5cbfe
Don't include :code by default in storage proofs ( #5179 )
...
* Don't include `:code` by default in storage proofs (#5060 )
* Adds test to verify that the runtime currently is always contained in
the proof
* Start passing the runtime wasm code from the outside
* Fix compilation
* More build fixes
* Make the test work as expected now :)
* Last fixes
* Fixes benchmarks
* Review feedback
* Apply suggestions from code review
Co-Authored-By: Sergei Pepyakin <sergei@parity.io >
* Review feedback
* Fix compilation
Co-authored-by: Sergei Pepyakin <s.pepyakin@gmail.com >
* Fix compilation and change the way `RuntimeCode` works
* Fix tests
* Switch to `Cow`
Co-authored-by: Benjamin Kampmann <ben@gnunicorn.org >
Co-authored-by: Sergei Pepyakin <s.pepyakin@gmail.com >
2020-03-10 11:13:20 +01:00
Arkadiy Paronyan
9a1b3b53f2
Revert "Don't include :code by default in storage proofs ( #5060 )" ( #5136 )
...
This reverts commit 6ee39261c8 .
2020-03-05 10:55:05 +01:00
Benjamin Kampmann
6ee39261c8
Don't include :code by default in storage proofs ( #5060 )
...
* Adds test to verify that the runtime currently is always contained in
the proof
* Start passing the runtime wasm code from the outside
* Fix compilation
* More build fixes
* Make the test work as expected now :)
* Last fixes
* Fixes benchmarks
* Review feedback
* Apply suggestions from code review
Co-Authored-By: Sergei Pepyakin <sergei@parity.io >
* Review feedback
* Fix compilation
Co-authored-by: Sergei Pepyakin <s.pepyakin@gmail.com >
2020-03-04 20:26:16 +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