[Sugar-devel] Performance: activities start up time

Gonzalo Odiard gonzalo at laptop.org
Fri Nov 8 13:44:35 EST 2013


There are many issues in Sugar regarding performance,
but one of the more visible to the user is how much time the activities
take to start. This is not so evident in newer hardware,
but is important in XO-1. Is so important than by example, Peru will use
sugar 0.94
instead of a newer because o this.

I was doing some testing with the main activities:

https://docs.google.com/spreadsheet/ccc?key=0As_jQJX0Me6XdDI2clFpX1FFRHhKMHVFZGkyakdST2c&usp=drive_web#gid=0

(These measures were done in a XO-1)

I first blamed to the port from gtk2 to gtk3 of the big regressions in
performance,
but after looking with a little of detail, some can be solved easily.

One of the arguments of the dynamic bindings was a better startup time due
to not need initialize all the libraries until is needed use them. Then the
import should
be lighter than before. Looks like that is not so true.

In the case of Write activity, I was able to reduce the start up in 7 or 8
seconds, just delaying the gstreamer initialization [1], and 1 or 2 seconds
more delaying two other imports.

In the case of Browse activity, just delaying the import of Evince
libraries to the moment when a pdf is opened, improve the start up time in
13 seconds (patch attached). The start up time is even better than the
version in 0.94

I think this work of identify big libraries used only in specific moments,
can be applied in other cases.

Gonzalo

[1]
http://git.sugarlabs.org/write/mainline/commit/5dd843cf415d0c65e2927540225b0098f2b71cd0
[2]
http://git.sugarlabs.org/write/mainline/commit/dba223f5749f510735692a06f246acee30ab50bf
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20131108/4a05b300/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Delay-Evince-import-until-is-needed-to-improve-activ.patch
Type: text/x-patch
Size: 2834 bytes
Desc: not available
URL: <http://lists.sugarlabs.org/archive/sugar-devel/attachments/20131108/4a05b300/attachment.bin>


More information about the Sugar-devel mailing list