Skip to content

Commit 64b0cf7

Browse files
slusarzsirainen
authored andcommitted
mail-compress: Add benchmarking info
1 parent bbc1953 commit 64b0cf7

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

docs/core/plugins/mail_compress.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -133,3 +133,34 @@ itself doesn't care about that.
133133

134134
Unlock the maildir by sending a TERM signal to the maildirlock process (killing
135135
the PID it wrote to stdout).
136+
137+
## Benchmarking
138+
139+
::: info
140+
A simple benchmarking exercise to compare compression ratios/speed between
141+
the various supported compression algorithms.
142+
:::
143+
144+
### Setup
145+
146+
* Compression of a real-world corpus of mails of various lengths,
147+
compositions, and types
148+
* 128,788 messages
149+
* Messages imported via [[man,doveadm-import]] into a single [[link,sdbox]]
150+
mailbox
151+
* Mailbox storage in tmpfs partition, so drive performance should be
152+
irrelevant
153+
* Time is total clock time (real + sys) to compress the entire mailbox
154+
* Size is the total size of the sdbox mail data directory ONLY
155+
* Dovecot indexes are not included in size
156+
157+
### Results
158+
159+
| Algorithm | Size (GB) | Compression | Time (MM:SS) |
160+
| --------- | --------- | ----------- | ------------ |
161+
| None | 7.99 | 0% | 0:21 |
162+
| `bz2` | 3.41 | 57% | 7:08 |
163+
| `gz` | 3.44 | 57% | 2:30 |
164+
| `deflate` | 3.44 | 57% | 2:34 |
165+
| `lz4` | 4.76 | 40% | 0:23 |
166+
| `zstd` | 3.41 | 57% | 0:34 |

0 commit comments

Comments
 (0)