Skip to content

Conversation

@pablodeymo
Copy link
Contributor

@pablodeymo pablodeymo commented Nov 5, 2025

Motivation

There were newer versions of lambdaworks. We want to upgrade this dependency.

Description

Operations like division and now returns and error, so we have to handle it properly.

Also BN254AtePairing::compute_batch changed its return error.

Closes #issue_number

@github-actions github-actions bot added the levm Lambda EVM implementation label Nov 5, 2025
@github-actions
Copy link

github-actions bot commented Nov 5, 2025

Lines of code report

Total lines added: 7
Total lines removed: 0
Total lines changed: 7

Detailed view
+------------------------------------------+-------+------+
| File                                     | Lines | Diff |
+------------------------------------------+-------+------+
| ethrex/crates/vm/levm/src/precompiles.rs | 1652  | +7   |
+------------------------------------------+-------+------+

@github-actions
Copy link

github-actions bot commented Nov 5, 2025

Benchmark Results Comparison

Benchmark Results: MstoreBench

Command Mean [s] Min [s] Max [s] Relative
main_revm_MstoreBench 291.5 ± 86.7 261.0 538.2 1.23 ± 0.37
main_levm_MstoreBench 237.6 ± 1.8 235.2 240.5 1.00
pr_revm_MstoreBench 262.3 ± 1.3 260.8 264.7 1.10 ± 0.01
Detailed Results

Benchmark Results: BubbleSort

Command Mean [s] Min [s] Max [s] Relative
main_revm_BubbleSort 2.943 ± 0.022 2.925 3.002 1.00
main_levm_BubbleSort 3.185 ± 0.023 3.169 3.248 1.08 ± 0.01
pr_revm_BubbleSort 2.946 ± 0.027 2.924 3.017 1.00 ± 0.01
pr_levm_BubbleSort 3.191 ± 0.019 3.178 3.238 1.08 ± 0.01

Benchmark Results: ERC20Approval

Command Mean [s] Min [s] Max [s] Relative
main_revm_ERC20Approval 1.019 ± 0.164 0.959 1.486 1.05 ± 0.17
main_levm_ERC20Approval 1.153 ± 0.023 1.137 1.215 1.19 ± 0.03
pr_revm_ERC20Approval 0.967 ± 0.010 0.954 0.987 1.00
pr_levm_ERC20Approval 1.162 ± 0.023 1.144 1.221 1.20 ± 0.03

Benchmark Results: ERC20Mint

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_ERC20Mint 131.9 ± 0.9 131.1 134.1 1.01 ± 0.01
main_levm_ERC20Mint 168.2 ± 1.5 166.8 171.0 1.28 ± 0.01
pr_revm_ERC20Mint 131.2 ± 0.7 130.1 132.4 1.00
pr_levm_ERC20Mint 167.0 ± 1.2 165.3 168.9 1.27 ± 0.01

Benchmark Results: ERC20Transfer

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_ERC20Transfer 230.7 ± 2.4 228.5 236.3 1.01 ± 0.01
main_levm_ERC20Transfer 283.7 ± 3.3 278.9 290.9 1.24 ± 0.02
pr_revm_ERC20Transfer 228.3 ± 1.0 227.1 230.3 1.00
pr_levm_ERC20Transfer 286.3 ± 2.6 281.6 289.8 1.25 ± 0.01

Benchmark Results: Factorial

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_Factorial 222.8 ± 1.3 219.6 224.6 1.00
main_levm_Factorial 270.0 ± 1.2 268.2 271.5 1.21 ± 0.01
pr_revm_Factorial 223.0 ± 0.9 221.8 224.4 1.00 ± 0.01
pr_levm_Factorial 268.9 ± 1.4 267.4 272.2 1.21 ± 0.01

Benchmark Results: FactorialRecursive

Command Mean [s] Min [s] Max [s] Relative
main_revm_FactorialRecursive 1.606 ± 0.070 1.412 1.651 1.01 ± 0.05
main_levm_FactorialRecursive 8.489 ± 0.040 8.419 8.566 5.33 ± 0.16
pr_revm_FactorialRecursive 1.594 ± 0.047 1.494 1.676 1.00
pr_levm_FactorialRecursive 8.531 ± 0.064 8.468 8.682 5.35 ± 0.16

Benchmark Results: Fibonacci

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_Fibonacci 202.0 ± 1.4 200.0 204.9 1.00
main_levm_Fibonacci 252.9 ± 0.8 251.8 254.6 1.25 ± 0.01
pr_revm_Fibonacci 202.3 ± 0.4 201.4 202.7 1.00 ± 0.01
pr_levm_Fibonacci 254.2 ± 3.0 251.2 259.0 1.26 ± 0.02

Benchmark Results: FibonacciRecursive

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_FibonacciRecursive 830.7 ± 4.1 825.0 838.4 1.11 ± 0.02
main_levm_FibonacciRecursive 751.2 ± 10.0 741.8 775.7 1.00
pr_revm_FibonacciRecursive 829.5 ± 7.9 812.0 837.9 1.10 ± 0.02
pr_levm_FibonacciRecursive 751.8 ± 6.3 741.8 761.4 1.00 ± 0.02

Benchmark Results: ManyHashes

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_ManyHashes 8.3 ± 0.3 8.1 9.1 1.01 ± 0.03
main_levm_ManyHashes 9.6 ± 0.1 9.6 10.0 1.18 ± 0.02
pr_revm_ManyHashes 8.2 ± 0.1 8.1 8.3 1.00
pr_levm_ManyHashes 9.6 ± 0.1 9.5 9.8 1.17 ± 0.01

Benchmark Results: MstoreBench

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_MstoreBench 291.5 ± 86.7 261.0 538.2 1.23 ± 0.37
main_levm_MstoreBench 237.6 ± 1.8 235.2 240.5 1.00
pr_revm_MstoreBench 262.3 ± 1.3 260.8 264.7 1.10 ± 0.01
pr_levm_MstoreBench 239.6 ± 4.8 234.6 251.8 1.01 ± 0.02

Benchmark Results: Push

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_Push 291.4 ± 0.9 290.1 292.7 1.00
main_levm_Push 302.0 ± 2.4 299.4 306.4 1.04 ± 0.01
pr_revm_Push 292.0 ± 1.7 290.6 296.2 1.00 ± 0.01
pr_levm_Push 303.0 ± 4.5 299.5 314.6 1.04 ± 0.02

Benchmark Results: SstoreBench_no_opt

Command Mean [ms] Min [ms] Max [ms] Relative
main_revm_SstoreBench_no_opt 166.4 ± 3.0 163.5 171.2 1.87 ± 0.04
main_levm_SstoreBench_no_opt 88.9 ± 1.1 88.1 92.0 1.00
pr_revm_SstoreBench_no_opt 168.6 ± 2.5 164.0 171.7 1.90 ± 0.04
pr_levm_SstoreBench_no_opt 89.2 ± 1.7 87.6 91.8 1.00 ± 0.02

@jrchatruc jrchatruc marked this pull request as ready for review November 10, 2025 22:10
@jrchatruc jrchatruc requested a review from a team as a code owner November 10, 2025 22:10
@github-project-automation github-project-automation bot moved this to In Review in ethrex_l1 Nov 11, 2025
@jrchatruc jrchatruc added this pull request to the merge queue Nov 11, 2025
Merged via the queue into main with commit 07692de Nov 11, 2025
59 checks passed
@jrchatruc jrchatruc deleted the lambdaworks-update-version branch November 11, 2025 15:56
@github-project-automation github-project-automation bot moved this from In Review to Done in ethrex_l1 Nov 11, 2025
xqft pushed a commit that referenced this pull request Nov 11, 2025
**Motivation**

<!-- Why does this pull request exist? What are its goals? -->

**Description**

<!-- A clear and concise general description of the changes this PR
introduces -->

<!-- Link to issues: Resolves #111, Resolves #222 -->

Closes #issue_number

---------

Co-authored-by: Javier Rodríguez Chatruc <[email protected]>
Co-authored-by: Javier Chatruc <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

levm Lambda EVM implementation

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

4 participants