Skip to content

Commit bcc09ff

Browse files
committed
reduce pack size
1 parent 4d38435 commit bcc09ff

File tree

8 files changed

+464
-458
lines changed

8 files changed

+464
-458
lines changed

README.md

Lines changed: 2 additions & 453 deletions
Large diffs are not rendered by default.

docs/BENCHMARK.md

Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
## Benchmark
2+
3+
Both digital pdf and scanned pdf with a total 28 pages.
4+
5+
```sh
6+
clk: ~4.02 GHz
7+
cpu: 11th Gen Intel(R) Core(TM) i5-11400H @ 2.70GHz
8+
runtime: bun 1.2.5 (x64-linux)
9+
10+
benchmark avg (min … max) p75 / p99 (min … top 1%)
11+
--------------------------------------------------------- -------------------------------
12+
pdfReader.getTexts() 461.74 ms/iter 459.53 ms █
13+
(436.19 ms … 524.12 ms) 513.69 ms ███
14+
( 2.29 mb … 107.16 mb) 27.86 mb █▁███▁█▁█▁▁▁▁▁▁▁▁▁▁▁█
15+
16+
pdfReaderLegacy.getTexts() 217.58 ms/iter 233.21 ms █
17+
(196.63 ms … 238.71 ms) 236.38 ms █ ▅
18+
( 1.58 mb … 118.27 mb) 40.84 mb ▇▁█▁▁▁▇▁▁▁▁▁▁▁▁▁▇▁█▇▇
19+
20+
summary
21+
pdfReaderLegacy.getTexts()
22+
2.12x faster than pdfReader.getTexts()
23+
24+
--------------------------------------------------------- -------------------------------
25+
pdfReader.getLinesFromTexts() 3.82 ms/iter 3.91 ms ▆ █
26+
(3.52 ms … 4.95 ms) 4.53 ms ▇█ ▂ ▄█▆
27+
( 0.00 b … 1.29 mb) 590.91 kb ▅██▇█▂███▇▅▃▂▂▂▁▂▂▂▂▂
28+
29+
pdfReaderLegacy.getLinesFromTexts() 4.77 ms/iter 4.87 ms █▄ ▄▅▅
30+
(4.41 ms … 5.66 ms) 5.52 ms ██▂ ███▅
31+
( 0.00 b … 1.29 mb) 647.72 kb ████▇████▆▇▆█▂▂▄▄▅▂▁▄
32+
33+
summary
34+
pdfReader.getLinesFromTexts()
35+
1.25x faster than pdfReaderLegacy.getLinesFromTexts()
36+
37+
--------------------------------------------------------- -------------------------------
38+
pdfReader.getCompactLinesFromTexts() 3.87 ms/iter 3.98 ms ▂█ ▄▃▂
39+
(3.57 ms … 4.60 ms) 4.40 ms ██▃▂ ███▄▂
40+
( 0.00 b … 2.06 mb) 920.63 kb ▇█████▃▇█████▄▄▄▃▄▃▁▂
41+
42+
pdfReaderLegacy.getCompactLinesFromTexts() 4.62 ms/iter 4.71 ms ▃▂ █▂
43+
(4.27 ms … 5.59 ms) 5.52 ms ██ ▆██
44+
( 0.00 b … 1.55 mb) 876.22 kb ▆██▇▆███▇█▅▂▅▄▂▂▁▂▁▁▂
45+
46+
summary
47+
pdfReader.getCompactLinesFromTexts()
48+
1.19x faster than pdfReaderLegacy.getCompactLinesFromTexts()
49+
50+
--------------------------------------------------------- -------------------------------
51+
pdfReader.open() 14.30 ms/iter 19.97 ms █▄
52+
(8.56 ms … 31.51 ms) 27.49 ms ██
53+
( 0.00 b … 58.52 mb) 19.89 mb ██▅▁▃▃▁▃▇▁▃▁▅▁▇█▁▅▁▁▃
54+
55+
pdfReaderLegacy.open() 6.19 ms/iter 6.51 ms █
56+
(5.11 ms … 13.27 ms) 10.40 ms ██▂ ▂
57+
( 0.00 b … 29.13 mb) 682.14 kb ██████▅▄▃▁▃▁▄▃▁▂▁▁▁▁▂
58+
59+
summary
60+
pdfReaderLegacy.open()
61+
2.31x faster than pdfReader.open()
62+
63+
--------------------------------------------------------- -------------------------------
64+
pdfReader.renderAll() 1.10 s/iter 1.12 s █
65+
(1.05 s … 1.13 s) 1.12 s █ █ █
66+
( 66.35 mb … 248.17 mb) 191.68 mb █▁▁▁▁▁▁▁▁██▁▁▁█▁▁▁███
67+
68+
pdfReaderLegacy.renderAll() 1.68 s/iter 1.70 s █
69+
(1.56 s … 1.84 s) 1.77 s ▅ ▅▅ ▅▅ ▅█▅ ▅ ▅
70+
(231.91 mb … 384.77 mb) 352.18 mb █▁██▁▁▁▁██▁███▁█▁▁▁▁█
71+
72+
summary
73+
pdfReader.renderAll()
74+
1.52x faster than pdfReaderLegacy.renderAll()
75+
```

0 commit comments

Comments
 (0)