New Weights for All Pallets
Re-ran the weights for all pallets using the dedicated benchmarking machine.
Following up with checking changes from: https://github.com/paritytech/substrate/pull/11806
Also related: https://github.com/paritytech/polkadot/pull/6025
Comparison: https://weights.tasty.limo/compare?unit=weight&ignore_errors=true&threshold=10&method=guess-worst&repo=substrate&old=master&new=shawntabrizi-weights&path_pattern=frame/*/src/weights.rs
updated this for all of em
A bunch of zero weight benchmarks got fixed:
| name | old | new | rel |
|---|---|---|---|
| pallet_elections_phragmen/clean_defunct_voters | 0 | 289934676000 | inf |
| pallet_assets/destroy | 0 | 73398653000 | inf |
| pallet_elections_phragmen/election_phragmen | 0 | 21641196000 | inf |
| pallet_fast_unstake/on_idle_check | 0 | 13568572000 | inf |
| pallet_election_provider_multi_phase/submit_unsigned | 0 | 5586779000 | inf |
| pallet_election_provider_multi_phase/feasibility_check | 0 | 5034507000 | inf |
| pallet_uniques/destroy | 0 | 2434694000 | inf |
| pallet_contracts/seal_hash_keccak_256_per_kb | 0 | 316719000 | inf |
| pallet_contracts/seal_hash_sha2_256_per_kb | 0 | 304826000 | inf |
| pallet_contracts/seal_hash_blake2_256_per_kb | 0 | 294551000 | inf |
| pallet_contracts/seal_hash_blake2_128_per_kb | 0 | 290491000 | inf |
| pallet_contracts/seal_instantiate | 0 | 253993000 | inf |
| pallet_alliance/disband | 0 | 253490000 | inf |
| pallet_contracts/seal_call | 0 | 248160000 | inf |
| pallet_contracts/seal_set_code_hash | 0 | 247325000 | inf |
| pallet_contracts/seal_delegate_call | 0 | 247118000 | inf |
| pallet_transaction_storage/store | 0 | 46562000 | inf |
| pallet_uniques/redeposit | 0 | 23185000 | inf |
| pallet_collective/set_members | 0 | 18850000 | inf |
| pallet_alliance/remove_unscrupulous_items | 0 | 17069000 | inf |
| pallet_alliance/add_unscrupulous_items | 0 | 16979000 | inf |
| frame_system/remark_with_event | 0 | 14717000 | inf |
| pallet_bounties/spend_funds | 0 | 8589000 | inf |
| pallet_state_trie_migration/process_top_key | 0 | 5693000 | inf |
| frame_system/kill_prefix | 0 | 5473000 | inf |
| frame_system/kill_storage | 0 | 3717000 | inf |
| frame_system/set_storage | 0 | 3714000 | inf |
| frame_benchmarking/storage_write | 0 | 153000 | inf |
| frame_benchmarking/storage_read | 0 | 132000 | inf |
There are definitely still potential problems with some of the base weights:
| name | old | new | rel |
|---|---|---|---|
| pallet_election_provider_multi_phase/create_snapshot_internal | 3186000 | 558496000 | 17529% |
| pallet_election_provider_multi_phase/elect_queued | 137653000 | 1289552000 | 936% |
| pallet_contracts/instantiate_with_code | 294077000 | 2014705000 | 685% |
| frame_system/remark | 1000000 | 3850000 | 385% |
| pallet_membership/clear_prime | 1593000 | 5471000 | 343% |
| pallet_contracts/seal_deposit_event_per_topic_and_kb | 478106000 | 1167872000 | 244% |
| pallet_ranked_collective/cleanup_poll | 6188000 | 15404000 | 248% |
| pallet_ranked_collective/promote_member | 11936000 | 26406000 | 221% |
| pallet_gilt/pursue_target_per_queue | 14944000 | 32237000 | 215% |
| pallet_ranked_collective/remove_member | 16855000 | 35359000 | 209% |
| pallet_ranked_collective/demote_member | 17582000 | 35407000 | 201% |
| pallet_membership/set_prime | 4869000 | 9453000 | 194% |
| pallet_contracts/on_initialize_per_queue_item | 14172000 | 3055000 | 21% |
| pallet_multisig/as_multi_approve | 25524000 | 41675000 | 163% |
| pallet_identity/set_subs_old | 29623000 | 11471000 | 38% |
| pallet_treasury/on_initialize_proposals | 25805000 | 41429000 | 160% |
| pallet_identity/clear_identity | 34370000 | 55131000 | 160% |
| pallet_identity/set_subs_new | 30012000 | 11888000 | 39% |
| pallet_identity/kill_identity | 44988000 | 67583000 | 150% |
| pallet_membership/add_member | 15318000 | 23028000 | 150% |
And with db reads (every benchmark where the weights changed):
| name | old | new |
|---|---|---|
| pallet_elections_phragmen/clean_defunct_voters | 4 | 15004 |
| pallet_assets/destroy | 5 | 10505 |
| pallet_elections_phragmen/election_phragmen | 280 | 1986 |
| pallet_fast_unstake/on_idle_check | 585 | 1352 |
| pallet_alliance/disband | 4 | 154 |
| pallet_contracts/seal_take_storage_per_kb | 52 | 8 |
| pallet_contracts/seal_set_storage_per_old_kb | 52 | 8 |
| pallet_contracts/seal_set_storage_per_new_kb | 52 | 8 |
| pallet_contracts/seal_contains_storage_per_kb | 51 | 7 |
| pallet_contracts/seal_clear_storage_per_kb | 51 | 7 |
| pallet_contracts/seal_get_storage_per_kb | 51 | 8 |
| pallet_contracts/seal_set_code_hash | 0 | 6 |
| pallet_contracts/seal_delegate_call | 0 | 6 |
| pallet_staking/payout_stakers_alive_staked | 15 | 10 |
| pallet_staking/new_era | 261 | 257 |
| pallet_staking/payout_stakers_dead_controller | 12 | 9 |
| pallet_transaction_storage/store | 6 | 4 |
| pallet_contracts/seal_instantiate | 8 | 6 |
| pallet_alliance/remove_unscrupulous_items | 2 | 0 |
| pallet_alliance/add_unscrupulous_items | 2 | 0 |
| pallet_ranked_collective/cleanup_poll | 1 | 2 |
| pallet_nomination_pools/withdraw_unbonded_kill | 19 | 20 |
| pallet_nomination_pools/nominate | 12 | 13 |
| pallet_multisig/cancel_as_multi | 2 | 1 |
| pallet_multisig/as_multi_complete | 3 | 2 |
| pallet_gilt/pursue_target_per_item | 3 | 2 |
| pallet_contracts/seal_weight_to_fee | 7 | 6 |
| pallet_contracts/seal_transfer | 7 | 6 |
| pallet_contracts/seal_take_storage | 7 | 6 |
| pallet_contracts/seal_random | 7 | 6 |
| pallet_contracts/seal_clear_storage | 7 | 6 |
| pallet_contracts/seal_call | 7 | 6 |
| pallet_contracts/seal_balance | 7 | 6 |
| pallet_alliance/vote | 3 | 2 |
And with db writes (also every benchmark where the weights changed):
| name | old | new |
|---|---|---|
| pallet_elections_phragmen/clean_defunct_voters | 0 | 15000 |
| pallet_assets/destroy | 2 | 10502 |
| pallet_uniques/destroy | 4 | 2004 |
| pallet_contracts/seal_clear_storage_per_kb | 49 | 4 |
| pallet_contracts/seal_take_storage_per_kb | 49 | 5 |
| pallet_contracts/seal_set_storage_per_old_kb | 50 | 6 |
| pallet_contracts/seal_set_storage_per_new_kb | 50 | 6 |
| pallet_elections_phragmen/election_phragmen | 0 | 6 |
| pallet_staking/payout_stakers_alive_staked | 6 | 3 |
| pallet_contracts/seal_set_code_hash | 0 | 3 |
| pallet_contracts/seal_delegate_call | 0 | 3 |
| pallet_contracts/seal_instantiate | 5 | 3 |
| pallet_alliance/remove_unscrupulous_items | 2 | 0 |
| pallet_alliance/add_unscrupulous_items | 2 | 0 |
| pallet_whitelist/dispatch_whitelisted_call_with_preimage | 3 | 2 |
| pallet_staking/payout_stakers_dead_controller | 3 | 2 |
| pallet_nomination_pools/withdraw_unbonded_kill | 16 | 17 |
| pallet_multisig/cancel_as_multi | 2 | 1 |
| pallet_multisig/as_multi_complete | 3 | 2 |
| pallet_identity/kill_identity | 3 | 2 |
| pallet_identity/clear_identity | 2 | 1 |
| pallet_gilt/pursue_target_per_item | 3 | 2 |
| pallet_contracts/seal_transfer | 4 | 3 |
| pallet_contracts/seal_take_storage | 4 | 3 |
| pallet_contracts/seal_clear_storage | 4 | 3 |
| pallet_contracts/on_initialize_per_queue_item | 1 | 0 |
updated now including https://github.com/paritytech/substrate/pull/12482
everything looks a little slower, but i dont think that is a big issue
Okay thanks. Looks like this fixes the weird READ/WRITE numbers discovered in https://github.com/paritytech/polkadot/pull/6173 (SWC).
SWC for this MR.
@ggwpez @koute lets get this one merged
bot merge