Performance Benchmarks
panache performance metrics on real-world documents
Benchmark Suite
Benchmarks are run on real Quarto documents to measure realistic performance.
Methodology
- Measures three phases: full pipeline (parse+format), parse only, format only
- Reports average time per iteration and throughput (KB/s)
- Source of truth:
benches/benchmark_results.json(schema version 1)
Results
Small (synthetic)
Document: small.qmd (748 bytes, 48 lines)
Iterations: 1000
| Metric | Avg time |
|---|---|
| Full pipeline | 0.07 ms |
| Parse only | 0.03 ms |
| Format only | 0.03 ms |
| Throughput | 10273.39 KB/s |
Medium (Quarto tutorial)
Document: medium_quarto.qmd (8893 bytes, 146 lines)
Iterations: 100
| Metric | Avg time |
|---|---|
| Full pipeline | 0.47 ms |
| Parse only | 0.12 ms |
| Format only | 0.29 ms |
| Throughput | 18363.33 KB/s |
Tables (table-heavy)
Document: tables.qmd (18833 bytes, 636 lines)
Iterations: 50
| Metric | Avg time |
|---|---|
| Full pipeline | 1.18 ms |
| Parse only | 0.42 ms |
| Format only | 0.64 ms |
| Throughput | 15611.24 KB/s |
Math (computation-heavy)
Document: math.qmd (28562 bytes, 664 lines)
Iterations: 50
| Metric | Avg time |
|---|---|
| Full pipeline | 1.41 ms |
| Parse only | 0.36 ms |
| Format only | 0.81 ms |
| Throughput | 19758.15 KB/s |
Large (comprehensive)
Document: large_authoring.qmd (29858 bytes, 592 lines)
Iterations: 20
| Metric | Avg time |
|---|---|
| Full pipeline | 1.08 ms |
| Parse only | 0.41 ms |
| Format only | 0.58 ms |
| Throughput | 26908.64 KB/s |
Pandoc MANUAL (stress)
Document: pandoc_manual.md (299536 bytes, 8036 lines)
Iterations: 3
| Metric | Avg time |
|---|---|
| Full pipeline | 16.43 ms |
| Parse only | 5.55 ms |
| Format only | 10.31 ms |
| Throughput | 17799.78 KB/s |
Reproducing
# Download test documents
cd benches/documents && ./download.sh
# Generate JSON + docs page
./benches/generate_docs.sh