Skip to content

Better timing #1627

@doutv

Description

@doutv

Plonky3 timing is nice, you can see the percentage

INFO     prove [ 1.04s | 0.86% / 100.00% ]
INFO     ┝━ infer log of constraint degree [ 5.64ms | 0.54% ]
INFO     ┝━ commit to trace data [ 519ms | 29.22% / 50.13% ]
INFO     │  ┕━ coset_lde_batch [ 216ms | 20.91% ] dims: 2633x32768
INFO     ┝━ compute quotient polynomial [ 306ms | 29.60% ]
INFO     ┝━ commit to quotient poly chunks [ 16.8ms | 0.80% / 1.62% ]
INFO     │  ┝━ coset_lde_batch [ 6.71ms | 0.65% ] dims: 4x32768
INFO     │  ┕━ coset_lde_batch [ 1.76ms | 0.17% ] dims: 4x32768
INFO     ┝━ compute_inverse_denominators [ 7.92ms | 0.77% ]
INFO     ┝━ reduce matrix quotient [ 65.4ms | 0.01% / 6.32% ] dims: 2633x65536
INFO     │  ┝━ compute opened values with Lagrange interpolation [ 46.6ms | 4.50% ]
INFO     │  ┕━ reduce rows [ 18.7ms | 1.81% ]
INFO     ┝━ reduce matrix quotient [ 65.9ms | 0.01% / 6.36% ] dims: 2633x65536
INFO     │  ┝━ compute opened values with Lagrange interpolation [ 48.3ms | 4.67% ]
INFO     │  ┕━ reduce rows [ 17.5ms | 1.69% ]
INFO     ┝━ reduce matrix quotient [ 3.11ms | 0.00% / 0.30% ] dims: 4x65536
INFO     │  ┝━ compute opened values with Lagrange interpolation [ 2.54ms | 0.25% ]
INFO     │  ┕━ reduce rows [ 569µs | 0.05% ]
INFO     ┝━ reduce matrix quotient [ 3.09ms | 0.00% / 0.30% ] dims: 4x65536
INFO     │  ┝━ compute opened values with Lagrange interpolation [ 2.49ms | 0.24% ]
INFO     │  ┕━ reduce rows [ 595µs | 0.06% ]
INFO     ┕━ FRI prover [ 33.1ms | 0.01% / 3.20% ]
INFO        ┝━ commit phase [ 14.2ms | 1.37% ]
INFO        ┝━ grind for proof-of-work witness [ 17.5ms | 1.69% ]
INFO        ┕━ query phase [ 1.35ms | 0.13% ]

Plonky3 use tracing crate, while Plonky2 timing is hand-written

You can see Plonky3 usage here: https://github.com/search?q=repo%3APlonky3%2FPlonky3+instrument&type=code
It is more developer-friendly, allowing custom attached message

Plonky2 timing: https://github.com/0xPolygonZero/plonky2/blob/main/plonky2/src/util/timing.rs

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Status

In Progress

Relationships

None yet

Development

No branches or pull requests

Issue actions