[Development] Status of QtDeclarative on Windows?
gunnar.sletta at nokia.com
gunnar.sletta at nokia.com
Mon Jan 16 08:54:12 CET 2012
It looks like the qwindowsglcontext.cpp file does not request a swap interval of 1 anywhere, which would mean you have to pick the option "always vsync, regardless of what application requests"-option if such a thing exists. If you did this and it makes no difference then the driver is broken :)
Another option is to disable the threaded renderer on windows using the environment variable QML_BAD_GUI_RENDER_LOOP, doing this would put it on par with X11/XCB. This is something we anyways need in order to support multiple toplevel QML windows as the current threaded implementation expects to block on a full buffer queue per window rather than swapBuffers to block immediately.
The environment variable will switch to use the timer driven, GUI-only render loop. This also disables the vsync driven animations, but for a driver that ignores vsync, this is what we have to use. If we played nice, we would expose this behavior from the QPlatformIntegration / QPlatformGLContext so QtDeclarative could adapt properly, but we currently don't have API and implementation in place to catch this.
On Jan 16, 2012, at 1:45 AM, ext Todd.Rose at nokia.com wrote:
> Well it looks like the slowness I'm seeing is due to the rendering thread using all of the CPU. I tried toggling the nvidia driver settings for vsync and triple-buffering but that doesn’t change the behavior. Is there anything else I can try? Do other people see acceptable performance on Windows currently?
>> -----Original Message-----
>> From: development-bounces+todd.rose=nokia.com at qt-project.org
>> [mailto:development-bounces+todd.rose=nokia.com at qt-project.org] On
>> Behalf Of ext Todd.Rose at nokia.com
>> Sent: Saturday, January 14, 2012 4:47 PM
>> To: Storm-Olsen Marius (Nokia-MP/Austin); development at qt-project.org
>> Subject: Re: [Development] Status of QtDeclarative on Windows?
>> It seems equally slow when running debug and release libs, but will double
>> check later this weekend to make sure it's not user-error. I think it has more
>> to do with running with a video card that doesn't provide much (if any?)
>> hardware acceleration. But I was assuming that even in that case that QML2
>> would be just as good as QML1. Clearly something is causing that to not be
>> the case.
>> What's the expectation when using video cards that don't offer OpenGL
>> hardware acceleration?
>>> -----Original Message-----
>>> From: Storm-Olsen Marius (Nokia-MP/Austin)
>>> Sent: Saturday, January 14, 2012 9:12 AM
>>> To: development at qt-project.org; Rose Todd (Nokia-M/Alpharetta)
>>> Subject: Re: [Development] Status of QtDeclarative on Windows?
>>> Are you sure you are at least running the release version of your
>>> Debug version uses the debug CRT libs (and a debug Qt which does the
>>> same), so everything will be a lot slower than the end product.
>>> You cannot really evaluate performance with debug builds.
>>> Sent from my Nokia N9
>>> On 1/13/12 23:12 ext Todd.Rose at nokia.com wrote:
>>> Just for fun I’ve been playing with a medium-sized QML app that we had
>>> written for 4.7/Symbian and porting it to Qt5/QML2. Mostly have been
>>> working on Linux but the past few days I finally got around to
>>> compiling Qt5 on Windows and playing around with the project enough so
>>> that it would compile and run under qmlscene (it’s mostly qml/js with
>>> a C++ plugin module as well).
>>> Anyway, the performance on my Windows box is horrible. ListView
>>> scrolling, image loading, animations, everything is like it’s running
>>> in quicksand. Is this expected? If not, what do I need to do to in
>>> order to troubleshoot? This machine is relatively old and has a
>>> crappy video card (older Nvidia Quadro), but it should be more than
>>> good enough to run this app smoothly. Any tips or tricks to enable extra
>> debug tracing?
>> Development mailing list
>> Development at qt-project.org
> Development mailing list
> Development at qt-project.org
More information about the Development