aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorLukasz Kasprzak <lukas@labunix.xyz>2026-09-12 21:34:22 +0200
committerLukasz Kasprzak <lukas@labunix.xyz>2026-09-12 21:34:22 +0200
commita6e442a645902011b2081c216daaec052cdc6ce6 (patch)
tree9af223981b78f3ebfcc498958c34b2cdb22c0fcf /docs
parent3f8679be9373ee7508d512dfdfc1dda0839c7f90 (diff)
downloadkrino-a6e442a645902011b2081c216daaec052cdc6ce6.tar.gz
krino-a6e442a645902011b2081c216daaec052cdc6ce6.zip
krino: no performance target for 0.0.1
Lukasz: "no performance goal". Section 13s "under 2 s on a 4-core laptop" is replaced with the decision and its evidence, so it is not reinstated later: measured throughput is dominated by the external extractors, not by krino. A real folder of 265 files with 164 needing pdftotext at roughly 80 ms each takes 12-17 s; a synthetic 4405-file tree needing no extraction takes 1.09 s. A single threshold would describe popplers speed and the shape of one folder. The measurement is still reported in the release notes; nothing is promised.
Diffstat (limited to 'docs')
-rw-r--r--docs/design.md10
1 files changed, 8 insertions, 2 deletions
diff --git a/docs/design.md b/docs/design.md
index 42c691c..8e4e914 100644
--- a/docs/design.md
+++ b/docs/design.md
@@ -524,8 +524,14 @@ Rules for the GUI to come:
keyword matching matters next to extraction.
- Duplicates: stat-only grouping, partial hash, then full hash.
- Measured before release on a real downloads directory of a few hundred
- files, about half of them PDFs, and reported in the release notes. Goal: a
- full plan with content rules in under 2 s on a 4-core laptop. `make bench`
+ files, about half of them PDFs, and reported in the release notes.
+ **No performance target for 0.0.1.** Measured throughput is dominated by the
+ external extractors, not by krino: on a real folder of 265 files, 164 of them
+ needing `pdftotext` at roughly 80 ms each, a full plan takes 12-17 s, while a
+ synthetic tree of 4405 files needing no extraction takes 1.09 s. A single
+ threshold would therefore describe poppler's speed and the shape of one
+ folder rather than anything about krino, and would fail or pass for reasons
+ outside its control. Report the measurement; promise nothing. `make bench`
runs the Go benchmarks on generated trees.
## 14. Build, dependencies, release