-
Notifications
You must be signed in to change notification settings - Fork 48
Use Montgomery representation for Felts #1443
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Benchmark results Main vs HEAD.Base
Head
Base
Head
Base
Head
Base
Head
Base
Head
Base
Head
|
Benchmarking resultsBenchmark for program
|
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
11.010 ± 0.092 | 10.910 | 11.229 | 5.27 ± 0.09 |
cairo-native (embedded AOT) |
2.089 ± 0.030 | 2.055 | 2.151 | 1.00 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
2.157 ± 0.022 | 2.127 | 2.199 | 1.03 ± 0.02 |
Benchmark for program dict_snapshot
Open benchmarks
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
596.8 ± 5.4 | 589.7 | 605.9 | 1.00 |
cairo-native (embedded AOT) |
1756.9 ± 27.1 | 1705.5 | 1799.2 | 2.94 ± 0.05 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
1862.6 ± 16.9 | 1827.3 | 1884.5 | 3.12 ± 0.04 |
Benchmark for program factorial_2M
Open benchmarks
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
4.867 ± 0.014 | 4.851 | 4.888 | 2.75 ± 0.05 |
cairo-native (embedded AOT) |
1.771 ± 0.034 | 1.709 | 1.819 | 1.00 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
1.835 ± 0.037 | 1.780 | 1.902 | 1.04 ± 0.03 |
Benchmark for program factorial_2M_inv
Open benchmarks
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
12.934 ± 0.121 | 12.738 | 13.091 | 2.04 ± 0.02 |
cairo-native (embedded AOT) |
6.342 ± 0.023 | 6.299 | 6.389 | 1.00 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
6.373 ± 0.027 | 6.324 | 6.408 | 1.00 ± 0.01 |
Benchmark for program fib_2M
Open benchmarks
| Command | Mean [s] | Min [s] | Max [s] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
4.788 ± 0.027 | 4.746 | 4.825 | 2.72 ± 0.04 |
cairo-native (embedded AOT) |
1.760 ± 0.021 | 1.718 | 1.788 | 1.00 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
1.832 ± 0.030 | 1.773 | 1.870 | 1.04 ± 0.02 |
Benchmark for program linear_search
Open benchmarks
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
642.6 ± 6.2 | 634.5 | 654.5 | 1.00 |
cairo-native (embedded AOT) |
1786.9 ± 29.9 | 1750.6 | 1845.7 | 2.78 ± 0.05 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
1949.5 ± 25.3 | 1890.8 | 1978.8 | 3.03 ± 0.05 |
Benchmark for program logistic_map
Open benchmarks
| Command | Mean [ms] | Min [ms] | Max [ms] | Relative |
|---|---|---|---|---|
Cairo-vm (Rust, Cairo 1) |
538.5 ± 8.2 | 521.4 | 547.5 | 1.00 |
cairo-native (embedded AOT) |
1800.3 ± 20.2 | 1770.1 | 1823.5 | 3.34 ± 0.06 |
cairo-native (embedded JIT using LLVM's ORC Engine) |
1947.6 ± 33.0 | 1913.9 | 2010.2 | 3.62 ± 0.08 |
89ef937 to
72ea00c
Compare
|
✅ Code is now correctly formatted. |
e7071a5 to
b2f98ac
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #1443 +/- ##
==========================================
+ Coverage 79.52% 79.55% +0.02%
==========================================
Files 108 109 +1
Lines 26667 27121 +454
==========================================
+ Hits 21208 21576 +368
- Misses 5459 5545 +86 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Ran a benchmark of 1000 blocks (1470000-1471000) using this commit: 685735f. The results only show a clear regression in native's performance compared to previous versions of it. This is probably related to greater use of syscalls, and other non-felt related libfuncs, which made this change to have not positive effects but rather negative ones over natives performance. |
Use Montgomery representation for Felts
Closes #NA
Introduces Breaking Changes?
Yes/No.
starknet-blocks.ymlworkflow to use these PRs.These PRs should be merged after this one right away, in that order.
Checklist