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
488 stars 133 forks source link

Hyper Threading Crate #1676

Closed pefontana closed 4 months ago

pefontana commented 4 months ago

TITLE

Description

TODOS:

Description of the pull request changes and motivation.

Checklist

codecov[bot] commented 4 months ago

Codecov Report

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

Project coverage is 96.70%. Comparing base (c4d2108) to head (8ec9c66).

Additional details and impacted files ```diff @@ Coverage Diff @@ ## main #1676 +/- ## ======================================= Coverage 96.70% 96.70% ======================================= Files 95 95 Lines 38151 38151 ======================================= Hits 36894 36894 Misses 1257 1257 ```

: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.310 ± 0.044 2.243 2.378 1.01 ± 0.04
head big_factorial 2.292 ± 0.081 2.238 2.517 1.00
Command Mean [s] Min [s] Max [s] Relative
base big_fibonacci 2.265 ± 0.017 2.245 2.293 1.00
head big_fibonacci 2.284 ± 0.014 2.268 2.312 1.01 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base blake2s_integration_benchmark 8.484 ± 0.143 8.307 8.654 1.00
head blake2s_integration_benchmark 8.506 ± 0.149 8.298 8.659 1.00 ± 0.02
Command Mean [s] Min [s] Max [s] Relative
base compare_arrays_200000 2.356 ± 0.035 2.329 2.449 1.01 ± 0.02
head compare_arrays_200000 2.337 ± 0.022 2.314 2.389 1.00
Command Mean [s] Min [s] Max [s] Relative
base dict_integration_benchmark 1.468 ± 0.013 1.453 1.494 1.01 ± 0.01
head dict_integration_benchmark 1.455 ± 0.011 1.441 1.473 1.00
Command Mean [s] Min [s] Max [s] Relative
base field_arithmetic_get_square_benchmark 1.311 ± 0.031 1.293 1.394 1.01 ± 0.02
head field_arithmetic_get_square_benchmark 1.300 ± 0.009 1.288 1.315 1.00
Command Mean [s] Min [s] Max [s] Relative
base integration_builtins 8.489 ± 0.150 8.285 8.661 1.00
head integration_builtins 8.513 ± 0.144 8.290 8.626 1.00 ± 0.02
Command Mean [s] Min [s] Max [s] Relative
base keccak_integration_benchmark 8.698 ± 0.152 8.524 8.879 1.00 ± 0.02
head keccak_integration_benchmark 8.668 ± 0.119 8.580 8.898 1.00
Command Mean [s] Min [s] Max [s] Relative
base linear_search 2.352 ± 0.014 2.337 2.380 1.00
head linear_search 2.356 ± 0.018 2.331 2.392 1.00 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base math_cmp_and_pow_integration_benchmark 1.574 ± 0.011 1.560 1.595 1.00
head math_cmp_and_pow_integration_benchmark 1.584 ± 0.020 1.561 1.634 1.01 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base math_integration_benchmark 1.458 ± 0.024 1.431 1.511 1.01 ± 0.02
head math_integration_benchmark 1.441 ± 0.007 1.428 1.451 1.00
Command Mean [s] Min [s] Max [s] Relative
base memory_integration_benchmark 1.265 ± 0.014 1.248 1.284 1.00
head memory_integration_benchmark 1.284 ± 0.038 1.245 1.371 1.01 ± 0.03
Command Mean [s] Min [s] Max [s] Relative
base operations_with_data_structures_benchmarks 1.624 ± 0.015 1.613 1.664 1.01 ± 0.01
head operations_with_data_structures_benchmarks 1.614 ± 0.010 1.595 1.627 1.00
Command Mean [ms] Min [ms] Max [ms] Relative
base pedersen 595.1 ± 1.6 593.2 597.6 1.00
head pedersen 595.3 ± 7.1 590.5 614.7 1.00 ± 0.01
Command Mean [s] Min [s] Max [s] Relative
base poseidon_integration_benchmark 1.003 ± 0.006 0.993 1.010 1.00 ± 0.01
head poseidon_integration_benchmark 0.999 ± 0.003 0.993 1.003 1.00
Command Mean [s] Min [s] Max [s] Relative
base secp_integration_benchmark 1.869 ± 0.010 1.856 1.888 1.00
head secp_integration_benchmark 1.876 ± 0.011 1.864 1.898 1.00 ± 0.01
Command Mean [ms] Min [ms] Max [ms] Relative
base set_integration_benchmark 731.0 ± 5.7 726.3 745.9 1.00 ± 0.01
head set_integration_benchmark 728.6 ± 2.9 725.8 735.0 1.00
Command Mean [s] Min [s] Max [s] Relative
base uint256_integration_benchmark 4.702 ± 0.112 4.599 4.929 1.01 ± 0.03
head uint256_integration_benchmark 4.668 ± 0.035 4.603 4.720 1.00