View Single Post
Posts: 1,418 | Thanked: 1,541 times | Joined on Feb 2008
#180
Originally Posted by pycage View Post
I think I'm making some good progress there.
The next release should startup faster. But 7 seconds on the N8x0? Not even microB achieves this (just measured; 9 seconds).
Ah, I wouldn't use MicroB as a benchmark here

As weird as it sounds, it's a full screen rendering because of changing the layout and the toolbar contents. I'm now trying to minimize the amount of rendering a bit further. Especially the toolbar stuff should be optimizable.
I do full screen rendering on n810 at about 15fps using C, with some assembler acceleration. Consider skipping on GDK completely and using SDL + some handcoded stuff instead: you may be losing time due to GDK issues.

The screens contents are moved by the amount that you scroll (Xserver-side pixmap copying). Only the newly visible items get rendered. Every time a new item with a thumbnail gets rendered, the thumbnail has to be read from file. There is some thumbnail and item caching involved, too, for speeding up the process, but these caches can't hold many items.
Sounds perfectly reasonable, shouldn't be a problem.

Text rendering can take some time when pango has to lookup new characters (e.g. for displaying CJK characters), but once the characters are loaded the delay won't happen again.
Naah, no CJK here, so it should not be an issue

It would be interesting to see what happens when you disable thumbnail loading and rendering by opening /usr/lib/mediabox/components/media_viewer/MediaItem.py and commenting out the line with
I will experiment with this stuff tonight and report findings in this thread. Another interesting idea would be to profile the whole thing using non-intrusive profiling tools. This requires a special Linux kernel though.