Seem that loading from asset storage is really slow.. I am writing a QML application with around 15 QML files. The loading time is 20 sec. I have tried to run profiler and take out many component to speed up.
Finally , I found that just take out the statement "import ./widgets" can reduce 10sec load time! The statement is used to load QML from other folder with 3 QML files only. Ofcoz , I will switch to use Qt resources. But I wonder that is the problem of asset storage or I did something wrong with my code? On 30 October 2013 22:06, BogDan <bog_dan...@yahoo.com> wrote: > Hi, > > I just checked the Qt5 assets implementation and for some reason that I > fail to understand the assets cache mechanism from Qt4 is not there ... > that is the reason why Necessitas is way much faster than Qt5.x :) > I'll add the cache mechanism ASAP. > > Thanks! > > Cheers, > BogDan. > > > > > > > >OK. You just nailed it! After moving the files into a resource file the > "startup" went from a little over 4 seconds to less than half second. Just > for context: my application has 18qml files, 2 small javascript files and > 20 or so images and not all of them are loaded on startup! > > > > > >A little surprising and a lot disappointing is that my main phone > (android 4.1.2) seems to make the problem even worst. I tried on a Nexus7 > (android 4.3) and a 2+year old HTC inspire (android 4.2.2) and both are > much quicker when not using the resource file (there is the possibility > that the actual android has been improved since both of these devices have > newer versions of it). They are still much slower than using the resource > file. > > > > > >On hindsight: > >1. my original qml 1.0 version uses the resource file - didn't occur to > me that this could make such a difference! > > > >2. The Qt 5.1 document on android suggests using the resource ( > http://qt-project.org/doc/qt-5.1/qtdoc/android-support.html) and even > states "The most convenient option is to bundle the resources into a qrc > file, which gets built into the application binary. This approach reduces > the porting effort considerably and provides faster access to the > resources. It is also a cross-platform approach, which makes porting to > other platforms easier.". For the 5.2 version I think we should make it > stand out with some "big bold red blinking letters (TM)" and also change > the wizard template to use resources by default for android. It can be the > difference between a "useless" application that takes forever to start and > "Qt/qml is really great even on android"! > > > > > >Thanks all! > >Felipe > > > > > > > >On Wed, Oct 30, 2013 at 4:09 AM, BogDan <bog_dan...@yahoo.com> wrote: > > > >Hi, > >> > >>Android's assets are indeed slower (~2X) than Qt's resource system, > >>but not that slow ! :) > >> > >>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 :). > >> > >>Cheers, > >>BogDan. > >> > >> > >> > >> > >>> > >>> I think i know whats the issue if its still not fixed. > >>> > >>> My guess is that you don't use the resource system of Qt but the > android > >>> application assets to store your components, the last time i had issues > >>> with this all the time was lost in the horrible slow fileengine for > assets on > >>> android. It looked to me it was reopening the assets all the time > which seems > >>> expensive. > >>> > >>> I haven't tried it since 5.1 but if it is not fixed its very likely the > >>> cause > >>> of your problem. > >>> > >>> Björn > >>> Am Mittwoch, 30. Oktober 2013, 07:07:41 schrieb Koehne Kai: > >>> > >>>> > -----Original Message----- > >>>> > From: development-bounces+kai.koehne=digia....@qt-project.org > >>>> > [mailto:development-bounces+kai.koehne=digia....@qt-project.org] > On > >>>> > Behalf Of Felipe Crochik > >>>> > Sent: Tuesday, October 29, 2013 7:13 PM > >>>> > To: Hausmann Simon > >>>> > Cc: development@qt-project.org > >>>> > Subject: Re: [Development] Qt 5.2 Beta - is it really much slower > to > >>> parse > >>>> > qml/javascript on android? > >>>> > > >>>> > Simon, > >>>> > Quick update: > >>>> > I tried arm7va and got almost the same results (a very small > >>> improvement > >>>> > but still over 3seconds). > >>>> > > >>>> > It doesn't seem to be related at all to my code. It seems that it > >>> is > >>>> > adding some "fixed amount" of time for each component than > >>> has to parse. > >>>> > It doesn't look like is related to what they are or how complex. > >>> For > >>>> > instance in one of my tests I had a component that was a Rectangle > >>> with a > >>>> > Text inside, by just refactoring the Text to become another > component > >>> I > >>>> > went from 1.2s load time to almost 2. The example does not include > any > >>>> > javascript!!!! > >>>> > >>>> Have you tried running the app with the QML Profiler attached? > >>>> > >>>> See > >>>> > >>>> > >>> > http://qt-project.org/doc/qtcreator-2.8/creator-qml-performance-monitor.html > >>>> > >>>> Regards > >>>> > >>>> Kai > >>>> > >>>> _______________________________________________ > >>>> Development mailing list > >>>> Development@qt-project.org > >>>> http://lists.qt-project.org/mailman/listinfo/development > >>> > >>> -- > >>> Björn Breitmeyer | bjoern.breitme...@kdab.com | Software Engineer > >>> KDAB (Deutschland) GmbH&Co KG, a KDAB Group company > >>> Germany: +49-30-521325470, Sweden (HQ): +46-563-540090 > >>> KDAB - Qt Experts - Platform-independent software solutions > >>> > >>> _______________________________________________ > >>> Development mailing list > >>> Development@qt-project.org > >>> http://lists.qt-project.org/mailman/listinfo/development > >>> > >>_______________________________________________ > >>Development mailing list > >>Development@qt-project.org > >>http://lists.qt-project.org/mailman/listinfo/development > >> > > > > > > > _______________________________________________ > Development mailing list > Development@qt-project.org > http://lists.qt-project.org/mailman/listinfo/development >
_______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development