>>>> "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 stats. The
Hrvoje> ones in 21.0 are mostly spent to stat the `.el' and `.elc' files.
Hrvoje> Michael, what was your opinion about the optimization we discussed,
Hrvoje> which would forbid directories ending with `.el' or `.elc'? I think
Hrvoje> it would be worth implementing it, especially for non-Unix systems,
Hrvoje> where a stat is extremely costly.
I finally understand what's causing the difference between 21.0 and
previous versions: The organization of the Core Lisp directory has
changed. Previously, it contained *only* subdirectories. Now, it
contains lots of files and only one subdirectory---term. So all this
stat'ing is just for term's benefit.
Options:
1. I hack as Hrvoje suggests.
2. We move the stuff from term one level up and change
`paths-load-path-depth' to 0.
3. We move the stuff in Core Lisp one level down (to "prim" or
something) and presto.
Of course, *I* would like 3. Steve?
--
Cheers =8-} Chipsy
Friede, Völkerverständigung und überhaupt blabla