GUI Lags using Qt with C++ and QML, but not when using Tcl with Python

Description

Using Qt 5.15 with an OpenGL backend produces lags in a simple GUI program.

Summary

When using a button constructed with QML from the Qt framework, a lag is observed frequently. Sometimes a button will register input and initiate the event processing logic, but the instruction does not complete for a range from a fraction of a second to over twenty seconds. Can you help me triage the lag on an Jetson AGX Orin Developer Kit?

Assumptions to Test

The underlying Ubuntu system calls and other frameworks like OpenGL might be competing for a lock.

Introducing more events to the event loop seems to cause more events to be processed quickly. Clicking a stalled button sometimes updates the GUI, but sometimes the events stack to later produce a chain of responses.

Only a GUI with OpenGL lags.

Capturing input with Tcl and Python produces less lag. Only sometimes is a click missed, and this may be explained by user error on the input of successive clicks. I recorded a maximum of over 10 clicks per second, so any lag from the GUI could be within a tenth of a second. Qt implements a GUI with OpenGL, where my program using Tkinter does not use OpenGL.

Hi,
We have graphics samples in

/usr/src/nvidia/graphics_demos

Please check and see if you can repoduce the issue with either sample. So that we can run the same to reproduce it.

Results

The GUI does not stall with any demo.

/usr/src/nvidia/graphics_demos/bubble

The mouse input is responsive.

/usr/src/nvidia/graphics_demos/eglstreamcube

The GUI smoothly renders a cube with an NVIDIA logo.

/usr/src/nvidia/graphics_demos/gearscube

The GUI smoothly renders gears on the faces of a cube.

/usr/src/nvidia/graphics_demos/ctree

A tree is rendered with quick changes to the lighting.

/usr/src/nvidia/graphics_demos/gears-basic

The GUI smoothly renders a group of interlocked gears.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.