lambdaclass / cairo-vm

cairo-vm is a Rust implementation of the Cairo VM. Cairo (CPU Algebraic Intermediate Representation) is a programming language for writing provable programs, where one party can prove to another that a certain computation was executed correctly without the need for this party to re-execute the same program.
https://lambdaclass.github.io/cairo-vm
Apache License 2.0
514 stars 144 forks source link

Remove unused error variants #1760

Open fmoletta opened 4 months ago

github-actions[bot] commented 4 months ago
**Hyper Thereading Benchmark results**

hyperfine -r 2 -n "hyper_threading_main threads: 1" 'RAYON_NUM_THREADS=1 ./hyper_threading_main' -n "hyper_threading_pr threads: 1" 'RAYON_NUM_THREADS=1 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 1
  Time (mean ± σ):     27.569 s ±  0.011 s    [User: 26.833 s, System: 0.734 s]
  Range (min … max):   27.561 s … 27.577 s    2 runs

Benchmark 2: hyper_threading_pr threads: 1
  Time (mean ± σ):     27.579 s ±  0.010 s    [User: 26.742 s, System: 0.836 s]
  Range (min … max):   27.572 s … 27.586 s    2 runs

Summary
  'hyper_threading_main threads: 1' ran
    1.00 ± 0.00 times faster than 'hyper_threading_pr threads: 1'

hyperfine -r 2 -n "hyper_threading_main threads: 2" 'RAYON_NUM_THREADS=2 ./hyper_threading_main' -n "hyper_threading_pr threads: 2" 'RAYON_NUM_THREADS=2 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 2
  Time (mean ± σ):     14.852 s ±  0.027 s    [User: 27.163 s, System: 0.748 s]
  Range (min … max):   14.833 s … 14.871 s    2 runs

Benchmark 2: hyper_threading_pr threads: 2
  Time (mean ± σ):     14.939 s ±  0.027 s    [User: 27.483 s, System: 0.789 s]
  Range (min … max):   14.920 s … 14.958 s    2 runs

Summary
  'hyper_threading_main threads: 2' ran
    1.01 ± 0.00 times faster than 'hyper_threading_pr threads: 2'

hyperfine -r 2 -n "hyper_threading_main threads: 4" 'RAYON_NUM_THREADS=4 ./hyper_threading_main' -n "hyper_threading_pr threads: 4" 'RAYON_NUM_THREADS=4 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 4
  Time (mean ± σ):     10.736 s ±  0.041 s    [User: 39.141 s, System: 0.910 s]
  Range (min … max):   10.707 s … 10.765 s    2 runs

Benchmark 2: hyper_threading_pr threads: 4
  Time (mean ± σ):     10.897 s ±  0.222 s    [User: 39.280 s, System: 0.967 s]
  Range (min … max):   10.740 s … 11.054 s    2 runs

Summary
  'hyper_threading_main threads: 4' ran
    1.02 ± 0.02 times faster than 'hyper_threading_pr threads: 4'

hyperfine -r 2 -n "hyper_threading_main threads: 6" 'RAYON_NUM_THREADS=6 ./hyper_threading_main' -n "hyper_threading_pr threads: 6" 'RAYON_NUM_THREADS=6 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 6
  Time (mean ± σ):     10.889 s ±  0.127 s    [User: 39.448 s, System: 1.039 s]
  Range (min … max):   10.799 s … 10.979 s    2 runs

Benchmark 2: hyper_threading_pr threads: 6
  Time (mean ± σ):     10.949 s ±  0.003 s    [User: 39.418 s, System: 1.005 s]
  Range (min … max):   10.947 s … 10.951 s    2 runs

Summary
  'hyper_threading_main threads: 6' ran
    1.01 ± 0.01 times faster than 'hyper_threading_pr threads: 6'

hyperfine -r 2 -n "hyper_threading_main threads: 8" 'RAYON_NUM_THREADS=8 ./hyper_threading_main' -n "hyper_threading_pr threads: 8" 'RAYON_NUM_THREADS=8 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 8
  Time (mean ± σ):     10.806 s ±  0.200 s    [User: 39.414 s, System: 1.051 s]
  Range (min … max):   10.664 s … 10.947 s    2 runs

Benchmark 2: hyper_threading_pr threads: 8
  Time (mean ± σ):     10.680 s ±  0.144 s    [User: 39.629 s, System: 1.052 s]
  Range (min … max):   10.578 s … 10.782 s    2 runs

Summary
  'hyper_threading_pr threads: 8' ran
    1.01 ± 0.02 times faster than 'hyper_threading_main threads: 8'

hyperfine -r 2 -n "hyper_threading_main threads: 16" 'RAYON_NUM_THREADS=16 ./hyper_threading_main' -n "hyper_threading_pr threads: 16" 'RAYON_NUM_THREADS=16 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 16
  Time (mean ± σ):     10.546 s ±  0.026 s    [User: 39.867 s, System: 1.124 s]
  Range (min … max):   10.527 s … 10.564 s    2 runs

Benchmark 2: hyper_threading_pr threads: 16
  Time (mean ± σ):     10.765 s ±  0.302 s    [User: 39.924 s, System: 1.095 s]
  Range (min … max):   10.551 s … 10.978 s    2 runs

Summary
  'hyper_threading_main threads: 16' ran
    1.02 ± 0.03 times faster than 'hyper_threading_pr threads: 16'
github-actions[bot] commented 4 months ago
**Hyper Thereading Benchmark results**

hyperfine -r 2 -n "hyper_threading_main threads: 1" 'RAYON_NUM_THREADS=1 ./hyper_threading_main' -n "hyper_threading_pr threads: 1" 'RAYON_NUM_THREADS=1 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 1
  Time (mean ± σ):     27.554 s ±  0.051 s    [User: 26.755 s, System: 0.798 s]
  Range (min … max):   27.518 s … 27.590 s    2 runs

Benchmark 2: hyper_threading_pr threads: 1
  Time (mean ± σ):     27.357 s ±  0.489 s    [User: 26.541 s, System: 0.813 s]
  Range (min … max):   27.011 s … 27.703 s    2 runs

Summary
  'hyper_threading_pr threads: 1' ran
    1.01 ± 0.02 times faster than 'hyper_threading_main threads: 1'

hyperfine -r 2 -n "hyper_threading_main threads: 2" 'RAYON_NUM_THREADS=2 ./hyper_threading_main' -n "hyper_threading_pr threads: 2" 'RAYON_NUM_THREADS=2 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 2
  Time (mean ± σ):     14.808 s ±  0.009 s    [User: 26.988 s, System: 0.826 s]
  Range (min … max):   14.802 s … 14.814 s    2 runs

Benchmark 2: hyper_threading_pr threads: 2
  Time (mean ± σ):     14.539 s ±  0.063 s    [User: 26.845 s, System: 0.760 s]
  Range (min … max):   14.494 s … 14.584 s    2 runs

Summary
  'hyper_threading_pr threads: 2' ran
    1.02 ± 0.00 times faster than 'hyper_threading_main threads: 2'

hyperfine -r 2 -n "hyper_threading_main threads: 4" 'RAYON_NUM_THREADS=4 ./hyper_threading_main' -n "hyper_threading_pr threads: 4" 'RAYON_NUM_THREADS=4 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 4
  Time (mean ± σ):     11.075 s ±  0.395 s    [User: 39.134 s, System: 0.956 s]
  Range (min … max):   10.796 s … 11.355 s    2 runs

Benchmark 2: hyper_threading_pr threads: 4
  Time (mean ± σ):     11.368 s ±  0.029 s    [User: 38.572 s, System: 0.946 s]
  Range (min … max):   11.347 s … 11.388 s    2 runs

Summary
  'hyper_threading_main threads: 4' ran
    1.03 ± 0.04 times faster than 'hyper_threading_pr threads: 4'

hyperfine -r 2 -n "hyper_threading_main threads: 6" 'RAYON_NUM_THREADS=6 ./hyper_threading_main' -n "hyper_threading_pr threads: 6" 'RAYON_NUM_THREADS=6 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 6
  Time (mean ± σ):     10.879 s ±  0.043 s    [User: 39.318 s, System: 1.016 s]
  Range (min … max):   10.848 s … 10.909 s    2 runs

Benchmark 2: hyper_threading_pr threads: 6
  Time (mean ± σ):     10.752 s ±  0.173 s    [User: 38.509 s, System: 0.988 s]
  Range (min … max):   10.630 s … 10.874 s    2 runs

Summary
  'hyper_threading_pr threads: 6' ran
    1.01 ± 0.02 times faster than 'hyper_threading_main threads: 6'

hyperfine -r 2 -n "hyper_threading_main threads: 8" 'RAYON_NUM_THREADS=8 ./hyper_threading_main' -n "hyper_threading_pr threads: 8" 'RAYON_NUM_THREADS=8 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 8
  Time (mean ± σ):     10.918 s ±  0.005 s    [User: 39.774 s, System: 0.999 s]
  Range (min … max):   10.915 s … 10.922 s    2 runs

Benchmark 2: hyper_threading_pr threads: 8
  Time (mean ± σ):     10.411 s ±  0.092 s    [User: 39.141 s, System: 1.071 s]
  Range (min … max):   10.346 s … 10.476 s    2 runs

Summary
  'hyper_threading_pr threads: 8' ran
    1.05 ± 0.01 times faster than 'hyper_threading_main threads: 8'

hyperfine -r 2 -n "hyper_threading_main threads: 16" 'RAYON_NUM_THREADS=16 ./hyper_threading_main' -n "hyper_threading_pr threads: 16" 'RAYON_NUM_THREADS=16 ./hyper_threading_pr'
Benchmark 1: hyper_threading_main threads: 16
  Time (mean ± σ):     10.958 s ±  0.041 s    [User: 39.849 s, System: 1.066 s]
  Range (min … max):   10.929 s … 10.987 s    2 runs

Benchmark 2: hyper_threading_pr threads: 16
  Time (mean ± σ):     10.547 s ±  0.203 s    [User: 39.376 s, System: 1.111 s]
  Range (min … max):   10.403 s … 10.690 s    2 runs

Summary
  'hyper_threading_pr threads: 16' ran
    1.04 ± 0.02 times faster than 'hyper_threading_main threads: 16'
codecov[bot] commented 4 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 94.79%. Comparing base (9ef2ab8) to head (f41b117).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #1760 +/- ## ======================================= Coverage 94.79% 94.79% ======================================= Files 101 101 Lines 38723 38723 ======================================= Hits 36709 36709 Misses 2014 2014 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.

github-actions[bot] commented 4 months ago

Benchmark Results for unmodified programs :rocket:

Command Mean [s] Min [s] Max [s] Relative
base big_factorial 2.078 ± 0.035 2.061 2.173 1.01 ± 0.02
head big_factorial 2.065 ± 0.015 2.054 2.094 1.00
Command Mean [s] Min [s] Max [s] Relative
base big_fibonacci 2.024 ± 0.072 1.978 2.211 1.01 ± 0.04
head big_fibonacci 2.008 ± 0.005 2.001 2.017 1.00
Command Mean [s] Min [s] Max [s] Relative
base blake2s_integration_benchmark 7.590 ± 0.162 7.389 7.778 1.00 ± 0.03
head blake2s_integration_benchmark 7.589 ± 0.103 7.465 7.783 1.00
Command Mean [s] Min [s] Max [s] Relative
base compare_arrays_200000 2.125 ± 0.012 2.109 2.153 1.00
head compare_arrays_200000 2.162 ± 0.090 2.123 2.417 1.02 ± 0.04
Command Mean [s] Min [s] Max [s] Relative
base dict_integration_benchmark 1.408 ± 0.004 1.404 1.418 1.00
head dict_integration_benchmark 1.419 ± 0.019 1.405 1.470 1.01 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base field_arithmetic_get_square_benchmark 1.298 ± 0.041 1.269 1.412 1.00 ± 0.04
head field_arithmetic_get_square_benchmark 1.296 ± 0.029 1.274 1.374 1.00
Command Mean [s] Min [s] Max [s] Relative
base integration_builtins 7.753 ± 0.359 7.443 8.542 1.01 ± 0.06
head integration_builtins 7.700 ± 0.227 7.534 8.316 1.00
Command Mean [s] Min [s] Max [s] Relative
base keccak_integration_benchmark 7.886 ± 0.255 7.634 8.436 1.00 ± 0.04
head keccak_integration_benchmark 7.851 ± 0.154 7.721 8.223 1.00
Command Mean [s] Min [s] Max [s] Relative
base linear_search 2.067 ± 0.006 2.060 2.074 1.00
head linear_search 2.093 ± 0.028 2.076 2.170 1.01 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base math_cmp_and_pow_integration_benchmark 1.696 ± 0.005 1.689 1.704 1.00
head math_cmp_and_pow_integration_benchmark 1.705 ± 0.034 1.686 1.800 1.01 ± 0.02
Command Mean [s] Min [s] Max [s] Relative
base math_integration_benchmark 1.604 ± 0.003 1.600 1.611 1.00
head math_integration_benchmark 1.635 ± 0.062 1.598 1.799 1.02 ± 0.04
Command Mean [s] Min [s] Max [s] Relative
base memory_integration_benchmark 1.192 ± 0.004 1.187 1.198 1.00
head memory_integration_benchmark 1.202 ± 0.009 1.195 1.226 1.01 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base operations_with_data_structures_benchmarks 1.820 ± 0.032 1.801 1.910 1.00 ± 0.02
head operations_with_data_structures_benchmarks 1.818 ± 0.006 1.807 1.830 1.00
Command Mean [ms] Min [ms] Max [ms] Relative
base pedersen 516.7 ± 1.7 514.1 519.2 1.00
head pedersen 518.9 ± 1.4 517.0 521.2 1.00 ± 0.00
Command Mean [ms] Min [ms] Max [ms] Relative
base poseidon_integration_benchmark 946.9 ± 7.8 941.7 967.1 1.00
head poseidon_integration_benchmark 956.0 ± 17.4 944.8 998.8 1.01 ± 0.02
Command Mean [s] Min [s] Max [s] Relative
base secp_integration_benchmark 1.842 ± 0.005 1.836 1.850 1.00
head secp_integration_benchmark 1.868 ± 0.012 1.859 1.897 1.01 ± 0.01
Command Mean [ms] Min [ms] Max [ms] Relative
base set_integration_benchmark 664.0 ± 1.3 662.9 667.2 1.03 ± 0.01
head set_integration_benchmark 643.0 ± 4.5 639.5 654.5 1.00
Command Mean [s] Min [s] Max [s] Relative
base uint256_integration_benchmark 4.188 ± 0.044 4.114 4.227 1.00
head uint256_integration_benchmark 4.188 ± 0.020 4.156 4.215 1.00 ± 0.01