xpra icon
Bug tracker and wiki

Opened 5 years ago

Closed 5 years ago

Last modified 4 years ago

#646 closed defect (invalid)

spinners can be very expensive with OpenGL

Reported by: onlyjob Owned by: Antoine Martin
Priority: major Milestone:
Component: client Version: trunk
Keywords: Cc:

Description

Today I attached to remote session from workstation with relatively old VGA card "Radeon HD 5770" (fglrx driver). OpenGL was enabled by default. When connection lagged Xpra showed animated spinners over windows -- at this time (while spinners were visible) I couldn't do anything, not even switch between applications or access Xpra menu. As soon as I disabled OpenGL in Xpra spinners no longer bothered me.
With OpenGL spinners drawn over four windows crippled GUI to nearly complete halt.
I've never noticed this issue on more powerful "Radeon HD 7970" with same driver and OS version. Perhaps under some circumstances Spinners can be very expensive with OpenGL. Is there a way to throttle them, especially when there are many windows? Or maybe disable OpenGL for spinners?

Change History (6)

comment:1 Changed 5 years ago by Antoine Martin

What you are describing is a driver bug. Repainting a window should not be able to lock your session in this way.

(this ticket is somewhat similar to #353)

r5353 slows things down a bit, but there is no way we can fix buggy drivers..
So I am closing this as notabug, feel free to re-open if this can be reproduced with other, non-buggy, driver + card combinations.

comment:2 Changed 5 years ago by Antoine Martin

Resolution: invalid
Status: newclosed

comment:3 in reply to:  1 Changed 5 years ago by onlyjob

Replying to totaam:

(this ticket is somewhat similar to #353)


Somewhat similar except that I've never had a problem with high CPU usage. If I'm not mistaken #353 was reported even before Xpra got OpenGL support... This is about high GPU usage...

What you are describing is a driver bug. Repainting a window should not be able to lock your session in this way.

r5353 slows things down a bit, but there is no way we can fix buggy drivers..
So I am closing this as notabug, feel free to re-open if this can be reproduced with other, non-buggy, driver + card combinations.


I'm not convinced that it is a driver bug although it might be a bug. It could be inefficient driver or GPU is just not powerful enough. One spinner do not cripple affected system but multiple spinners do. Let's consider hypothetical (but not uncommon) case when 10 (or more) applications are running in session. How many simultaneous spinners you would consider reasonable to run to utilise nearly 100% GPU while normal OpenGL acceleration of all those windows hardly use 50%?

comment:4 Changed 5 years ago by Antoine Martin

Even re-painting at 10fps, painting simple shapes like this, you should be able to paint hundreds of windows without noticing the extra load. Even on an outdated GPU, say a 1990s GPU. Even those were able to paint hundreds of textures per second (and not just plain rectangles).

I've just tested by running the client with 10 windows and:

XPRA_FAKE_BROKEN_CONNECTION=1 xpra attach ...

xpra is at 1% cpu usage, Xorg at about 10% with a compositing manager. The GPU is idle, on its lowest power setting.

comment:5 Changed 5 years ago by onlyjob

Makes perfect sense, thanks. Buggy driver (or card) it is...

comment:6 Changed 4 years ago by Antoine Martin

Please see ticket:818#comment:6, I think this is probably fixed by this backport.

Note: See TracTickets for help on using tickets.