Skip to content
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

fix(trees): inconsistencies in override_range #250

Merged
merged 2 commits into from
May 17, 2024

Conversation

rymnc
Copy link
Contributor

@rymnc rymnc commented May 17, 2024

Fixes override_range as was done in pmtree previously.

Copy link

Benchmark for ecd8edb

Click to view benchmark
Test Base PR %
FullMerkleTree::compute_root 0.0±0.00ns 0.0±0.00ns NaN%
FullMerkleTree::delete 850.4±16.84ns 869.2±9.05ns +2.21%
FullMerkleTree::get 0.0±0.00ns 3.4±0.06ns +Infinity%
FullMerkleTree::get_subtree_root 0.6±0.02ns 3.6±0.12ns +500.00%
FullMerkleTree::override_range 2.1±0.12µs 1328.7±18.31ns -36.73%
FullMerkleTree::set 864.9±6.02ns 878.9±29.31ns +1.62%
OptimalMerkleTree::compute_root 1022.5±11.02ns 1011.0±12.21ns -1.12%
OptimalMerkleTree::delete 995.1±12.23ns 1005.4±9.65ns +1.04%
OptimalMerkleTree::get 18.6±0.51ns 23.9±0.67ns +28.49%
OptimalMerkleTree::get_subtree_root 18.5±0.17ns 24.2±0.32ns +30.81%
OptimalMerkleTree::override_range 5.0±0.10µs 4.2±0.08µs -16.00%
OptimalMerkleTree::set 997.9±5.47ns 1007.9±17.22ns +1.00%

Copy link

Benchmark for ecd8edb

Click to view benchmark
Test Base PR %
FullMerkleTree::::full_height_gen 19.6±0.89ms 18.0±0.69ms -8.16%
OptimalMerkleTree::::full_height_gen 566.4±12.69µs 575.2±13.12µs +1.55%
Pmtree::compute_root 0.0±0.00ns 0.0±0.00ns NaN%
Pmtree::get 357.1±11.21ns 359.6±6.33ns +0.70%
Pmtree::get_subtree_root 505.3±10.50ns 500.2±12.39ns -1.01%
Pmtree::override_range 252.1±5.55µs 249.6±6.88µs -0.99%
Pmtree::set 56.3±1.40µs 56.6±1.21µs +0.53%
Pmtree:delete 57.2±2.35µs 56.0±1.45µs -2.10%
Set/FullMerkleTree::::set/1 562.2±13.85µs 575.4±9.82µs +2.35%
Set/FullMerkleTree::::set/10 5.6±0.07ms 5.8±0.07ms +3.57%
Set/FullMerkleTree::::set/100 56.9±0.69ms 57.5±0.71ms +1.05%
Set/FullMerkleTree::::set_range/1 560.7±8.28µs 567.4±12.92µs +1.19%
Set/FullMerkleTree::::set_range/10 770.3±8.00µs 783.4±13.54µs +1.70%
Set/FullMerkleTree::::set_range/100 3.4±0.04ms 3.4±0.04ms 0.00%
Set/OptimalMerkleTree::::set/1 566.5±13.94µs 573.5±11.02µs +1.24%
Set/OptimalMerkleTree::::set/10 5.7±0.06ms 5.7±0.12ms 0.00%
Set/OptimalMerkleTree::::set/100 56.6±0.62ms 56.5±1.42ms -0.18%
Set/OptimalMerkleTree::::set_range/1 564.3±8.44µs 574.0±13.73µs +1.72%
Set/OptimalMerkleTree::::set_range/10 5.6±0.08ms 5.6±0.12ms 0.00%
Set/OptimalMerkleTree::::set_range/100 57.1±0.52ms 56.8±1.19ms -0.53%
zkey::upload_from_folder 3.5±0.03s 3.4±0.03s -2.86%

@rymnc rymnc marked this pull request as ready for review May 17, 2024 14:07
@rymnc rymnc requested a review from seemenkina May 17, 2024 14:08
@rymnc rymnc self-assigned this May 17, 2024
@rymnc rymnc changed the base branch from master to tree-reconciliation May 17, 2024 14:08
@seemenkina seemenkina merged commit bf6fbc6 into tree-reconciliation May 17, 2024
0 of 10 checks passed
@seemenkina seemenkina deleted the fix-tree-behaviour branch May 17, 2024 14:17
rymnc added a commit that referenced this pull request May 17, 2024
…ero (#249)

* add function for empty leaves

* fix from linter

* fix rebase

* update test in utils

* fix

* fix(trees): inconsistencies in override_range (#250)

* fix tests

---------

Co-authored-by: Aaryamann Challani <43716372+rymnc@users.noreply.github.com>
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.

2 participants