Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-93882

GUI and render thread shouldn't sync when only Animators are active

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P2: Important
    • None
    • 5.15.4, 6.x
    • Quick: SceneGraph
    • None

    Description

      This observation came from https://bugreports.qt.io/browse/QTBUG-92904 ... Qt syncs the GUI and render thread every frame when an Animator is running, although there really isn't anything to sync at all while the animator is running.

      I have created 2 WIP patches against qtbase and qtdeclarative (dev/6.2) that "fix" this behavior and free up the GUI thread completely while Animators are running:

      https://codereview.qt-project.org/c/qt/qtbase/+/350313
      https://codereview.qt-project.org/c/qt/qtdeclarative/+/350314

      Currently, only the normal threaded renderloop is patched.

      I've also attached a test program to verify that the blockedForSync intervals are completely gone for Animators after the patch is applied: no-render-sync.tgz

      Currently tested on Linux against both dev and 5.15 (the qtdeclarative patch doesn't apply cleanly there and needs manual adjustments)

      Attachments

        For Gerrit Dashboard: QTBUG-93882
        # Subject Branch Project Status CR V

        Activity

          People

            rgriebl Robert Griebl
            rgriebl Robert Griebl
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes