>>>>> "Hrvoje" == Hrvoje Niksic <hniksic(a)srce.hr> writes:
Hrvoje> Now that we are closed to code freeze, I've looked at the startup
Hrvoje> speed again, and here is what I got:
Hrvoje> $ truss -t stat -o out xemacs -q -nw -f kill-emacs
Hrvoje> I tried this with XEmacs 20.3 (the default configuration), and with my
Hrvoje> 21.0 installation containing a moderate number of packages (probably
Hrvoje> less than there were in 20.3).
Hrvoje> Basically, 20.3 performs 96 stats, while 21.0 performs 651
Hrvoje> stats.
On the technical side, could you try again with
`packages-hierarchy-depth' (in packages.el) changed to 0?
Hrvoje> The ones in 21.0 are mostly spent to stat the `.el' and `.elc'
Hrvoje> files. Michael, what was your opinion about the optimization
Hrvoje> we discussed, which would forbid directories ending with `.el'
Hrvoje> or `.elc'? I think it would be worth implementing it,
Hrvoje> especially for non-Unix systems, where a stat is extremely
Hrvoje> costly.
Well, the stat count is one thing. The really important factors
though are timings and the subjective startup time. While people
complained before I limited recursion depth, nobody has complained
since. I'm not sure you're complaining here. Are you?
I really would like to keep the complexity of the code down as far as
possible to keep it as maintainable as possible. I'm totally not
averse to implementing optimization hacks once there's solid proof
they're necessary.
On another note, is a full stat really necessary on NT to compute
file-directory-p?
--
Cheers =8-} Chipsy
Friede, Völkerverständigung und überhaupt blabla