Composite and Shared Memory?
Deron Johnson
Deron.Johnson at Sun.COM
Sun Nov 14 10:45:07 PST 2004
I agree with Owen. I played around with putting the composite backing
pixmap in shared memory it it was indeed complicated and it didn't
work quite right. Keith and I discussed this and we decided that
the lightpipe approach of performing the copy was simple and not
too expensive.
In the long term, I would like to see OpenGL support interprocess
shared texture and have the DDX render directly into the texture.
In this situation there would be no need to have a backing pixmap
in shared memory.
Owen Taylor wrote:
> On Sun, 2004-11-14 at 11:00 +0100, Amir Bukhari wrote:
>
>>it will be valuable if we could replace the off-screen Pixmap, which
>>Composite created when Window redirect, with one we create at client
>>side. this give us the ability to use Shared Memory Pixmap as
>>off-screen, so we didn't need to copy the redirected window pixmap to
>>our shared memory pixmap each time Damage occure.
>>is it that possible to do currently or it must be there new change in
>>Composite?
>
>
> How does this work in conjunction with resizing windows? As soon as the
> window is resized (larger), the X server is going to need a new Pixmap.
>
> In the case of a combination window manager and compositing
> manager, for override redirect windows, you could have a
> "CompositeConfigureWindow" that along with the width/height took a
> Pixmap to use as long as the window stayed that size.
>
> But that would be moderately complex to implement, and is the short
> term inefficiency really worth that complexity?
>
> If you look at a GTK+ app redrawing with luminocity (I assume that
> Looking Glass is similar), there's a lot of copying going on
>
> GTK+ draws => Temporary double buffer
> ||
> \/
> Offscreen redirected pixmap
> ||
> \/
> ShmPixmap ----------- ShmPixmap
> ||
> \/
> OpenGL texture
> ||
> \/
> Texture in card / AGP memory
>
> Just dropping *one* of these four copies isn't enough to make an
> OpenGL CM production ready. If we want hardware acceleration for
> drawing *within* windows (and that includes traditional OpenGL
> clients and Xvideo) then anything that involves pulling image
> data back into main system memory (like a ShmPixmap) needs to be
> avoided.
>
> Regards,
> Owen
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> xorg mailing list
> xorg at freedesktop.org
> http://freedesktop.org/mailman/listinfo/xorg
More information about the xorg
mailing list