PutImage vs BackgroundPixmap (was Re: Open Shared Memory and Render Pictures)

Carsten Haitzler (The Rasterman) raster at rasterman.com
Sat Aug 6 12:03:04 UTC 2016


On Sat, 06 Aug 2016 13:54:22 +0200 Michael Titke <michael.tiedtke at o2online.de>
said:

> With SHM pixmaps VSI/GIO can finally display a pixmap. While the Intel 
> graphics card of my old MacBook might not be that speed daemon I'm a 
> little bit surprised to see "jumpy" window resizes. Perceived 
> performance is important and sometimes just plainly misleading but both 
> ShmPutImage (with expose event round trips) as well as a background 
> pixmap (with deselected expose events and without any round trip) lead 
> to the same perceived performance where the window border takes its time 
> to follow the pointer and starts to jump to reach it faster.
> The "jumpiness" reminds me of mutex saturation effects or maybe this is 
> due to the compositing of some part of the Ubuntu Unity Desktop shell 
> collection? The complexities of the modern input output graph ...

no. this is just how it goes. because everything is async, the compositor/wm
has resized the window, then some small time later the client gets a
configurenotify event, then client renders some update, then sends to x, then x
tells compositor of a new damage, compositor gets event goes "ooh time to
draw", compositor draws, talks to x again to display...

all the while there is no concept of ownership of the window contents. it can
change at any time (99.999% of the time changed by the client that created the
window) and compositor could be drawing and that content change under its feet
while it draws.

this is how the cookie crumbles. :)

without a compositor - just draop the compositor part of the pipeline - then
its still client direct to x and xserver puts it in the framebuffer. there is
still async/lag and thus... you will see it. unless of course your system is so
insanely fast and workload so low that you can get this done before even a
refresh begins on the screen to show the issue. :)

> On 05/08/2016 18:58, Dennis Clarke wrote:
> > On 08/05/2016 12:38 PM, Ilya Anfimov wrote:
> >> X Window Sys-
> >> tem Protocol X Consortium Standard.
> >
> > For those that want to know :
> >
> >     X Window System Protocol X Consortium Standard.
> >     https://www.x.org/releases/X11R7.7/doc/xproto/x11protocol.pdf
> >
> > _______________________________________________
> > xorg at lists.x.org: X.Org support
> > Archives: http://lists.freedesktop.org/archives/xorg
> > Info: https://lists.x.org/mailman/listinfo/xorg
> > Your subscription address: %(user_address)s
> >
> 
> _______________________________________________
> xorg at lists.x.org: X.Org support
> Archives: http://lists.freedesktop.org/archives/xorg
> Info: https://lists.x.org/mailman/listinfo/xorg
> Your subscription address: %(user_address)s

-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    raster at rasterman.com



More information about the xorg mailing list