Skip to content

fix: add limit to brillig vm execution trace#9007

Draft
TomAFrench wants to merge 3 commits intomasterfrom
tf/limit-brillig-vm-execution
Draft

fix: add limit to brillig vm execution trace#9007
TomAFrench wants to merge 3 commits intomasterfrom
tf/limit-brillig-vm-execution

Conversation

@TomAFrench
Copy link
Member

Description

Problem*

Resolves #5026
Resolves #9006

Summary*

This PR adds an optional limit to the number of brillig opcodes to execute before halting execution and handling control back to the caller. I've set this to a limit of 10M opcodes (chosen based on execution trace of rollup_block_root when compiled to brillig being 317,303,405).

I'm still consdering how we want this interface to look.

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.

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Test Suite Duration'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: b534125 Previous: 3838c69 Ratio
test_report_AztecProtocol_aztec-packages_noir-projects_noir-protocol-circuits_crates_blob 186 s 141 s 1.32

This comment was automatically generated by workflow using github-action-benchmark.

CC: @TomAFrench

Copy link
Contributor

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

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

⚠️ Performance Alert ⚠️

Possible performance regression was detected for benchmark 'Execution Time'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.20.

Benchmark suite Current: b534125 Previous: 5fbc2a4 Ratio
semaphore-depth-10 0.027 s 0.022 s 1.23

This comment was automatically generated by workflow using github-action-benchmark.

CC: @TomAFrench

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.

Recusion / AVM trace is unlimited Compiler hangs: infinite loop in Inlining Brillig Calls

1 participant