Skip to content

feat: twisted Edwards curve support with new execution #1858

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

Open
wants to merge 73 commits into
base: feat/ed25519
Choose a base branch
from

Conversation

Avaneesh-axiom
Copy link
Contributor

Similar to #1255 but incorporated changes to tracegen design.

jonathanpwang and others added 30 commits June 9, 2025 21:31
- rename remaining structs
- switch from num-bigint-dig to num-bigint
A bug involving opcode collisions between short Weierstrass and twisted Edwards curves was found.

To fix this, CurveConfig was rewritten and separate opcodes were given to the two types of curves.
Copy link

codspeed-hq bot commented Jul 11, 2025

CodSpeed WallTime Performance Report

Merging #1858 will degrade performances by 10.09%

Comparing feat/edwards-curve-new-execution (16a8d32) with feat/new-execution (b371303)1

⚠️ Unknown Walltime execution environment detected

Using the Walltime instrument on standard Hosted Runners will lead to inconsistent data.

For the most accurate results, we recommend using CodSpeed Macro Runners: bare-metal machines fine-tuned for performance measurement consistency.

Summary

⚡ 3 improvements
❌ 1 regressions
✅ 23 untouched benchmarks

⚠️ Please fix the performance issues or acknowledge them on CodSpeed.

Benchmarks breakdown

Benchmark BASE HEAD Change
benchmark_execute[bubblesort] 38.2 ms 34 ms +12.46%
benchmark_execute[factorial_iterative_u256] 152.1 ms 169.1 ms -10.09%
benchmark_execute[keccak256] 37.6 ms 33.9 ms +10.94%
benchmark_leaf_verifier_execute_preflight 2.7 s 2.1 s +30.12%

Footnotes

  1. No successful run was found on feat/ed25519 (b371303) during the generation of this report, so feat/new-execution (f4a011c) was used instead as the comparison base. There might be some changes unrelated to this pull request in this report.

This comment has been minimized.

This comment has been minimized.

@Avaneesh-axiom Avaneesh-axiom force-pushed the feat/edwards-curve-new-execution branch from 5ab59be to 0f4b443 Compare July 16, 2025 20:41
@Avaneesh-axiom Avaneesh-axiom force-pushed the feat/edwards-curve-new-execution branch from 0f4b443 to 831d8a4 Compare July 16, 2025 20:42

This comment has been minimized.

@Avaneesh-axiom Avaneesh-axiom force-pushed the feat/edwards-curve-new-execution branch from 5b3127b to be1e5ec Compare August 10, 2025 01:30
@Avaneesh-axiom Avaneesh-axiom force-pushed the feat/edwards-curve-new-execution branch from efd381d to 1849d45 Compare August 10, 2025 04:21
Copy link

group app.proof_time_ms app.cycles app.cells_used leaf.proof_time_ms leaf.cycles leaf.cells_used
verify_fibair 2,144 322,688 18,750,180 - - -
fibonacci 2,423 3,000,420 51,504,507 - - -
regex 7,657 8,217,194 164,734,992 - - -
ecrecover 1,422 280,974 8,866,654 - - -
pairing 3,805 3,765,878 98,834,293 - - -

Commit: 16a8d32

Benchmark Workflow

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants