public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Deepak S <deepak.s@linux.intel.com>
Cc: intel-gfx@lists.freedesktop.org
Subject: Re: [PATCH 3/7] drm/i915: Configure GEN6_RP_DOWN_TIMEOUT on CHV
Date: Tue, 20 Jan 2015 11:28:45 +0200	[thread overview]
Message-ID: <20150120092845.GB19354@intel.com> (raw)
In-Reply-To: <54BDC866.9060702@linux.intel.com>

On Tue, Jan 20, 2015 at 08:45:50AM +0530, Deepak S wrote:
> 
> On Monday 19 January 2015 05:20 PM, ville.syrjala@linux.intel.com wrote:
> > From: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> > CherryViewA0_iGfx_BIOS_DRIVER_PUNIT_spec_y14w28d5 tells us not to enable
> > the RP down timeout interrupt, and says that the timeout value is hence
> > not used. We do enable that interrupt currently though, so leaving the
> > timeout as 0 results in very poor performance as the GPU frequency keeps
> > dropping constantly. So just program the register with the recommended
> > value.
> >
> > Leaving the interrupt enabled doesn't seem to do any harm so far. So
> > I've decided to leave it on for now, just to avoid making CHV a
> > special case.
> >
> > This fixes the performance regression from:
> >   commit 5a0afd4b78ec23f27f5d486ac3d102c2e8d66bd7
> >   Author: Deepak S <deepak.s@linux.intel.com>
> >   Date:   Sat Dec 13 11:43:27 2014 +0530
> >
> >      drm/i915/chv: Use timeout mode for RC6 on chv
> >
> > Cc: Deepak S <deepak.s@linux.intel.com>
> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > ---
> >   drivers/gpu/drm/i915/intel_pm.c | 1 +
> >   1 file changed, 1 insertion(+)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> > index ee9a5f9..8c7a07d 100644
> > --- a/drivers/gpu/drm/i915/intel_pm.c
> > +++ b/drivers/gpu/drm/i915/intel_pm.c
> > @@ -4743,6 +4743,7 @@ static void cherryview_enable_rps(struct drm_device *dev)
> >   	I915_WRITE(GEN6_RC_CONTROL, rc6_mode);
> >   
> >   	/* 4 Program defaults and thresholds for RPS*/
> > +	I915_WRITE(GEN6_RP_DOWN_TIMEOUT, 1000000);
> 
> I agree programing RP_DOWN_TIMEOUT Can cause the perf issue. I am surprised why we are not seeing similar issues with RC6 EI?

My observation running xonotic was that the freq did seem to drop in
EI mode too (as it should since the TO vs. EI is about RC not RP), but
somehow it didn't impact performance. I can't really explain why.
RC6 residency was a flat 0 with EI, and 5-20% with TO. With the fix
performace was the more or less the same in both cases, without the
fix TO mode suffered a 40% performance drop whereas EI didn't.

> 
> anways, we do not use GEN6_RP_DOWN_TIMEOUT in chv. Programing it's value to default should not harm

Except we do use GEN6_RP_DOWN_TIMEOUT, as in we enable the relevant
interrupt. I did also test a patch that left GEN6_RP_DOWN_TIMEOUT at 0,
and instead disabled the interrupt, and that also fixed the performance
bug. But I wanted to avoid making CHV even more of a special case, so
I've left the interrupt enabled, at least for now.

> Reviewed-by: Deepak S <deepak.s@intel.com>
> 
> >   	I915_WRITE(GEN6_RP_UP_THRESHOLD, 59400);
> >   	I915_WRITE(GEN6_RP_DOWN_THRESHOLD, 245000);
> >   	I915_WRITE(GEN6_RP_UP_EI, 66000);

-- 
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

  reply	other threads:[~2015-01-20  9:28 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-01-19 11:50 [PATCH 0/7] drm/i915: CHV RC6/turbo fixes and improvements ville.syrjala
2015-01-19 11:50 ` [PATCH 1/7] drm/i915: Disable RC6 before configuring in on VLV/CHV ville.syrjala
2015-01-19 12:23   ` Chris Wilson
2015-01-20  3:17   ` Deepak S
2015-01-19 11:50 ` [PATCH 2/7] drm/i915: Change VLV GEN6_RP_DOWN_TIMEOUT value to decimal ville.syrjala
2015-01-19 12:23   ` Chris Wilson
2015-01-20  3:19   ` Deepak S
2015-01-19 11:50 ` [PATCH 3/7] drm/i915: Configure GEN6_RP_DOWN_TIMEOUT on CHV ville.syrjala
2015-01-20  3:15   ` Deepak S
2015-01-20  9:28     ` Ville Syrjälä [this message]
2015-01-19 11:50 ` [PATCH 4/7] Revert "Revert "drm/i915/chv: Use timeout mode for RC6 on chv"" ville.syrjala
2015-01-20  3:20   ` Deepak S
2015-01-19 11:50 ` [PATCH 5/7] drm/i915: Drop VLV checks from rc6p and rc6pp sysfs files ville.syrjala
2015-01-19 12:16   ` Chris Wilson
2015-01-20  3:21   ` Deepak S
2015-01-19 11:50 ` [PATCH 6/7] drm/i915: Rename 'reg' to 'clk_reg' to unconfuse it from the other 'reg' ville.syrjala
2015-01-19 12:17   ` Chris Wilson
2015-01-19 12:24   ` Chris Wilson
2015-01-20  3:22   ` Deepak S
2015-01-19 11:50 ` [PATCH 7/7] drm/i915: Add media rc6 residency file to sysfs ville.syrjala
2015-01-19 12:27   ` Chris Wilson
2015-01-19 19:16   ` shuang.he
2015-01-20  3:24   ` Deepak S
2015-01-20  8:50     ` Daniel Vetter
2015-01-20  9:30       ` Ville Syrjälä

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=20150120092845.GB19354@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=deepak.s@linux.intel.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox