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

perf(commitment-generator): Run commitment generation for multiple batches in parallel #1984

Conversation

slowli
Copy link
Contributor

@slowli slowli commented May 17, 2024

What ❔

Generates commitments with configurable parallelism.

Why ❔

  • As long as produced commitments are persisted in the same order as previously (not even atomically), there's still a cursor to be used by the commitment generator.
  • Can provide speed up during node recovery (esp. if treeless mode is used). Also can speed up some integration tests.

Checklist

  • PR title corresponds to the body of PR (we generate changelog entries from PRs).
  • Tests for the changes have been added / updated.
  • Documentation comments have been added / updated.
  • Code has been formatted via zk fmt and zk lint.
  • Spellcheck has been run via zk spellcheck.

@slowli slowli marked this pull request as ready for review May 20, 2024 08:16
Copy link
Contributor

@perekopskiy perekopskiy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good!

core/node/commitment_generator/src/lib.rs Show resolved Hide resolved
perekopskiy
perekopskiy previously approved these changes May 21, 2024
@slowli slowli added this pull request to the merge queue May 22, 2024
Merged via the queue into main with commit 602bf67 May 22, 2024
44 checks passed
@slowli slowli deleted the aov-pla-941-run-commitment-generation-for-multiple-batches-in-parallel branch May 22, 2024 08:25
github-merge-queue bot pushed a commit that referenced this pull request May 30, 2024
🤖 I have created a release *beep* *boop*
---


##
[24.5.0](core-v24.4.0...core-v24.5.0)
(2024-05-30)


### Features

* Add protocol_version label to WG jobs metric
([#2009](#2009))
([e0a3393](e0a3393))
* **config:** remove zksync home
([#2022](#2022))
([d08fe81](d08fe81))
* **en:** Improve tree snapshot recovery
([#1938](#1938))
([5bc8234](5bc8234))
* Make house keeper emit correct protocol version
([#2062](#2062))
([a58a7e8](a58a7e8))
* **node_framework:** Migrate main node to the framework
([#1997](#1997))
([27a26cb](27a26cb))
* **node_framework:** Synchronize pools layer with logic in
initialize_components
([#2079](#2079))
([3202461](3202461))
* Protocol semantic version
([#2059](#2059))
([3984dcf](3984dcf))
* **prover:** Adnotate prover queue metrics with protocol version
([#1893](#1893))
([d1e1004](d1e1004))
* save writes needed for tree in state keeper
([#1965](#1965))
([471af53](471af53))
* **test:** Add filebased config support for integration tests
([#2043](#2043))
([be3ded9](be3ded9))
* **vm-runner:** implement VM runner main body
([#1955](#1955))
([bf5b6c2](bf5b6c2))


### Bug Fixes

* **API:** polish web3 api block-related types
([#1994](#1994))
([6cd3c53](6cd3c53))
* **en:** chunk factory deps
([#2077](#2077))
([4b9e6fa](4b9e6fa))
* **en:** Fix recovery-related metrics
([#2014](#2014))
([86355d6](86355d6))
* **eth-watch:** Do not track for stm, only for diamond proxy
([#2080](#2080))
([87adac9](87adac9))
* fix metrics reporting wrong values
([#2065](#2065))
([2ec010a](2ec010a))
* **loadtest:** resolve unit conversion error in loadtest metrics
([#1987](#1987))
([b5870a0](b5870a0))
* **merkle-tree:** Fix incoherent Merkle tree view
([#2071](#2071))
([2fc9a6c](2fc9a6c))
* **metadata-calculator:** protective reads sort
([#2087](#2087))
([160c13c](160c13c))
* **node_framework:** Fix the connection pool size for the catchup task
([#2046](#2046))
([c00a2eb](c00a2eb))
* **node_framework:** Use custom pool for commitiment generator
([#2076](#2076))
([994df8f](994df8f))
* **protocol_version:** Add backward compatibility
([#2097](#2097))
([391624b](391624b))
* **pruning:** Fix DB pruner responsiveness during shutdown
([#2058](#2058))
([0a07312](0a07312))
* **zk_toolbox:** Use both folders for loading contracts
([#2030](#2030))
([97c6d5c](97c6d5c))


### Performance Improvements

* **commitment-generator:** Run commitment generation for multiple
batches in parallel
([#1984](#1984))
([602bf67](602bf67))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

---------

Co-authored-by: zksync-era-bot <[email protected]>
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