Enhancements for Render composite request
mhopf at suse.de
Fri Sep 4 05:41:17 PDT 2009
On Sep 01, 09 18:08:55 +0100, Barry Scott wrote:
> Keith Packard wrote:
> > 2) No vblank synchronization. Anyone wanting to double buffer 2D apps
> > has no way of avoiding tearing. I'd like this inside the X server
> > to make updates under a RandR transform sync to vblank.
> This sounds like you end up in the same problems that the XV tear free
> support has.
> Namely that because the Intel driver can only have the GPU do one thing
> at a time
> the frame rate goes to hell if more then one app writes to the screen.
Some for ATI radeon + radeonhd chips. I've thought back and forth but
haven't come up with a reasonable solution. Page flipping seems like the
only solution, but the logic gets really mad if multiple sync points
(e.g. GL contexts) are involved. Also I think the old way of duplicating
render commands on both surfaces is a bad idea, I guess it's better to
track damage and copy everything in one after the swap (+wait for the
swap to actually be finished).
> The worst case
> would be to split the screen in two with left and right windows. If both
> the left and
> right apps ask for a tear free render the frame rate will halve.
Good point. Though I guess you *could* optimize for these cases.
It would be one hell of a logic block, though.
Matthias Hopf <mhopf at suse.de> __ __ __
Maxfeldstr. 5 / 90409 Nuernberg (_ | | (_ |__ mat at mshopf.de
Phone +49-911-74053-715 __) |_| __) |__ R & D www.mshopf.de
More information about the xorg-devel