You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It's very important for us to have performant ACVM execution as this is required to prevent witness generation from being a bottleneck for proof generation.
We currently have some minor benchmarking for ACVM execution in this file. This boils down to use essentially timing the CLI command nargo execute --force for 3 of our test functions.
This has a couple problems:
nargo execute --force is recompiling the circuit from scratch each time so we're benchmarking much more than just execution speed
We're running nargo in a subprocess so we don't get any useful data out of the flamegraph which is generated.
Ideally we would have benchmarks which would:
Compile the circuit once and loads it into memory
Runs the circuit using the ProgramExecutor as exposed by the nargo crate rather than relying on the CLI.
It's very important for us to have performant ACVM execution as this is required to prevent witness generation from being a bottleneck for proof generation.
We currently have some minor benchmarking for ACVM execution in this file. This boils down to use essentially timing the CLI command
nargo execute --force
for 3 of our test functions.This has a couple problems:
nargo execute --force
is recompiling the circuit from scratch each time so we're benchmarking much more than just execution speedIdeally we would have benchmarks which would:
nargo
crate rather than relying on the CLI.We can do this for a single Noir program to begin with and then roll it out to a decently sized suite in future.
The text was updated successfully, but these errors were encountered: