[PATCH xserver] glamor: Limit outstanding drawing queue with glClientWaitSync

Keith Packard keithp at keithp.com
Mon Jun 6 16:02:48 UTC 2016


Michel Dänzer <michel at daenzer.net> writes:

> I wrote an eerily similar patch a while ago, but the problem turned out
> to be in the GL or kernel driver. Are you sure that's not the case for
> you?

I'm seeing a long lag when running benchmarks that don't ever need
to synchronize with the hardware. Given that the X server doesn't use
SwapBuffers, I'm not sure where else we would expect rate limiting to occur?

> Should glamor_block_handler get the same treatment?

No, that's used for synchronizing buffers before swapping, not called
periodically like the "real" block handler.

> One potential issue (at least with glamor_block_handler) is that we can
> end up calling glFlush quite often without any preceding drawing
> commands. If that causes too much overhead, we may need to start keeping
> track of whether we've submitted any OpenGL drawing commands, and
> short-circuit (_)glamor_block_handler if we haven't.

Yeah, I haven't measured any performance impact of doing it here;
benchmarks avoid hitting the block handler.

-- 
-keith
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 810 bytes
Desc: not available
URL: <https://lists.x.org/archives/xorg-devel/attachments/20160606/8f3be533/attachment.sig>


More information about the xorg-devel mailing list