On Thu, 23 Nov 2006, Pawel Salek wrote:
I have only anecdotal evidence: with mix, I am running an imap server on a
NSLU2 device (266MHz ARM processor, 32MB memory) with an USB2 disk
attached, serving mailboxes with 20000+ messages (for few users,
admittedly, because of memory limits). Selecting such mailbox
takes on this device 1-4 seconds. Opening similar unix-format mailbox
would take perhaps a minute (never had a patience to actually measure it).
Now, if you more memory on the device (sufficient to allow that 20000+
message traditional UNIX format mailbox to get into the buffer cache),
then the *second* open would be much faster than the first.
Without the benefit of the buffer cache, I daresay that opening in mix is
about two orders of magnitude faster. With buffer cache boosing
traditional UNIX performance, mix is only about 1.5 faster to twice as
fast.
The problem with any statistics is that they are the third type of lie
(the first two being "lies" and "damned lies"). Simple tweaks to the
input variables can dramatically change the output.
Two cases in point to demonstrate how incautious statistics gathering can
mislead you:
(1) mix is probably slower than traditional UNIX or mbx format mailboxes
for very small (single-digit) message counts. Mix has to open and read
three files; traditional UNIX and mbx only has to open and read one file.
It's doubtful that anyone really cares about the difference for mailboxes
which are smaller than the point that mix starts pulling ahead; the time
is negligible in either case. On the other hand, I wouldn't bother
converting a single message mailbox that has the email from Grandma with
her new phone number. :-)
(2) mbx is slower than traditional UNIX if the mailbox primarily consists
of very small messages. That's because mbx ends up doing more disk reads
in that case; it does a disk read for each message while traditional UNIX
reads in 8K chunks. This is ameliorated by the buffer cache, even during
first open, so most of the hit is in system call overhead rather than I/O.
The upshot is that to see the effect, you need *tiny* messages (much
smaller than 8K). But the effect does happen, and it can mislead you into
concluding that mbx is slower than traditional UNIX.
In real-world conditions:
mix does better than mbx, and mbx does better than traditional UNIX. If
you get statistics that say otherwise, investigate the methodology.
-- Mark --
http://panda.com/mrc
Democracy is two wolves and a sheep deciding what to eat for lunch.
Liberty is a well-armed sheep contesting the vote.
_______________________________________________
Imap-uw mailing list
[email protected]
https://mailman1.u.washington.edu/mailman/listinfo/imap-uw