-
Notifications
You must be signed in to change notification settings - Fork 297
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
chore: clean up Plonk widgets #3305
Conversation
* @param scalars A map where we put the values | ||
* @param challenges Challenges where we get the alpha | ||
*/ | ||
inline static void update_kate_opening_scalars(coefficient_array& linear_terms, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This function (implemented in each widget) was part of the linearization trick and was no longer used at all.
Benchmark resultsMetrics with a significant change:
Detailed resultsAll benchmarks are run on txs on the This benchmark source data is available in JSON format on S3 here. Values are compared against data from master at commit L2 block published to L1Each column represents the number of txs on an L2 block published to L1.
L2 chain processingEach column represents the number of blocks on the L2 chain where each block has 16 txs.
Circuits statsStats on running time and I/O sizes collected for every circuit run across all benchmarks.
MiscellaneousTransaction sizes based on how many contracts are deployed in the tx.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good. Worth mentioning that any these widgets don't go away then they will need to be reviewed anyway.
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.15.0</summary> ## [0.15.0](aztec-packages-v0.14.2...aztec-packages-v0.15.0) (2023-11-16) ### ⚠ BREAKING CHANGES * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](#3114)) ### Features * **bb:** Add msan preset ([#3284](#3284)) ([bcf025c](bcf025c)) * Enable merge and root rollup circuits in noir ([#3248](#3248)) ([68555fc](68555fc)) * Protogalaxy combiner quotient ([#3245](#3245)) ([db0f3ab](db0f3ab)) * Public kernel in noir ([#3186](#3186)) ([15a522b](15a522b)) * Ultra honk arith from ultra ([#3274](#3274)) ([ec2b805](ec2b805)) ### Bug Fixes * Debug build ([#3283](#3283)) ([aca2624](aca2624)) * Fix block constraint key divergence bug. ([#3256](#3256)) ([1c71a0c](1c71a0c)) * Main.md typo ([#3278](#3278)) ([cb87c4d](cb87c4d)) * Typo fix roundup ([#3302](#3302)) ([9dd778d](9dd778d)) ### Miscellaneous * **bb:** Remove -Wfatal-errors ([#3318](#3318)) ([4229173](4229173)) * Clarify that barretenberg mirror should not take PRs ([#3303](#3303)) ([13f1a1d](13f1a1d)) * Clean up Plonk widgets ([#3305](#3305)) ([4623d91](4623d91)) * **docs:** Aztec.nr logging page ([#3281](#3281)) ([11e6ca7](11e6ca7)) * **docs:** Update netlify.toml and fix build ([#3304](#3304)) ([df76636](df76636)) * Explicitly instantiate Goblin translator relations ([#3239](#3239)) ([e3b5fb0](e3b5fb0)) * Plain struct flavor entities ([#3277](#3277)) ([f109512](f109512)) * Remove bn254 instantiation of eccvm plus naming changes ([#3330](#3330)) ([23d1e2d](23d1e2d)) * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](#3114)) ([87eeb71](87eeb71)) * Revert build-debug folder for debug preset ([#3324](#3324)) ([43a2e6b](43a2e6b)) * Towards plain struct flavor entities ([#3216](#3216)) ([3ba89cf](3ba89cf)) * Typo fixes based on cspell ([#3319](#3319)) ([8ae44dd](8ae44dd)) </details> <details><summary>barretenberg.js: 0.15.0</summary> ## [0.15.0](barretenberg.js-v0.14.2...barretenberg.js-v0.15.0) (2023-11-16) ### ⚠ BREAKING CHANGES * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](#3114)) ### Bug Fixes * Fix block constraint key divergence bug. ([#3256](#3256)) ([1c71a0c](1c71a0c)) ### Miscellaneous * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](#3114)) ([87eeb71](87eeb71)) * Typo fixes based on cspell ([#3319](#3319)) ([8ae44dd](8ae44dd)) </details> <details><summary>barretenberg: 0.15.0</summary> ## [0.15.0](barretenberg-v0.14.2...barretenberg-v0.15.0) (2023-11-16) ### ⚠ BREAKING CHANGES * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](#3114)) ### Features * **bb:** Add msan preset ([#3284](#3284)) ([bcf025c](bcf025c)) * Protogalaxy combiner quotient ([#3245](#3245)) ([db0f3ab](db0f3ab)) * Ultra honk arith from ultra ([#3274](#3274)) ([ec2b805](ec2b805)) ### Bug Fixes * Debug build ([#3283](#3283)) ([aca2624](aca2624)) * Fix block constraint key divergence bug. ([#3256](#3256)) ([1c71a0c](1c71a0c)) ### Miscellaneous * **bb:** Remove -Wfatal-errors ([#3318](#3318)) ([4229173](4229173)) * Clarify that barretenberg mirror should not take PRs ([#3303](#3303)) ([13f1a1d](13f1a1d)) * Clean up Plonk widgets ([#3305](#3305)) ([4623d91](4623d91)) * Explicitly instantiate Goblin translator relations ([#3239](#3239)) ([e3b5fb0](e3b5fb0)) * Plain struct flavor entities ([#3277](#3277)) ([f109512](f109512)) * Remove bn254 instantiation of eccvm plus naming changes ([#3330](#3330)) ([23d1e2d](23d1e2d)) * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](#3114)) ([87eeb71](87eeb71)) * Revert build-debug folder for debug preset ([#3324](#3324)) ([43a2e6b](43a2e6b)) * Towards plain struct flavor entities ([#3216](#3216)) ([3ba89cf](3ba89cf)) * Typo fixes based on cspell ([#3319](#3319)) ([8ae44dd](8ae44dd)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
🤖 I have created a release *beep* *boop* --- <details><summary>aztec-packages: 0.15.0</summary> ## [0.15.0](AztecProtocol/aztec-packages@aztec-packages-v0.14.2...aztec-packages-v0.15.0) (2023-11-16) ### ⚠ BREAKING CHANGES * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](AztecProtocol/aztec-packages#3114)) ### Features * **bb:** Add msan preset ([#3284](AztecProtocol/aztec-packages#3284)) ([bcf025c](AztecProtocol/aztec-packages@bcf025c)) * Enable merge and root rollup circuits in noir ([#3248](AztecProtocol/aztec-packages#3248)) ([68555fc](AztecProtocol/aztec-packages@68555fc)) * Protogalaxy combiner quotient ([#3245](AztecProtocol/aztec-packages#3245)) ([db0f3ab](AztecProtocol/aztec-packages@db0f3ab)) * Public kernel in noir ([#3186](AztecProtocol/aztec-packages#3186)) ([15a522b](AztecProtocol/aztec-packages@15a522b)) * Ultra honk arith from ultra ([#3274](AztecProtocol/aztec-packages#3274)) ([ec2b805](AztecProtocol/aztec-packages@ec2b805)) ### Bug Fixes * Debug build ([#3283](AztecProtocol/aztec-packages#3283)) ([aca2624](AztecProtocol/aztec-packages@aca2624)) * Fix block constraint key divergence bug. ([#3256](AztecProtocol/aztec-packages#3256)) ([1c71a0c](AztecProtocol/aztec-packages@1c71a0c)) * Main.md typo ([#3278](AztecProtocol/aztec-packages#3278)) ([cb87c4d](AztecProtocol/aztec-packages@cb87c4d)) * Typo fix roundup ([#3302](AztecProtocol/aztec-packages#3302)) ([9dd778d](AztecProtocol/aztec-packages@9dd778d)) ### Miscellaneous * **bb:** Remove -Wfatal-errors ([#3318](AztecProtocol/aztec-packages#3318)) ([4229173](AztecProtocol/aztec-packages@4229173)) * Clarify that barretenberg mirror should not take PRs ([#3303](AztecProtocol/aztec-packages#3303)) ([13f1a1d](AztecProtocol/aztec-packages@13f1a1d)) * Clean up Plonk widgets ([#3305](AztecProtocol/aztec-packages#3305)) ([4623d91](AztecProtocol/aztec-packages@4623d91)) * **docs:** Aztec.nr logging page ([#3281](AztecProtocol/aztec-packages#3281)) ([11e6ca7](AztecProtocol/aztec-packages@11e6ca7)) * **docs:** Update netlify.toml and fix build ([#3304](AztecProtocol/aztec-packages#3304)) ([df76636](AztecProtocol/aztec-packages@df76636)) * Explicitly instantiate Goblin translator relations ([#3239](AztecProtocol/aztec-packages#3239)) ([e3b5fb0](AztecProtocol/aztec-packages@e3b5fb0)) * Plain struct flavor entities ([#3277](AztecProtocol/aztec-packages#3277)) ([f109512](AztecProtocol/aztec-packages@f109512)) * Remove bn254 instantiation of eccvm plus naming changes ([#3330](AztecProtocol/aztec-packages#3330)) ([23d1e2d](AztecProtocol/aztec-packages@23d1e2d)) * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](AztecProtocol/aztec-packages#3114)) ([87eeb71](AztecProtocol/aztec-packages@87eeb71)) * Revert build-debug folder for debug preset ([#3324](AztecProtocol/aztec-packages#3324)) ([43a2e6b](AztecProtocol/aztec-packages@43a2e6b)) * Towards plain struct flavor entities ([#3216](AztecProtocol/aztec-packages#3216)) ([3ba89cf](AztecProtocol/aztec-packages@3ba89cf)) * Typo fixes based on cspell ([#3319](AztecProtocol/aztec-packages#3319)) ([8ae44dd](AztecProtocol/aztec-packages@8ae44dd)) </details> <details><summary>barretenberg.js: 0.15.0</summary> ## [0.15.0](AztecProtocol/aztec-packages@barretenberg.js-v0.14.2...barretenberg.js-v0.15.0) (2023-11-16) ### ⚠ BREAKING CHANGES * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](AztecProtocol/aztec-packages#3114)) ### Bug Fixes * Fix block constraint key divergence bug. ([#3256](AztecProtocol/aztec-packages#3256)) ([1c71a0c](AztecProtocol/aztec-packages@1c71a0c)) ### Miscellaneous * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](AztecProtocol/aztec-packages#3114)) ([87eeb71](AztecProtocol/aztec-packages@87eeb71)) * Typo fixes based on cspell ([#3319](AztecProtocol/aztec-packages#3319)) ([8ae44dd](AztecProtocol/aztec-packages@8ae44dd)) </details> <details><summary>barretenberg: 0.15.0</summary> ## [0.15.0](AztecProtocol/aztec-packages@barretenberg-v0.14.2...barretenberg-v0.15.0) (2023-11-16) ### ⚠ BREAKING CHANGES * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](AztecProtocol/aztec-packages#3114)) ### Features * **bb:** Add msan preset ([#3284](AztecProtocol/aztec-packages#3284)) ([bcf025c](AztecProtocol/aztec-packages@bcf025c)) * Protogalaxy combiner quotient ([#3245](AztecProtocol/aztec-packages#3245)) ([db0f3ab](AztecProtocol/aztec-packages@db0f3ab)) * Ultra honk arith from ultra ([#3274](AztecProtocol/aztec-packages#3274)) ([ec2b805](AztecProtocol/aztec-packages@ec2b805)) ### Bug Fixes * Debug build ([#3283](AztecProtocol/aztec-packages#3283)) ([aca2624](AztecProtocol/aztec-packages@aca2624)) * Fix block constraint key divergence bug. ([#3256](AztecProtocol/aztec-packages#3256)) ([1c71a0c](AztecProtocol/aztec-packages@1c71a0c)) ### Miscellaneous * **bb:** Remove -Wfatal-errors ([#3318](AztecProtocol/aztec-packages#3318)) ([4229173](AztecProtocol/aztec-packages@4229173)) * Clarify that barretenberg mirror should not take PRs ([#3303](AztecProtocol/aztec-packages#3303)) ([13f1a1d](AztecProtocol/aztec-packages@13f1a1d)) * Clean up Plonk widgets ([#3305](AztecProtocol/aztec-packages#3305)) ([4623d91](AztecProtocol/aztec-packages@4623d91)) * Explicitly instantiate Goblin translator relations ([#3239](AztecProtocol/aztec-packages#3239)) ([e3b5fb0](AztecProtocol/aztec-packages@e3b5fb0)) * Plain struct flavor entities ([#3277](AztecProtocol/aztec-packages#3277)) ([f109512](AztecProtocol/aztec-packages@f109512)) * Remove bn254 instantiation of eccvm plus naming changes ([#3330](AztecProtocol/aztec-packages#3330)) ([23d1e2d](AztecProtocol/aztec-packages@23d1e2d)) * Replace computing hashes in circuits wasm, with computing them in ts via bb.js pedersen call. ([#3114](AztecProtocol/aztec-packages#3114)) ([87eeb71](AztecProtocol/aztec-packages@87eeb71)) * Revert build-debug folder for debug preset ([#3324](AztecProtocol/aztec-packages#3324)) ([43a2e6b](AztecProtocol/aztec-packages@43a2e6b)) * Towards plain struct flavor entities ([#3216](AztecProtocol/aztec-packages#3216)) ([3ba89cf](AztecProtocol/aztec-packages@3ba89cf)) * Typo fixes based on cspell ([#3319](AztecProtocol/aztec-packages#3319)) ([8ae44dd](AztecProtocol/aztec-packages@8ae44dd)) </details> --- This PR was generated with [Release Please](https://github.com/googleapis/release-please). See [documentation](https://github.com/googleapis/release-please#release-please).
The "linearization trick" in Plonk required the splitting of the widget (relation) contributions into "linear" an "nonlinear" parts. The trick is no longer in use and there's no need for this structure to remain. This work
accumulate_contribution
method which more closely resembles the structure of the Honk relations.This is good cleanup regardless but was done with an eye towards eventually utilizing the relations in Plonk. Below are the UltraPlonk Bench results. I didn't expect anything to change but they seem a bit noisy. After deleting the logic widget, case log_n = 17 seems to consistently show a minor increase but 18 does not. Not sure what to make of this.
Checklist:
Remove the checklist to signal you've completed it. Enable auto-merge if the PR is ready to merge.