Even more confused now... The two evince imports you are moving doesn't even cause the dynamic library to be loaded, so they should have absolutely no performance impact.
That's the normal case in gobject-introspection, libraries are loaded lazily, when you try to use one of the functions. Gtk is an exception because gtk_init is called automatically on import and there are probably other libraries that do something similar. Though I verified that's not the case for Evince by looking at the smaps. On 8 November 2013 19:44, Gonzalo Odiard <gonz...@laptop.org> wrote: > 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 > > > _______________________________________________ > Sugar-devel mailing list > Sugar-devel@lists.sugarlabs.org > http://lists.sugarlabs.org/listinfo/sugar-devel > > -- Daniel Narvaez
_______________________________________________ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel