Skip to content

Commit 6360eda

Browse files
committed
fix images
1 parent b12881b commit 6360eda

File tree

1 file changed

+2
-6
lines changed

1 file changed

+2
-6
lines changed

docs/docs/tooling/profiler.md

+2-6
Original file line numberDiff line numberDiff line change
@@ -137,16 +137,12 @@ noir-profiler execution-opcodes --artifact-name ./target/program.json --prover_t
137137
This matches the `opcodes` command, except that now we need to accept a `Prover.toml` file to profile execution with a specific set of inputs.
138138

139139
We will get the following flamegraph with 1,582 opcodes executed:
140-
<picture>
141-
<img src="../../static/img/tooling/profiler/brillig-trace-initial-32.png">
142-
</picture>
140+
![Brillig Trace Initial Program](@site/static/img/tooling/profiler/brillig-trace-initial-32.png)
143141

144142
Circuit programming (ACIR) is an entirely different execution paradigm compared to regular programming. To demonstrate this point further, let's generate an execution trace for our optimized ACIR program once we have modified `main` to be `unconstrained`.
145143

146144
We then get the following flamegraph with 2,125 opcodes executed:
147-
<picture>
148-
<img src="../../static/img/tooling/profiler/brillig-trace-opt-32.png">
149-
</picture>
145+
![Brillig Trace "Optimized"](@site/static/img/tooling/profiler/brillig-trace-opt-32.png)
150146

151147
In the above graph we are searching for `new_array`, which shows up zero matches in the initial program. In the unconstrained environment, the updated program essentially just adds extra unnecessary checks. Thus, we see a longer execution trace.
152148

0 commit comments

Comments
 (0)