[imp] Re: [horde] horde/imp migration problems, cpu bound on
solaris (fwd)
Vasilios Hoffman
vhoffman01 at wesleyan.edu
Thu Apr 10 18:18:01 PDT 2003
I looked at that just now and came to the same conclusion!
The old imp had no folders setting, it was basically the root of your home
directory. I kept that for backwards compatability.
Me, being an admin, had a huge list of folders and that was dogging
things. However, it used to be just as slow when I tested it on other
servers (I set this up on 3 different machines) where my home directory
was basically empty. For example, before phpa the login page still took
over a second to load and that had no imap components.
So, it looks like the phpa accelerator made a huge difference (login page
is almost instantaneous now).
As for mailbox.php, changing 'folders' to an empty directory cuts
mailbox.php to ~1.5 seconds on average.
That's still slower than I would like but *much* better. So phpa made the
difference, but I couldn't tell because imap was also killing me for my
account specifically. I'm going to look at other ways to speed it up.
imapproxy, btw, adds a second for some reason making it ~2.5 seconds on
average. goodbye imapproxy :)
right now I get:
Top of mailbox.php: 0.000136971473694, line 16
end of function definitions: 0.000298023223877, line 85
end require_once: 0.564681053162, line 108
end checkAuthentication(): 1.25042200089,line 117
initialize identities: 1.25144398212, line 159
about to run through the action handlers: 1.25187897682, line 166
done running through the action handlers: 1.25209105015, line 384
begin IMP::flistSelect: 1.25223398209, line 390
end IMP::flistSelect: 1.26253604889, line 394
begin some inbox sorting: 1.26269495487, line 399
end sorting: 1.26987802982, line 447
end page logic: 1.27013897896, line 563
end some other stuff: 1.28691506386, line 600
done with requires of .inc: 1.34607005119, line 624
about to build array of message info and sort order: 1.34637701511, line 628
about to display message information: 1.37002897263, line 681
now processing footer: 1.39535903931, line 910
storing prefs: 1.45570099354, line 934
End of mailbox.php 1.45892906189, line 943
so the first set of requires takes .5 seconds:
$timestamp = getmicrotime() - $script_start;
fputs($profile," end of function definitions: $timestamp, line 85\n");
fflush($profile);
$set = false;
if (isset($new_lang)) {
$language = $new_lang;
$set = true;
}
define('IMP_BASE', dirname(__FILE__));
require_once IMP_BASE . '/lib/base.php';
require_once IMP_BASE . '/lib/Message.php';
require_once HORDE_BASE . '/lib/MIME.php';
require_once HORDE_BASE . '/lib/MIME/Part.php';
require_once HORDE_BASE . '/lib/MIME/Viewer.php';
require_once HORDE_BASE . '/config/mime_drivers.php';
require_once HORDE_BASE . '/config/mime_mapping.php';
require_once HORDE_BASE . '/config/html.php';
require_once IMP_BASE . '/config/html.php';
require_once IMP_BASE . '/config/mime_drivers.php';
require_once IMP_BASE . '/lib/Identity/IMP.php';
$timestamp = getmicrotime() - $script_start;
fputs($profile," end require_once: $timestamp, line 108\n");
fflush($profile);
and the checkAuthentication() takes another .5 or so:
$timestamp = getmicrotime() - $script_start;
fputs($profile," end require_once: $timestamp, line 108\n");
fflush($profile);
/* Initialize $actionID to a resonable value if it hasn't already been
set. */
$actionID = Horde::getFormData('actionID');
IMP::checkAuthentication();
$timestamp = getmicrotime() - $script_start;
fputs($profile," end checkAuthentication(): $timestamp,line 117\n");
fflush($profile);
So, I'm going to guess that the checkAuthentication is probably
imap-related, but the require_once statments should be faster imho.
perhaps the phpa accelerator cache is missing them, or something... I'll
look into this. If I can shave another .5 seconds off, I'll be happy and
ready to test it again.
-V
On Thu, 10 Apr 2003, Chuck Hagenbuch wrote:
> Quoting Vasilios Hoffman <vhoffman01 at wesleyan.edu>:
>
> > The 2 big, bad guys are IMP::flistSelect done here (with my code stuck
> > in, ~2.6 seconds):
>
> How many folders do you have? What IMAP server? What is 'folders' set to in
> imp/config/servers.php?
>
> -chuck
>
> --
> Charles Hagenbuch, <chuck at horde.org>
> "... It is not more light we need, but more warmth! We die of cold, not of
> darkness. It is not the night that kills, but the frost." - Miguel de
> Unamuno
>
> --
> IMP mailing list
> Frequently Asked Questions: http://horde.org/faq/
> To unsubscribe, mail: imp-unsubscribe at lists.horde.org
>
More information about the imp
mailing list