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: Remove all non determinism #6852

Merged
merged 3 commits into from
Dec 18, 2024

Conversation

vezenovm
Copy link
Contributor

Description

Problem*

Resolves #2036

Summary*

The parent branch added a check for non-determinism in the compiler. This PR contains all fixes to get our tests passing that check. I separated them out from the check itself for ease of reviewing. This PR will go into #6847 once it is ready.

Additional Context

Documentation*

Check one:

  • No documentation needed.
  • Documentation included in this PR.
  • [For Experimental Features] Documentation to be submitted in a separate PR.

PR Checklist*

  • I have tested the changes locally.
  • I have formatted the changes with Prettier and/or cargo fmt on default settings.

@vezenovm vezenovm changed the title fixes to pass non determinism check fix: Remove all non determinism Dec 18, 2024
Copy link
Contributor

github-actions bot commented Dec 18, 2024

Changes to Brillig bytecode sizes

Generated at commit: 42af0982cd37a76bb4102a7928094b8b7e837ae4, compared to commit: cc7009fc6604a57f4aab2b3901754d7b4db1c7fb

🧾 Summary (10% most significant diffs)

Program Brillig opcodes (+/-) %
poseidonsponge_x5_254 +3 ❌ +0.07%
sha256_regression +3 ❌ +0.04%

Full diff report 👇
Program Brillig opcodes (+/-) %
poseidonsponge_x5_254 4,254 (+3) +0.07%
sha256_regression 6,920 (+3) +0.04%

Copy link
Contributor

github-actions bot commented Dec 18, 2024

Changes to number of Brillig opcodes executed

Generated at commit: 42af0982cd37a76bb4102a7928094b8b7e837ae4, compared to commit: cc7009fc6604a57f4aab2b3901754d7b4db1c7fb

🧾 Summary (10% most significant diffs)

Program Brillig opcodes (+/-) %
sha256_regression +3 ❌ +0.00%

Full diff report 👇
Program Brillig opcodes (+/-) %
sha256_regression 118,707 (+3) +0.00%

Copy link
Contributor

github-actions bot commented Dec 18, 2024

Peak Memory Sample

Program Peak Memory
keccak256 78.15M
workspace 122.63M
regression_4709 423.26M
ram_blowup_regression 1.58G
private-kernel-tail 206.67M
private-kernel-reset 720.25M
private-kernel-inner 291.85M
parity-root 171.68M

Copy link
Contributor

github-actions bot commented Dec 18, 2024

Compilation Sample

Program Compilation Time %
sha256_regression 0m1.353s -3%
regression_4709 0m0.796s -4%
ram_blowup_regression 0m14.284s -1%
rollup-base-public 3m31.506s 3%
rollup-base-private 2m58.734s -2%
private-kernel-tail 0m1.197s 3%
private-kernel-reset 0m7.838s -13%
private-kernel-inner 0m2.353s -1%
parity-root 0m1.167s 34%
noir-contracts 2m37.886s -12%

@vezenovm vezenovm marked this pull request as ready for review December 18, 2024 05:41
@vezenovm vezenovm merged commit af1eec6 into mv/non-determinism-check Dec 18, 2024
82 checks passed
@vezenovm vezenovm deleted the mv/non-determinism-fixes branch December 18, 2024 14:34
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