Skip to content

chore: epoch proving log analyzer#21033

Merged
alexghr merged 1 commit intomerge-train/spartanfrom
ag/epoch-logs-analyzer
Mar 3, 2026
Merged

chore: epoch proving log analyzer#21033
alexghr merged 1 commit intomerge-train/spartanfrom
ag/epoch-logs-analyzer

Conversation

@alexghr
Copy link
Contributor

@alexghr alexghr commented Mar 3, 2026

A script to analyze the proving timeline of an epoch. Output example:

$ ./spartan/scripts/extract_proving_metrics.ts prove-n-tps-real --start 2026-03-02 --epoch 3

Epoch 3 stats:
  Checkpoints: 32 (33 to 64), Blocks: 256 (40 to 295), Txs: 2283
  Blob fields per checkpoint: 211.92ms
  Blob batching: 3408.91ms

Timeline:
  Epoch started proving                                T+0s
  Blocks started processing                            T+1m 3s
  PUBLIC_CHONK_VERIFIER first enqueued (2283 jobs)     T+1m 9s
  PARITY_BASE first enqueued (1 jobs)                  T+1m 9s
  # ...
Proving jobs by stage:
  PARITY_BASE                     1 jobs    enqueued T+1m 9s                   completed T+1m 22s  (13s)
  PARITY_ROOT                     1 jobs    enqueued T+1m 23s                  completed T+7m 1s  (5m 38s)
  PUBLIC_CHONK_VERIFIER        2283 jobs    enqueued T+1m 9s..T+1m 16s         completed T+1m 21s..T+6m 55s  (5m 46s)
  # ...

Per-job duration stats:
  Type                          Count    Median      Mean       p90       Max
  PARITY_BASE                       1     13.4s     13.4s     13.4s     13.4s
  PARITY_ROOT                       1    338.3s    338.3s    338.3s    338.3s
  # ...

Per block (sorted by block number):
  Block 40 (slot 96): 18 txs, processing 29.4s
  Block 41 (slot 96): 18 txs, processing 44.8s
  # ... 

@alexghr alexghr added this pull request to the merge queue Mar 3, 2026
@alexghr alexghr removed this pull request from the merge queue due to a manual request Mar 3, 2026
@alexghr alexghr changed the base branch from next to merge-train/spartan March 3, 2026 09:41
@alexghr alexghr merged commit 88ea0a9 into merge-train/spartan Mar 3, 2026
30 of 34 checks passed
@alexghr alexghr deleted the ag/epoch-logs-analyzer branch March 3, 2026 09:41
AztecBot pushed a commit that referenced this pull request Mar 3, 2026
A script to analyze the proving timeline of an epoch. Output example:

```
$ ./spartan/scripts/extract_proving_metrics.ts prove-n-tps-real --start 2026-03-02 --epoch 3

Epoch 3 stats:
  Checkpoints: 32 (33 to 64), Blocks: 256 (40 to 295), Txs: 2283
  Blob fields per checkpoint: 211.92ms
  Blob batching: 3408.91ms

Timeline:
  Epoch started proving                                T+0s
  Blocks started processing                            T+1m 3s
  PUBLIC_CHONK_VERIFIER first enqueued (2283 jobs)     T+1m 9s
  PARITY_BASE first enqueued (1 jobs)                  T+1m 9s
  # ...
Proving jobs by stage:
  PARITY_BASE                     1 jobs    enqueued T+1m 9s                   completed T+1m 22s  (13s)
  PARITY_ROOT                     1 jobs    enqueued T+1m 23s                  completed T+7m 1s  (5m 38s)
  PUBLIC_CHONK_VERIFIER        2283 jobs    enqueued T+1m 9s..T+1m 16s         completed T+1m 21s..T+6m 55s  (5m 46s)
  # ...

Per-job duration stats:
  Type                          Count    Median      Mean       p90       Max
  PARITY_BASE                       1     13.4s     13.4s     13.4s     13.4s
  PARITY_ROOT                       1    338.3s    338.3s    338.3s    338.3s
  # ...

Per block (sorted by block number):
  Block 40 (slot 96): 18 txs, processing 29.4s
  Block 41 (slot 96): 18 txs, processing 44.8s
  # ...
```
@AztecBot
Copy link
Collaborator

AztecBot commented Mar 3, 2026

✅ Successfully backported to backport-to-v4-staging #20980.

github-merge-queue bot pushed a commit that referenced this pull request Mar 6, 2026
BEGIN_COMMIT_OVERRIDE
test: update proving-real test to mbps (#20991)
chore: epoch proving log analyzer (#21033)
chore: update pause script to allow resume (#21032)
feat: price bump for RPC transaction replacement (#20806)
refactor: remove update checker, retain version checks (#20898)
fix: (A-592) p2p client proposal tx collector test (#20998)
refactor: use publishers-per-pod in deployments (#21039)
chore: web3signer refreshes keystore (#21045)
feat(sequencer): set block building limits from checkpoint limits
(#20974)
chore(e2e): fix e2e bot L1 tx nonce reuse (#21052)
feat: Update L1 to L2 message APIs (#20913)
fix: (A-589) epochs l1 reorgs test (#20999)
feat(sequencer): add SEQ_MAX_TX_PER_CHECKPOINT config (#21016)
fix: drop --pid=host from docker_isolate (#21081)
feat: standby mode for prover broker (#21098)
fix(p2p): remove default block handler in favor of block handler
(#21105)
feat(validator): add VALIDATOR_ env vars for independent block limits
(#21060)
refactor(p2p): decouple proposal validators from base class via
composition (#21075)
feat: additional validation in public setup allowlist (onlySelf + null
msg sender) (#21122)
fix: (A-591) aztecProofSubmissionEpochs incorrectly named as
aztecProofSubmissionWindow (#21108)
refactor(sequencer): rename SEQ_GAS_PER_BLOCK_ALLOCATION_MULTIPLIER to
SEQ_PER_BLOCK_ALLOCATION_MULTIPLIER (#21125)
fix: unbound variable in check_doc_references.sh with set -u (#21126)
feat: calldata length validation of public setup function allowlist
(#21139)
fix: include mismatched values in tx metadata validation errors (#21147)
feat: single-node implementation of slash-protection signer (#20894)
feat: Remove non-protocol contracts from public setup allowlist (#21154)
chore: More updated Alpha configuration (#21155)
chore: tally slashing pruning improvements (#21161)
fix: update dependencies (#20997)
fix: omit bigint priceBumpPercentage from IPC config in testbench worker
(#21169)
refactor(p2p): (A-588) maintain sorted array in tx pool instead of
sorting on read (#21079)
fix(p2p): report most severe failure in runValidations (#21185)
fix: use dedicated L1 account for bot bridge resume tests to avoid nonce
race (#21148)
fix: parse error.message in formatViemError (#21163)
fix: bump lighthouse consensus client v7.1.0 -> v8.0.1 (#21170)
chore: code decuplication + refactor (public setup allowlist) (#21200)
END_COMMIT_OVERRIDE
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants