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

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

    XMLWordPrintable

    Details

    • Type: Bug
    • Status: Reported
    • Priority: P2: Important
    • Resolution: Unresolved
    • Affects Version/s: 5.15.4, 6.x
    • Fix Version/s: None
    • Component/s: Quick: SceneGraph
    • Labels:
      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

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

              Dates

              Created:
              Updated: