Just tried Dovecot with 85k mails from Linux kernel mailing list, total of 357MB. I mostly wanted to see if the new binary tree file works well. And it does :) Nothing gets slowed down after deleting messages all around the mailbox.
I tried several things with Dovecot, UW-IMAPd and Courier. You'll see that Dovecot is faster in everything else except raw I/O which is a bit strange, have to look why.
I think the most important thing anyway is the time spent opening mailbox. Clients are doing "STATUS mailbox (UNSEEN)" very often and that has to be fast. With Dovecot it's so small that I didn't even bother adding it to the benchmarks, with UW-IMAPd it's 16 seconds, with courier 2 seconds.
Full results can be found at http://dovecot.procontrol.fi/dovecot-benchmark.txt
On Tue, 2002-10-08 at 00:43, Timo Sirainen wrote:
Full results can be found at http://dovecot.procontrol.fi/dovecot-benchmark.txt
Updated to contain Cyrus benchmarks as well. Cyrus' BODY and ENVELOPE fetches are equilevant to Dovecot's "BODY and ENVELOPE cached" benchmarks.
So, we slightly beat Cyrus in many things, EXPUNGE most notably. BODY[] fetching is slower probably because of our I/O problems, and possibly also because we didn't store messages with CR+LFs (in which case we would use sendfile(), and that should be _fast_).
We're also slow with message flag changes because maildir requires rename()ing the mail files, we could later add optimization not to do it but rely on flags specified in index file.
On Tue, 2002-10-08 at 03:33, Timo Sirainen wrote:
So, we slightly beat Cyrus in many things, EXPUNGE most notably. BODY[] fetching is slower probably because of our I/O problems, and possibly also because we didn't store messages with CR+LFs (in which case we would use sendfile(), and that should be _fast_).
Actually, after trying again a few more times (rebooting between), Cyrus' BODY[] got much slower. Updated the benchmark once more, now added Dovecot with CR+LF and Dovecot with 32bit file offsets (default is 64bit).
On Tue, 2002-10-08 at 06:23, Timo Sirainen wrote:
Actually, after trying again a few more times (rebooting between), Cyrus' BODY[] got much slower. Updated the benchmark once more, now added Dovecot with CR+LF and Dovecot with 32bit file offsets (default is 64bit).
After 3 hours of tweaking which didn't make much difference, I finally tried if filesystem had any effect on the speed. It had. A lot. Using the same mail files as Cyrus, I got the time going from 2:32 down to 1:41. Cyrus used 2:25 to do the same, meaning we easily beat Cyrus.
Now, uw-imapd is still faster with mbox handling..
participants (1)
-
Timo Sirainen