flow-go
flow-go copied to clipboard
Update to cadence v0.25.0
FVM Benchstat comparison
This branch with compared with the base branch onflow:master commit a8c05ee966c559feb1cefecde38a05a404b89ec8
The command (for i in {1..N}; do go test ./fvm --bench . --tags relic -shuffle=on --benchmem --run ^$; done) was used.
Bench tests were run a total of 10 times on each branch.
Collapsed results for better readability
| old.txt | new.txt | |||
|---|---|---|---|---|
| time/op | delta | |||
| RuntimeNFTBatchTransfer-2 | 101ms ± 3% | 108ms ± 8% | +7.26% | (p=0.000 n=10+10) |
| RuntimeTransaction/convert_int_to_string_and_concatenate_it-2 | 27.4ms ± 4% | 28.9ms ± 9% | +5.59% | (p=0.008 n=9+10) |
| RuntimeTransaction/borrow_array_from_storage-2 | 112ms ± 4% | 117ms ± 3% | +4.63% | (p=0.001 n=10+9) |
| RuntimeTransaction/get_signer_receiver-2 | 42.5ms ± 4% | 44.3ms ± 6% | +4.24% | (p=0.004 n=10+10) |
| RuntimeTransaction/call_empty_contract_function-2 | 27.6ms ± 4% | 28.6ms ± 7% | +3.70% | (p=0.011 n=10+10) |
| RuntimeTransaction/emit_event-2 | 41.3ms ± 5% | 42.7ms ± 6% | +3.59% | (p=0.019 n=10+10) |
| RuntimeTransaction/load_and_save_empty_string_on_signers_address-2 | 31.6ms ± 4% | 32.7ms ± 2% | +3.54% | (p=0.006 n=10+9) |
| RuntimeTransaction/get_signer_vault-2 | 32.3ms ± 4% | 33.4ms ± 7% | +3.46% | (p=0.023 n=10+10) |
| RuntimeTransaction/create_new_account-2 | 915ms ± 4% | 942ms ± 2% | +2.99% | (p=0.043 n=10+9) |
| RuntimeTransaction/load_and_save_long_string_on_signers_address-2 | 69.9ms ± 4% | 72.0ms ± 2% | +2.95% | (p=0.043 n=10+9) |
| RuntimeTransaction/copy_array_from_storage-2 | 116ms ± 5% | 119ms ± 5% | +2.92% | (p=0.035 n=10+10) |
| RuntimeTransaction/get_public_account-2 | 27.6ms ± 4% | 28.4ms ± 3% | +2.84% | (p=0.040 n=9+9) |
| RuntimeTransaction/reference_tx-2 | 24.1ms ± 8% | 24.2ms ± 3% | ~ | (p=0.829 n=10+8) |
| RuntimeTransaction/convert_int_to_string-2 | 26.0ms ± 6% | 26.4ms ± 4% | ~ | (p=0.863 n=9+9) |
| RuntimeTransaction/get_signer_address-2 | 24.8ms ± 6% | 25.5ms ± 5% | ~ | (p=0.133 n=10+9) |
| RuntimeTransaction/get_account_and_get_balance-2 | 505ms ± 4% | 521ms ± 5% | ~ | (p=0.089 n=10+10) |
| RuntimeTransaction/get_account_and_get_available_balance-2 | 411ms ± 4% | 423ms ± 6% | ~ | (p=0.190 n=10+10) |
| RuntimeTransaction/get_account_and_get_storage_used-2 | 32.0ms ± 4% | 33.0ms ± 9% | ~ | (p=0.123 n=10+10) |
| RuntimeTransaction/get_account_and_get_storage_capacity-2 | 376ms ± 4% | 385ms ± 4% | ~ | (p=0.113 n=10+9) |
| RuntimeTransaction/transfer_tokens-2 | 184ms ± 3% | 188ms ± 2% | ~ | (p=0.053 n=10+9) |
| computation | delta | |||
| RuntimeTransaction/reference_tx-2 | 202 ± 0% | 202 ± 0% | ~ | (all equal) |
| RuntimeTransaction/convert_int_to_string-2 | 402 ± 0% | 402 ± 0% | ~ | (all equal) |
| RuntimeTransaction/convert_int_to_string_and_concatenate_it-2 | 502 ± 0% | 502 ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_signer_address-2 | 302 ± 0% | 302 ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_public_account-2 | 402 ± 0% | 402 ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_balance-2 | 1.00k ± 0% | 1.00k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_available_balance-2 | 2.60k ± 0% | 2.60k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_storage_used-2 | 402 ± 0% | 402 ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_storage_capacity-2 | 1.30k ± 0% | 1.30k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_signer_vault-2 | 402 ± 0% | 402 ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_signer_receiver-2 | 602 ± 0% | 602 ± 0% | ~ | (all equal) |
| RuntimeTransaction/transfer_tokens-2 | 3.50k ± 0% | 3.50k ± 0% | ~ | (all equal) |
| RuntimeTransaction/load_and_save_empty_string_on_signers_address-2 | 602 ± 0% | 602 ± 0% | ~ | (all equal) |
| RuntimeTransaction/load_and_save_long_string_on_signers_address-2 | 602 ± 0% | 602 ± 0% | ~ | (all equal) |
| RuntimeTransaction/create_new_account-2 | 202 ± 0% | 202 ± 0% | ~ | (all equal) |
| RuntimeTransaction/call_empty_contract_function-2 | 402 ± 0% | 402 ± 0% | ~ | (all equal) |
| RuntimeTransaction/emit_event-2 | 602 ± 0% | 602 ± 0% | ~ | (all equal) |
| RuntimeTransaction/borrow_array_from_storage-2 | 2.60k ± 0% | 2.60k ± 0% | ~ | (all equal) |
| RuntimeTransaction/copy_array_from_storage-2 | 2.60k ± 0% | 2.60k ± 0% | ~ | (all equal) |
| interactions | delta | |||
| RuntimeTransaction/reference_tx-2 | 47.7k ± 0% | 47.7k ± 0% | ~ | (all equal) |
| RuntimeTransaction/convert_int_to_string-2 | 47.7k ± 0% | 47.7k ± 0% | ~ | (all equal) |
| RuntimeTransaction/convert_int_to_string_and_concatenate_it-2 | 47.7k ± 0% | 47.7k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_signer_address-2 | 47.7k ± 0% | 47.7k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_public_account-2 | 47.7k ± 0% | 47.7k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_balance-2 | 16.8M ± 0% | 16.8M ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_available_balance-2 | 5.28M ± 0% | 5.28M ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_storage_used-2 | 51.3k ± 0% | 51.3k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_account_and_get_storage_capacity-2 | 5.28M ± 0% | 5.28M ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_signer_vault-2 | 48.0k ± 0% | 48.0k ± 0% | ~ | (all equal) |
| RuntimeTransaction/get_signer_receiver-2 | 48.3k ± 0% | 48.3k ± 0% | ~ | (all equal) |
| RuntimeTransaction/transfer_tokens-2 | 49.1k ± 0% | 49.1k ± 0% | ~ | (all equal) |
| RuntimeTransaction/load_and_save_empty_string_on_signers_address-2 | 48.1k ± 0% | 48.1k ± 0% | ~ | (all equal) |
| RuntimeTransaction/load_and_save_long_string_on_signers_address-2 | 53.0k ± 0% | 53.0k ± 0% | ~ | (all equal) |
| RuntimeTransaction/create_new_account-2 | 8.53M ± 0% | 8.53M ± 0% | ~ | (all equal) |
| RuntimeTransaction/call_empty_contract_function-2 | 47.9k ± 0% | 47.9k ± 0% | ~ | (all equal) |
| RuntimeTransaction/emit_event-2 | 47.9k ± 0% | 47.9k ± 0% | ~ | (all equal) |
| RuntimeTransaction/borrow_array_from_storage-2 | 53.1k ± 0% | 53.1k ± 0% | ~ | (all equal) |
| RuntimeTransaction/copy_array_from_storage-2 | 53.1k ± 0% | 53.1k ± 0% | ~ | (all equal) |
| alloc/op | delta | |||
| RuntimeTransaction/load_and_save_long_string_on_signers_address-2 | 23.7MB ± 0% | 23.8MB ± 0% | +0.26% | (p=0.005 n=10+10) |
| RuntimeTransaction/reference_tx-2 | 7.59MB ± 0% | 7.61MB ± 0% | ~ | (p=0.083 n=8+10) |
| RuntimeTransaction/convert_int_to_string-2 | 8.08MB ± 1% | 8.07MB ± 0% | ~ | (p=0.684 n=10+10) |
| RuntimeTransaction/convert_int_to_string_and_concatenate_it-2 | 8.63MB ± 0% | 8.64MB ± 0% | ~ | (p=0.074 n=8+9) |
| RuntimeTransaction/get_signer_address-2 | 7.83MB ± 0% | 7.85MB ± 0% | ~ | (p=0.105 n=10+10) |
| RuntimeTransaction/get_public_account-2 | 9.29MB ± 1% | 9.26MB ± 0% | ~ | (p=0.063 n=10+10) |
| RuntimeTransaction/get_account_and_get_balance-2 | 195MB ± 0% | 195MB ± 0% | ~ | (p=1.000 n=10+10) |
| RuntimeTransaction/get_account_and_get_available_balance-2 | 145MB ± 0% | 145MB ± 0% | ~ | (p=0.436 n=10+10) |
| RuntimeTransaction/get_account_and_get_storage_used-2 | 10.5MB ± 1% | 10.5MB ± 1% | ~ | (p=0.796 n=10+10) |
| RuntimeTransaction/get_account_and_get_storage_capacity-2 | 140MB ± 0% | 140MB ± 0% | ~ | (p=0.218 n=10+10) |
| RuntimeTransaction/get_signer_vault-2 | 9.80MB ± 0% | 9.81MB ± 1% | ~ | (p=0.604 n=9+10) |
| RuntimeTransaction/get_signer_receiver-2 | 13.6MB ± 1% | 13.6MB ± 1% | ~ | (p=0.190 n=10+10) |
| RuntimeTransaction/transfer_tokens-2 | 48.0MB ± 0% | 48.0MB ± 0% | ~ | (p=0.247 n=10+10) |
| RuntimeTransaction/load_and_save_empty_string_on_signers_address-2 | 9.26MB ± 0% | 9.27MB ± 0% | ~ | (p=0.165 n=10+10) |
| RuntimeTransaction/create_new_account-2 | 216MB ± 0% | 216MB ± 0% | ~ | (p=0.971 n=10+10) |
| RuntimeTransaction/call_empty_contract_function-2 | 8.53MB ± 0% | 8.53MB ± 0% | ~ | (p=0.743 n=9+8) |
| RuntimeTransaction/emit_event-2 | 12.6MB ± 0% | 12.6MB ± 0% | ~ | (p=0.796 n=10+10) |
| RuntimeTransaction/borrow_array_from_storage-2 | 33.9MB ± 0% | 33.9MB ± 0% | ~ | (p=0.549 n=9+10) |
| RuntimeTransaction/copy_array_from_storage-2 | 45.1MB ± 0% | 45.0MB ± 0% | ~ | (p=0.436 n=10+10) |
| RuntimeNFTBatchTransfer-2 | 24.4MB ± 0% | 24.4MB ± 0% | ~ | (p=0.143 n=10+10) |
| allocs/op | delta | |||
| RuntimeTransaction/reference_tx-2 | 122k ± 0% | 122k ± 0% | ~ | (p=0.985 n=10+10) |
| RuntimeTransaction/convert_int_to_string-2 | 137k ± 0% | 137k ± 0% | ~ | (p=0.534 n=10+9) |
| RuntimeTransaction/convert_int_to_string_and_concatenate_it-2 | 151k ± 0% | 151k ± 0% | ~ | (p=0.616 n=9+10) |
| RuntimeTransaction/get_signer_address-2 | 128k ± 0% | 128k ± 0% | ~ | (p=0.753 n=10+10) |
| RuntimeTransaction/get_public_account-2 | 159k ± 0% | 159k ± 0% | ~ | (p=0.983 n=10+9) |
| RuntimeTransaction/get_account_and_get_balance-2 | 3.17M ± 0% | 3.17M ± 0% | ~ | (p=0.095 n=10+9) |
| RuntimeTransaction/get_account_and_get_available_balance-2 | 2.55M ± 0% | 2.55M ± 0% | ~ | (p=0.342 n=10+10) |
| RuntimeTransaction/get_account_and_get_storage_used-2 | 181k ± 0% | 181k ± 0% | ~ | (p=0.590 n=10+10) |
| RuntimeTransaction/get_account_and_get_storage_capacity-2 | 2.39M ± 0% | 2.39M ± 0% | ~ | (p=0.535 n=10+9) |
| RuntimeTransaction/get_signer_vault-2 | 174k ± 0% | 174k ± 0% | ~ | (p=0.732 n=10+10) |
| RuntimeTransaction/get_signer_receiver-2 | 263k ± 0% | 263k ± 0% | ~ | (p=0.118 n=10+10) |
| RuntimeTransaction/transfer_tokens-2 | 1.03M ± 0% | 1.03M ± 0% | ~ | (p=0.529 n=10+10) |
| RuntimeTransaction/load_and_save_empty_string_on_signers_address-2 | 173k ± 0% | 173k ± 0% | ~ | (p=0.324 n=10+10) |
| RuntimeTransaction/load_and_save_long_string_on_signers_address-2 | 269k ± 0% | 269k ± 0% | ~ | (p=0.251 n=10+9) |
| RuntimeTransaction/create_new_account-2 | 3.58M ± 0% | 3.58M ± 0% | ~ | (p=0.085 n=10+10) |
| RuntimeTransaction/call_empty_contract_function-2 | 139k ± 0% | 139k ± 0% | ~ | (p=0.988 n=10+10) |
| RuntimeTransaction/emit_event-2 | 184k ± 0% | 184k ± 0% | ~ | (p=0.794 n=9+10) |
| RuntimeTransaction/borrow_array_from_storage-2 | 412k ± 0% | 412k ± 0% | ~ | (p=0.072 n=10+10) |
| RuntimeTransaction/copy_array_from_storage-2 | 368k ± 0% | 368k ± 0% | ~ | (p=0.188 n=9+10) |
| RuntimeNFTBatchTransfer-2 | 332k ± 0% | 332k ± 0% | ~ | (p=0.127 n=10+10) |
no longer needed (@SupunS FYI)