All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Wilson <chris@chris-wilson.co.uk>
To: Daniel Vetter <daniel@ffwll.ch>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>,
	Ben Widawsky <ben@bwidawsk.net>,
	intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH] [RFC] drm/i915: read-read semaphore optimization
Date: Tue, 13 Dec 2011 16:59:14 +0000	[thread overview]
Message-ID: <e0d58a$2iookp@orsmga002.jf.intel.com> (raw)
In-Reply-To: <20111213160133.GA4125@phenom.ffwll.local>

On Tue, 13 Dec 2011 17:01:33 +0100, Daniel Vetter <daniel@ffwll.ch> wrote:
> Afaik the only use-case for parallel reads is video decode with
> post-processing on the render ring. The decode ring needs read-only access
> to reference frames to decode the next frame and the render ring read-only
> access to past frames for post-processing (e.g. deinterlacing). But given
> the general state of perf optimizations in libva I think we have lower
> hanging fruit to chase if we actually miss a performance target for this
> use-case.

One in the near future will be: render to backbuffer (RCS),
pageflip to scanout (BCS), read from front (RCS).

And in its current form UXA will do the back-to-front blit on the BCS.
But that is async and so not a large race window, whereas the pageflip
may takes ~16ms to process. I don't think it is entirely unfeasible that
we see some form of this whilst running compositors or games. Or at
least would if we enabled semaphores for pageflips. Except in the
pageflip scenario we know we are protected by the fb ref, so consider
the hypothetical scenario where we have a working vsync'ed blit...

The real question is in any event do we have enough instrumentation to
diagnose GPU stalls upon buffer migration? Then we can replace the read
optimisation with a tracepoint and wait for a test case.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre

  parent reply	other threads:[~2011-12-13 16:59 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-13  3:52 [PATCH] [RFC] drm/i915: read-read semaphore optimization Ben Widawsky
2011-12-13  9:49 ` Chris Wilson
2011-12-13 16:01   ` Daniel Vetter
2011-12-13 16:36     ` Keith Packard
2011-12-13 22:49       ` Ben Widawsky
2011-12-13 23:22         ` Keith Packard
2011-12-14  1:09         ` Eric Anholt
2011-12-14  3:25           ` Keith Packard
2011-12-13 16:59     ` Chris Wilson [this message]
2011-12-13 17:22 ` Eric Anholt
2011-12-13 18:36   ` Ben Widawsky
2012-01-16 21:50     ` Daniel Vetter
2012-01-16 22:20       ` Ben Widawsky
2012-01-17  3:41         ` Eric Anholt
2012-01-17 10:15         ` Daniel Vetter
2012-01-17 17:55           ` Eric Anholt

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='e0d58a$2iookp@orsmga002.jf.intel.com' \
    --to=chris@chris-wilson.co.uk \
    --cc=ben@bwidawsk.net \
    --cc=daniel.vetter@ffwll.ch \
    --cc=daniel@ffwll.ch \
    --cc=intel-gfx@lists.freedesktop.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.