[Intel-gfx] [RFC] Async flips

Jesse Barnes jbarnes at virtuousgeek.org
Wed Oct 31 17:27:02 CET 2012


On Wed, 31 Oct 2012 15:49:36 +0000
Chris Wilson <chris at chris-wilson.co.uk> wrote:

> On Wed, 31 Oct 2012 08:39:09 -0700, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> > On Wed, 31 Oct 2012 16:26:54 +0100
> > Daniel Vetter <daniel at ffwll.ch> wrote:
> > 
> > > On Wed, Oct 31, 2012 at 4:23 PM, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> > > >
> > > >> On Tue, Oct 30, 2012 at 01:33:47PM -0500, Jesse Barnes wrote:
> > > >> > The hw supports async flips through the render ring, so why not expose it?
> > > >> > It gives us one more "tear me harder" option we can use in the DDX and
> > > >> > for other cases where simply flipping to the latest buffer is more
> > > >> > important than visual quality.
> > > >>
> > > >> The only reason I can see why anyone would really want async flips is
> > > >> when you're restricted to double buffering. With triple buffering you
> > > >> should be able to override the previous flip w/o tearing.
> > > >>
> > > >> Well, actually if you use the ring based flips, then you can't do the
> > > >> override. My atomic page flip code can do it because it's using mmio
> > > >> flips. There were also other reasons favoring mmio over ring.
> > > >>
> > > >> Once the atomic code is deemed ready, I would suggest we just nuke the
> > > >> ring based flip code (pun intended).
> > > >
> > > > Yeah, I agree.  In fact one of the first versions of the flip code used
> > > > mmio, and I think it's a better way to go.
> > > 
> > > How are we gonna sync up with outstanding rendering before issuing the
> > > flip? If the answer is involves enabling the render irq, I'm not gonna
> > > like it ;-)
> > 
> > Why are you afraid of irqs when rendering is active?  We'll already be
> > awake at those times anyway...
> 
> Because it involves the driver stalling.

Can you elaborate?  I know there are pros & cons to mmio vs ring.
Synchronization is different in each case, and getting the flip to
happen when you want can be tough too in both cases.

-- 
Jesse Barnes, Intel Open Source Technology Center



More information about the Intel-gfx mailing list