[Intel-gfx] [PATCH 2/3] drm/i915: Boost RPS frequency for CPU stalls

Jesse Barnes jbarnes at virtuousgeek.org
Wed Oct 2 00:39:40 CEST 2013


On Tue, 1 Oct 2013 23:23:32 +0100
Chris Wilson <chris at chris-wilson.co.uk> wrote:

> On Tue, Oct 01, 2013 at 02:54:26PM -0700, Jesse Barnes wrote:
> > On Wed, 25 Sep 2013 17:34:56 +0100
> > Chris Wilson <chris at chris-wilson.co.uk> wrote:
> > 
> > > +void gen6_rps_idle(struct drm_i915_private *dev_priv)
> > > +{
> > > +	mutex_lock(&dev_priv->rps.hw_lock);
> > > +	if (dev_priv->info->is_valleyview)
> > > +		valleyview_set_rps(dev_priv->dev, dev_priv->rps.min_delay);
> > > +	else
> > > +		gen6_set_rps(dev_priv->dev, dev_priv->rps.min_delay);
> > > +	mutex_unlock(&dev_priv->rps.hw_lock);
> > > +}
> > 
> > Looks pretty good, but I think these should be rpe_delay instead.  Not
> > much point in going down to a less efficient frequency...
> 
> Less efficient for what? My concern here is only with power draw when
> idle. As soon as we start to render again (well very shortly afterwards
> with this particular iteration) we bump up to rpe and then beyond.
> 
> Correct me if I am wrong but rpe is an inflection point rather than a
> minumum?

So yes, running at a lower than RPe freq will use less power, but it'll
also be less efficient (perf/power) than doing the same rendering at
RPe.

But if we're really idle, RC6 will kick in and the freq won't matter
(as long as it gets down to RPe anyway, since on VLV that's the only
way we'll get down to Vmin when we shut down).

Jesse



More information about the Intel-gfx mailing list