[Development] Qt 5.2 Beta - is it really much slower to parse qml/javascript on android?

Eskil Abrahamsen Blomfeldt eskil.abrahamsen-blomfeldt at digia.com
Wed Oct 30 10:25:06 CET 2013


On 10/30/2013 09:09 AM, BogDan wrote:
> Hi,
>
> Android's assets are indeed slower (~2X) than Qt's resource system,
> but not that slow ! :)

 From our experience the Android assets system is *extremely* slow for 
listing large file sets. It's bad to the degree that I suspect it has 
exponential complexity. We're talking actual *minutes* to list a large 
file set (I don't remember the actual count, but it was an actual 
application, not a constructed benchmark.) Note that Qt was not included 
in this test, so the slowness was entirely in the Android APIs.

This is a known issue in the Android community, and the work-around is 
to always bundle a file list for the assets and use that instead of the 
Android APIs. We can easily generate this list in our deployment tool, 
so I'm hoping I have time to fix it for Qt 5.2. Otherwise it should be 
done for Qt 5.2.1.

>
> If I recall correctly in the beginning of this thread Kai said that using
> Necessitas SDK it was ok, and I don't think he is using another technique
>   to store the qml files than he is using for Necessitas. Also the assets
> implementation should be pretty much the same ... unless me (or someone else)
> screw the implementation in Qt 5.2 :).

This could be due to changes in QML. If QtQuick 2 is doing more lookups 
in the file system it would be very visible in assets loading.

The easiest way to find out is to move the assets into qrc. We've done 
this for other cases and it usually fixes the problem. If it doesn't, 
then we need to look elsewhere.

-- Eskil



More information about the Development mailing list