dfinity / canister-profiling

Collection of canister performance benchmarks
Apache License 2.0
21 stars 8 forks source link

debugging: compile sha2 with sanity checks and rtti #112

Open crusso opened 6 months ago

github-actions[bot] commented 6 months ago

Note Diffing the performance result against the published result from main branch. Unchanged benchmarks are omitted.

SHA-2

binary_size SHA-256 SHA-512 account_id neuron_id
Motoko 193_686 ($\textcolor{green}{-1.43\%}$) 267_743_355 ($\textcolor{green}{-1.94\%}$) 247_834_501 ($\textcolor{green}{-4.62\%}$) 33_636 ($\textcolor{green}{-2.14\%}$) 24_532 ($\textcolor{green}{-1.47\%}$)
Rust 538_677 ($\textcolor{red}{0.24\%}$) 82_788_763 ($\textcolor{red}{0.00\%}$) 56_793_160 ($\textcolor{red}{0.00\%}$) 47_956 ($\textcolor{red}{0.09\%}$) 50_870 ($\textcolor{red}{0.96\%}$)

Certified map

binary_size generate 10k max mem inc witness upgrade
Motoko 243_641 ($\textcolor{green}{-0.63\%}$) 4_666_119_661 ($\textcolor{green}{-2.04\%}$) 3_430_044 553_629 ($\textcolor{green}{-2.03\%}$) 407_936 ($\textcolor{red}{1.46\%}$) 274_434_719 ($\textcolor{red}{0.06\%}$)
Rust 579_504 ($\textcolor{red}{2.42\%}$) 6_409_378_412 ($\textcolor{red}{0.00\%}$) 2_228_224 1_020_591 ($\textcolor{red}{0.06\%}$) 304_778 ($\textcolor{red}{0.29\%}$) 6_025_902_205 ($\textcolor{red}{0.11\%}$)

Statistics

github-actions[bot] commented 6 months ago

Note The flamegraph link only works after you merge. Unchanged benchmarks are omitted.

Cryptographic libraries

Measure different cryptographic libraries written in both Motoko and Rust.

SHA-2

binary_size SHA-256 SHA-512 account_id neuron_id
Motoko 193_686 267_743_355 247_834_501 33_636 24_532
Rust 538_677 82_788_763 56_793_160 47_956 50_870

Certified map

binary_size generate 10k max mem inc witness upgrade
Motoko 243_641 4_666_119_661 3_430_044 553_629 407_936 274_434_719
Rust 579_504 6_409_378_412 2_228_224 1_020_591 304_778 6_025_902_205

Environment

  • dfx 0.18.0-beta.3
  • Motoko compiler 0.11.0 (source w84wh4l6-chnwnpi7-5vpqb66v-dbanzv76)
  • rustc 1.76.0 (07dca489a 2024-02-04)
  • ic-repl 0.6.2
  • ic-wasm 0.7.0