[imp] Fwd: New IMP HEAD Caching benchmarks

Michael M Slusarz slusarz at horde.org
Fri May 19 10:06:24 PDT 2006



----- Forwarded message from slusarz at mail.curecanti.org -----
     Date: Fri, 19 May 2006 09:43:20 -0600
     From: Michael M Slusarz <slusarz at mail.curecanti.org>
  Subject: Re: [Ptmail-zend] Re: [PTMail] #21: Viewfinder extremely slow

Quoting Chuck Hagenbuch <chuck at zend.com>:

> Quoting Michael M Slusarz <slusarz at mail.curecanti.org>:
>
>> I don't have a number, but the IMAP traffic saved is a not
>> insignificant amount.  If you want me to try to run a benchmark, I can
>> see what I can come up with.
>
> I'd find that very interesting and useful personally, but I also
> understand if that's not how you want to spend your time. :)

OK - very, very rough benchamrk.  And the benchmark is non-exclusive
in that it is pretty much picking up on all changes (i.e. both mailbox
list caching and message caching; also any improvements to the overall
algorithims used by IMP to access the mailboxes) between the current
IMP 4.1.2 and IMP HEAD.

My test:
login, access virtual inbox, then each of my 11 mailboxes that contain
my filtered messages.  Most of these mailboxes are 10 messages or
less.  The last mailbox is my Spam mailbox which curretnly has about
450+ messages.  In the SPAM mailbox, navigate back through three
different pages.  Then cycle through the 11 mailboxes again and do the
same 3 page accesses in my spam folder and then logout.

Rationale:
Going through the mailboxes more than once will show us the effect
that caching a mailboxes state has when we navigate away from it - in
IMP 4.1 we always have to rebuild the mailbox when we return; in IMP
HEAD, we simply pull the cached message list and use it unless there
has been a change to my mailbox (during my test, there was no activity
in any of my mailboxes so I don't believe the cached value ever was
expired).

Most (if not all) of the messages in the SPAM mailbox are marked as
unseen.  I have previews enabled for unseen messages - so navigating
through 4 screens of the SPAM mailbox also will indicate how mailbox
caching *tremendously* helps when it comes to preview generation.

Additionally, I didn't clear my message cache before doing this test -
thus a more accurate representation of what message caching will do
once a majority of your mailboxes are populated with the cached
information.

Results:
Using imapproxy, I simply captured all traffic and diverted to a log
file.  THen i simply compared log file sizes between the two runs
(there is a small amount of debug information contained in the
logfiles - I would say less than 1% - that I'm simply going to ignore).

IMP HEAD: about 300,000 bytes
IMP 4.1: about 2,850,000 bytes

Thus, from the IMP -> IMAP traffic perspective, full caching resulted
in about a tenfold increase in performance.  Obviously, this would
also translate into a reduced workload for IMP since it does not have
to parse this extra 2.5 million bytes of information.  Additionally,
more/most of the IMAP traffic is now status calls rather than more
expensive operations (e.g. FETCH/SEARCH/SORT), and I believe that at
least several IMAP servers are optimized to return this stauts
information (i'm pretty sure dovecot is this way).

michael

_______________________________________
Michael Slusarz [slusarz at curecanti.org]


----- End forwarded message -----


___________________________________
Michael Slusarz [slusarz at horde.org]


More information about the imp mailing list