<div dir="ltr"><div class="gmail_extra">Hi<br><br></div><div class="gmail_extra"><div class="gmail_quote">On Wed, Jun 10, 2015 at 6:17 PM, Chris Wilson <span dir="ltr"><<a href="mailto:chris@chris-wilson.co.uk" target="_blank">chris@chris-wilson.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div id=":87z" class="a3s" style="overflow:hidden">I did not find how you serialised the XServer reading from the SHM<br>
following the call to XShmPutImage (which you may want to flush?) with<br>
subsequent rendering into the image.<br>
<br></div></blockquote><div><br></div><div>Correct, there is no sync. And I think that explains the temporary glitches I observe with gnome-shell when moving windows around for ex (they are always temporary, there is fortunately always a pending update to fix it). I am afraid it would have to wait for ShmCompletionEvent, unfortunately in sync, since there is a single buffer, and mesa doesn't own the event queue&loop (I think). Note that the sw x11 backend also seems to suffer from this.<br><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div id=":87z" class="a3s" style="overflow:hidden">
Another trick you may like to investigate is using the X server to do<br>
format conversions and tune the swrast for a small number of local<br>
formats (i.e. rgb16, argb32). This of course requires using XRender<br>
after the PutImage - and at that point keeping it as a ShmPixmap is<br>
hugely beneficial to UMA drivers.</div></blockquote></div><br></div><div class="gmail_extra">That's an interesting optimization. However, my use case is mostly with spice/vnc, so I don't think that would improve performance here since it's all software-based.<br></div><div class="gmail_extra"><br clear="all"></div><div class="gmail_extra">thanks<br><br></div><div class="gmail_extra">-- <br><div class="gmail_signature">Marc-AndrĂ© Lureau</div>
</div></div>