-
Notifications
You must be signed in to change notification settings - Fork 237
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: Add benchmarking dashboard #7068
Conversation
Compilation Report
|
Execution Report
|
Execution Memory Report
|
Compilation Memory Report
|
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.
⚠️ Performance Alert ⚠️
Possible performance regression was detected for benchmark 'Compilation Time'.
Benchmark result of this commit is worse than the previous benchmark result exceeding threshold 1.10
.
Benchmark suite | Current: 79f1d8e | Previous: 1fb25cd | Ratio |
---|---|---|---|
sha256_regression |
1.16 s |
1.01 s |
1.15 |
This comment was automatically generated by workflow using github-action-benchmark.
CC: @TomAFrench
For a follow-up it would be nice to have separate pages for our memory/execution memory and compilation/execution timing reports. The dashboard is a bit long with all of our reports. I haven't looked into |
Co-authored-by: Maxim Vezenov <[email protected]>
Yeah, I agree that it's not the prettiest but I don't want to invest too much time into it as I'm planning to migrate to Charlie's tool once it's ready. |
Changes to number of Brillig opcodes executed
🧾 Summary (10% most significant diffs)
Full diff report 👇
|
Changes to Brillig bytecode sizes
🧾 Summary (10% most significant diffs)
Full diff report 👇
|
…oir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…oir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…g/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…r-lang/noir#7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…r-lang/noir#7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…r-lang/noir#7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
…7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095)
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE chore: let `add_definition_location` take a Location (noir-lang/noir#7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095) END_COMMIT_OVERRIDE --------- Co-authored-by: Tom French <[email protected]> Co-authored-by: Tom French <[email protected]> Co-authored-by: aakoshh <[email protected]> Co-authored-by: Akosh Farkash <[email protected]> Co-authored-by: Maxim Vezenov <[email protected]>
Automated pull of development from the [noir](https://github.com/noir-lang/noir) programming language, a dependency of Aztec. BEGIN_COMMIT_OVERRIDE chore: let `add_definition_location` take a Location (noir-lang/noir#7185) fix(LSP): correct signature for assert and assert_eq (noir-lang/noir#7184) chore(experimental): Prevent enum panics by returning Options where possible instead of panicking (noir-lang/noir#7180) feat(experimental): Construct enum variants in expressions (noir-lang/noir#7174) feat: add `noir-inspector` (noir-lang/noir#7136) fix: ensure canonical bits decomposition (noir-lang/noir#7168) fix: Keep `inc_rc` for array inputs during preprocessing (noir-lang/noir#7163) fix(docs): Update broken links to EC lib (noir-lang/noir#7141) feat: inline simple functions (noir-lang/noir#7160) feat(ssa): Expand feature set of the Brillig constraint check (noir-lang/noir#7060) fix(ssa): Resolve value before fetching from DFG in a couple cases (noir-lang/noir#7169) fix: `Function::is_no_predicates` always returned false for brillig f… (noir-lang/noir#7167) chore(refactor): Remove globals field on Ssa object and use only the shared globals graph (noir-lang/noir#7156) chore: let `Function::inlined` take a `should_inline_call` function (noir-lang/noir#7149) chore: add compile-time assertions on generic arguments of stdlib functions (noir-lang/noir#6981) fix: LSP hover over function with `&mut self` (noir-lang/noir#7155) feat(brillig): Set global memory size at program compile time (noir-lang/noir#7151) feat: LSP autocomplete module declaration (noir-lang/noir#7154) feat(ssa): Reuse constants from the globals graph when making constants in a function DFG (noir-lang/noir#7153) feat: LSP chain inlay hints (noir-lang/noir#7152) chore: turn on overflow checks in CI rust tests (noir-lang/noir#7145) fix(ssa): Use post order when mapping instructions in loop invariant pass (noir-lang/noir#7140) fix: preserve types when reading from calldata arrays (noir-lang/noir#7144) feat: Resolve enums & prepare type system (noir-lang/noir#7115) feat: `loop` must have at least one `break` (noir-lang/noir#7126) feat: parse globals in SSA parser (noir-lang/noir#7112) fix: allow calling trait impl method from struct if multiple impls exist (noir-lang/noir#7124) fix: avoid creating unnecessary memory blocks (noir-lang/noir#7114) chore: relax threshold for reporting regressions (noir-lang/noir#7130) fix: proper cleanup when breaking from comptime loop on error (noir-lang/noir#7125) fix: Prevent overlapping associated types impls (noir-lang/noir#7047) feat: unconstrained optimizations for BoundedVec (noir-lang/noir#7119) chore: mark libs good (noir-lang/noir#7123) chore: remove comments for time/memory benchmarks (noir-lang/noir#7121) fix: don't always use an exclusive lock in `nargo check` (noir-lang/noir#7120) feat(ssa): Pass to preprocess functions (noir-lang/noir#7072) chore: Formatting issues / minor errors in the docs (noir-lang/noir#7105) fix: defunctionalize pass on the caller runtime to apply (noir-lang/noir#7100) feat: Parser and formatter support for `enum`s (noir-lang/noir#7110) feat(brillig): SSA globals code gen (noir-lang/noir#7021) feat: `loop` keyword in runtime and comptime code (noir-lang/noir#7096) chore: Add benchmarking dashboard (noir-lang/noir#7068) feat(experimental): try to infer lambda argument types inside calls (noir-lang/noir#7088) feat(ssa): Add flag to DIE pass to be able to keep `store` instructions (noir-lang/noir#7106) chore: Cookbook Onboard integration (noir-lang/noir#7044) chore: lock to ubuntu 22.04 (noir-lang/noir#7098) fix: Remove unused brillig functions (noir-lang/noir#7102) chore(ssa): Use correct prefix when printing array values in global space (noir-lang/noir#7095) END_COMMIT_OVERRIDE --------- Co-authored-by: Tom French <[email protected]> Co-authored-by: Tom French <[email protected]> Co-authored-by: aakoshh <[email protected]> Co-authored-by: Akosh Farkash <[email protected]> Co-authored-by: Maxim Vezenov <[email protected]>
Description
Problem*
Resolves
Summary*
This PR adds a new benchmarking dashboard at https://noir-lang.github.io/noir/dev/bench/. Results will be added to this on each push to master.
We'll still be benchmarking on each PR however comments will only be posted if there's a regression above a certain percentage (currently set to a quite aggressive 10% but we can dial that back if necessary)
I'll turn off the comment systems for metrics other than gate counts in a separate PR.
Additional Context
Documentation*
Check one:
PR Checklist*
cargo fmt
on default settings.