From 91c1fe5baf5a0948df210b41f6c641e4b760e294 Mon Sep 17 00:00:00 2001 From: N Date: Mon, 16 Dec 2024 17:44:06 -0800 Subject: [PATCH] docs: groth16 requirements, grammar in profiling docs (#1871) --- book/docs/verification/onchain/getting-started.mdx | 3 ++- book/docs/writing-programs/cycle-tracking.mdx | 4 ++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/book/docs/verification/onchain/getting-started.mdx b/book/docs/verification/onchain/getting-started.mdx index 4fc74c621..07e098d0d 100644 --- a/book/docs/verification/onchain/getting-started.mdx +++ b/book/docs/verification/onchain/getting-started.mdx @@ -16,7 +16,8 @@ By default, the proofs generated by SP1 are not verifiable onchain, as they are > WARNING: The Groth16 and PLONK provers are only guaranteed to work on official releases of SP1. To > use Groth16 or PLONK proving & verification locally, ensure that you have Docker installed and have -> at least 128GB of RAM. +> at least 32GB of RAM. Note that you might need to increase the memory limit for +> [docker desktop](https://docs.docker.com/desktop/settings-and-maintenance/settings/#resources) if you're running on Mac. ### Example diff --git a/book/docs/writing-programs/cycle-tracking.mdx b/book/docs/writing-programs/cycle-tracking.mdx index 5c5901db5..d46da0709 100644 --- a/book/docs/writing-programs/cycle-tracking.mdx +++ b/book/docs/writing-programs/cycle-tracking.mdx @@ -58,9 +58,9 @@ This will log the cycle count for `block name` and include it in the `ExecutionR ### Profiling a ZKVM program -Profiling a zkVM program produces a profile ([example link](https://share.firefox.dev/3Om1pzz)) which makes it easy to examine program performance and see exactly where exactly VM cycles are being spent without needing to modify the program at all. +Profiling a zkVM program produces a useful visualization ([example profile](https://share.firefox.dev/3Om1pzz)) which makes it easy to examine program performance and see exactly where VM cycles are being spent without needing to modify the program at all. -To profile a program, you simply need to: +To profile a program, you need to: 1. Enable the profiling feature for `sp1-sdk` in `script/Cargo.toml` 2. Set the env variable `TRACE_FILE=trace.json` and then call `ProverClient::execute()` in your script.