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

Performance issue with image painting on Mac

    XMLWordPrintable

Details

    Description

      Customer report:

      "Attached is a modified scribble app (ModifiedScribble.zip) which reproduces the problem on Mac. It has been constructed in a similar style to our commercial Qt application (ActivInspire). I tested using Qt6.2.1 and macOS Catalina. The problem is seen when attached to a 4K monitor. The problem can be seen with a mouse (also pen and touch). Try to draw a circle, you will get a multi-sided shape. This problem existed in Qt5, but was not as bad. The problem did not exist in Qt4. The ActivInspire source code has not changed in this area since it was working perfectly in Qt4.

      I modified QRasterPaintEngine::drawImage (changed source code attached - QRasterPaintEngineDrawImageDebugChanges.txt ) to log the paths taken through the method as most of the time was spent in _platform_memmove$VARIANT$Haswell, called from QRasterPaintEngine::drawImage.

      You can see from the attached log for drawing a small circle (smallCircleLog.txt), that most of the time is from 1 path in QRasterPaintEngine::drawImage."

       

       

      Attachments

        1. QRasterPaintEngineDrawImageDebugChanges.txt
          21 kB
        2. smallCircleLog.txt
          92 kB
        3. ModifiedScribble.zip
          2.35 MB
        4. ModifiedScribbleImage.png
          ModifiedScribbleImage.png
          743 kB
        5. Qt4SmallCirclesImage.png
          Qt4SmallCirclesImage.png
          1.06 MB
        6. Qt5SmallCirclesImage.png
          Qt5SmallCirclesImage.png
          834 kB
        7. InspireNonNative.rtf
          82 kB
        8. ScribbleNonNative.rtf
          57 kB
        9. scribbleNative.rtf
          35 kB
        10. InspireNative.rtf
          75 kB
        11. InspireWithNonNativeWindows.rtf
          104 kB

        Issue Links

          Activity

            People

              qt.team.graphics.and.multimedia Qt Graphics Team
              vgt Eirik Aavitsland
              Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved: