[gcompris-devel] GCompris 8.5PRE for N900 - speed issues ahead

Bruno Coudoin bruno.coudoin at free.fr
Thu Dec 31 11:45:51 UTC 2009


Le jeudi 31 décembre 2009 à 08:06 +0200, Terje Bergström a écrit :
> Hi,
> 
> I have been working on porting GCompris to N900 and I have had some
> success and some discouraging results.

This sounds to be the normal state of software development ;)

> I first ported gcompris 8.4.5 to N900, i.e. the one that I ported
> earlier to N810. As GCompris was really slow on N810, I hadn't updated
> the port for quite a while. Now with N900 it started to be playable. I
> uploaded this version to Maemo's extras-devel repository, and it's
> also available in extras-testing. This one actually works pretty well,
> even though it is still missing some things, like Python activities.

Great, I am glad you continue this effort.

> Then I took the latest version of gcompris snapshot (8.5PRE3) and
> ported that to N900. I also at the same time managed to resolve the
> Python issues I had before, so I was able to get quite a big number of
> games running. In emulator everything was fine, but now with device, I
> get a lot of lag everywhere. Starting the game takes something like 10
> seconds, and just pressing power button takes seven seconds before I
> get the dialog.

Hum, yes I also see lags when running the version on my Atom based
aspire one. It is still useable on it but this show evidence that there
is a problem there. By the way, I just digged again in my code in
goocanvassvg.c especially the search limit function which I am trying to
improve. Once done I'll run a callgrind on it to see where we loose our
time.

> I'll try to figure out where the speed issue is, but any hints are
> welcome. N900 is an ARM Cortex A8 processor with 600MHz speed. It has
> 256MB of RAM. The processor has a floating point unit that is able to
> compute single-precision floats (not doubles). One suspect is librsvg
> and its speed.

What is your screen resolution ? GCompris has to rescale the screen to
fit the N910 and now with cairo it does anti aliasing which takes for
sure more CPU than the gnome canvas did. Perhaps it's the explanation.

Bruno.






More information about the Gcompris-devel mailing list