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

test(avm): minor benchmarking #9869

Merged
merged 1 commit into from
Nov 18, 2024

Conversation

IlyasRidhuan
Copy link
Contributor

@IlyasRidhuan IlyasRidhuan commented Nov 10, 2024

Just a very small micro-benchmark for the a future PR to reference.

This sets up the smallest "worst-case" scenario for the current ephmeral tree implementation.

  1. An initial public data tree is seeded with 128 dummy leaves, occupying slots 0 to 127
  2. We update slot 0 with a new value - this causes the ephemeral tree to track slot 0 as the indexedTreeMin.
  3. Inserting 64 new slots (as per a tx), results in 126 DB accesses and a linear (in the leaf count) search complexity
    a) The DB reads occur because the ephemeral tree doesnt track slots 1 to 127
    b) All reads are O(n) as we traverse from min leaf to the low leaf info

Copy link
Contributor Author

IlyasRidhuan commented Nov 10, 2024

@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-03-feat_avm_ephmeral_avm_tree branch from 4c99c3d to d158b08 Compare November 12, 2024 13:57
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-10-perf_avm_minor_benchmarking branch from fc15d18 to b57b5e9 Compare November 12, 2024 13:57
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-03-feat_avm_ephmeral_avm_tree branch from d158b08 to 62c4e45 Compare November 12, 2024 14:41
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-10-perf_avm_minor_benchmarking branch from b57b5e9 to 060057e Compare November 12, 2024 14:42
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-03-feat_avm_ephmeral_avm_tree branch from 62c4e45 to da0ecb5 Compare November 12, 2024 15:50
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-10-perf_avm_minor_benchmarking branch from 060057e to ee830d6 Compare November 12, 2024 15:50
@IlyasRidhuan IlyasRidhuan changed the title perf(avm): minor benchmarking test(avm): minor benchmarking Nov 12, 2024
@IlyasRidhuan IlyasRidhuan marked this pull request as ready for review November 12, 2024 19:06
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-03-feat_avm_ephmeral_avm_tree branch from da0ecb5 to 13e10c1 Compare November 13, 2024 00:57
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-10-perf_avm_minor_benchmarking branch from ee830d6 to 5fe6ae7 Compare November 13, 2024 00:57
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-03-feat_avm_ephmeral_avm_tree branch from 13e10c1 to d9eecce Compare November 13, 2024 15:49
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-10-perf_avm_minor_benchmarking branch from 5fe6ae7 to 1dad3c0 Compare November 13, 2024 15:49
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-03-feat_avm_ephmeral_avm_tree branch from d9eecce to f152568 Compare November 14, 2024 21:29
Base automatically changed from ir/11-03-feat_avm_ephmeral_avm_tree to master November 18, 2024 17:56
@IlyasRidhuan IlyasRidhuan force-pushed the ir/11-10-perf_avm_minor_benchmarking branch from 1dad3c0 to 1c90919 Compare November 18, 2024 17:59
@IlyasRidhuan IlyasRidhuan merged commit 603b9c2 into master Nov 18, 2024
67 checks passed
@IlyasRidhuan IlyasRidhuan deleted the ir/11-10-perf_avm_minor_benchmarking branch November 18, 2024 19:10
TomAFrench added a commit that referenced this pull request Nov 19, 2024
* master: (67 commits)
  chore: Fix bad merge on AztecLMDBStore initializer
  feat: add persisted database of proving jobs (#9942)
  chore: Clean up data configuration (#9973)
  chore: remove public kernels (#10027)
  chore: misc cleanup, docs and renaming (#9968)
  feat: IPA Accumulator in Builder (#9846)
  chore(docs): Updates to token contract (#9954)
  test(avm): minor benchmarking (#9869)
  chore(ci): run `l1-contracts` CI in parallel with `build` step (#10024)
  chore: build acir test programs in parallel to e2e build step (#9988)
  chore: pull out `array_set` pass changes (#9993)
  feat(avm): ephemeral avm tree (#9798)
  fix: don't take down runners with faulty runner check (#10019)
  feat(docs): add transaction profiler docs (#9932)
  chore: hotfix runner wait (#10018)
  refactor: remove EnqueuedCallSimulator (#10015)
  refactor: stop calling public kernels (#9971)
  git subrepo push --branch=master noir-projects/aztec-nr
  git_subrepo.sh: Fix parent in .gitrepo file. [skip ci]
  chore: replace relative paths to noir-protocol-circuits
  ...
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