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

chore: pull value merger code from sync #10080

Open
wants to merge 9 commits into
base: master
Choose a base branch
from

Conversation

TomAFrench
Copy link
Member

Please read contributing guidelines and remove this line.

Copy link
Contributor

github-actions bot commented Nov 20, 2024

Changes to circuit sizes

Generated at commit: 73881ee2ce957b233b1217d63543b0f1a4db7b18, compared to commit: 10df7c552456062e9a71257c2649f8a4d6237b90

🧾 Summary (100% most significant diffs)

Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_reset_4_4_4_4_4_4_4_4_1 +4,719 ❌ +14.57% +19,236 ❌ +22.24%
private_kernel_reset +5,633 ❌ +6.70% +19,440 ❌ +3.15%
rollup_block_root -168 ✅ -3.74% -144 ✅ -0.01%
parity_root -252 ✅ -5.01% -216 ✅ -0.01%
rollup_merge -168 ✅ -4.91% -144 ✅ -0.01%
rollup_block_merge -465 ✅ -3.87% -451 ✅ -0.02%
rollup_root -465 ✅ -3.88% -451 ✅ -0.02%
private_kernel_tail -6 ✅ -0.15% -6 ✅ -0.05%
parity_base -252 ✅ -5.86% -216 ✅ -0.70%
rollup_base_private -28,501 ✅ -14.42% -41,353 ✅ -1.56%
private_kernel_inner -785 ✅ -2.09% -1,034 ✅ -1.82%
private_kernel_init -741 ✅ -3.46% -986 ✅ -2.86%
rollup_base_public -91,453 ✅ -20.45% -129,514 ✅ -3.24%
private_kernel_tail_to_public -2,133 ✅ -12.27% -3,044 ✅ -10.32%

Full diff report 👇
Program ACIR opcodes (+/-) % Circuit size (+/-) %
private_kernel_reset_4_4_4_4_4_4_4_4_1 37,104 (+4,719) +14.57% 105,727 (+19,236) +22.24%
private_kernel_reset 89,660 (+5,633) +6.70% 637,477 (+19,440) +3.15%
rollup_block_root 4,321 (-168) -3.74% 2,739,508 (-144) -0.01%
parity_root 4,782 (-252) -5.01% 3,636,536 (-216) -0.01%
rollup_merge 3,251 (-168) -4.91% 1,826,902 (-144) -0.01%
rollup_block_merge 11,544 (-465) -3.87% 1,858,073 (-451) -0.02%
rollup_root 11,528 (-465) -3.88% 1,858,059 (-451) -0.02%
private_kernel_tail 4,125 (-6) -0.15% 12,508 (-6) -0.05%
parity_base 4,049 (-252) -5.86% 30,482 (-216) -0.70%
rollup_base_private 169,172 (-28,501) -14.42% 2,617,226 (-41,353) -1.56%
private_kernel_inner 36,764 (-785) -2.09% 55,845 (-1,034) -1.82%
private_kernel_init 20,666 (-741) -3.46% 33,517 (-986) -2.86%
rollup_base_public 355,672 (-91,453) -20.45% 3,867,929 (-129,514) -3.24%
private_kernel_tail_to_public 15,251 (-2,133) -12.27% 26,460 (-3,044) -10.32%

@TomAFrench
Copy link
Member Author

@asterite can you pull this branch and run the unconditional_recursion test locally? This passes locally for me but fails in CI.

@asterite
Copy link
Contributor

It passes too.

That said, I can make it fail locally if I change RUST_MIN_STACK:

RUST_MIN_STACK=100000 cargo test unconditional_recursion

Maybe that value is different in CI, compared to our machines?

@asterite
Copy link
Contributor

It seems the value is platform-dependent:

https://doc.rust-lang.org/std/thread/#stack-size

But I don't know if this is running in a non-main thread.

That said, maybe we should set that value to a fixed constant somewhere so code runs the same way everywhere.

(I think, for example, the Rust compiler sets it to a higher-than-normal value to support deeply nested code structures, so we could do the same)

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