I've been following the constant improvements (thanks to your buildservice-repo and to an old notebook of mine with Factory on it) and have been very impressed with your progress. Improving the main menu was such an important task as it really is the center of user-experience under openSUSE's GNOME desktop. My thanks, to both of you! :) Chris Am Freitag, den 04.04.2008, 23:09 -0600 schrieb Federico Mena Quintero:
Good news!
On cold startup, main-menu went from taking 24.4 seconds to start up, to taking 4.6 seconds.
On warm startup, it went from taking about 1.88 seconds to start up, to taking about 0.26 seconds.
This is on my machine, a Thinkpad with a slow hard drive and about 860 entries in my ~/.recently-used.xbel.
This is what Magnus and I did during the week:
* Add some checkpointing to main-menu and libslab to get timestamps at interesting places in the code.
* Avoid loading tile tables more often than needed. This makes startup and general operation faster.
* Avoid loading the recently-used store during startup; do it when the Computer menu pops up. This makes startup faster.
* Avoid loading the recently-used store twice. Makes the Computer menu pop up faster.
* Avoid reading thumbnails twice for all the document tiles. Makes the Computer memu pop up faster.
* Load expensive/global stuff during the idle time between the applet's startup and the time when the user brings up the Computer menu. This reduces both startup time and the popup time for the Computer menu, *and* lets us use idle time effectively right after startup.
* Updates to the main-menu's contents, when the recently-used files change, are now throttled. This will reduce CPU burn in general.
All of this code is in SVN trunk right now, and in our package for openSUSE 11.0. I didn't submit it upstream for gnome-2-22, since I don't want the changes in libslab to break anything (nothing should break, but hey).
I'll submit the patches for openSUSE 10.3 after fixing up the patch for that version, and after going through the internal procedure to request an online update :)
Enjoy,
Federico and Captain_Magnus
-- To unsubscribe, e-mail: opensuse-gnome+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-gnome+help@opensuse.org