Em Qui, 2017-11-16 às 20:24 +0200, David Weinehall escreveu: > On Wed, Nov 08, 2017 at 04:25:42PM +0200, David Weinehall wrote: > > On Tue, Nov 07, 2017 at 05:18:21PM +0100, Daniel Vetter wrote: > > > Now that we have CI, and that pm_rpm fully passes (I guess the > > > audio > > > folks have implemented proper runtime pm for snd-hda, hooray, pls > > > confirm) it's time to enable this again by default. > > > > > > Real goal here is to have 1 configuration only that we fully > > > support, > > > instead of tons of different codes with every user/customer > > > tuning it > > > differently. And really, power stuff should work by default, and > > > should be enabled by everywhere where it is save to do so. > > > > > > v2: Completely new commit message, a few years passed since v1 > > > ... > > > > > > Cc: Takashi Iwai <tiwai@xxxxxxx> > > > Cc: Liam Girdwood <liam.r.girdwood@xxxxxxxxx> > > > Cc: "Yang, Libin" <libin.yang@xxxxxxxxx> > > > Cc: "Lin, Mengdong" <mengdong.lin@xxxxxxxxx> > > > Cc: "Li, Jocelyn" <jocelyn.li@xxxxxxxxx> > > > Cc: "Kaskinen, Tanu" <tanu.kaskinen@xxxxxxxxx> > > > Cc: "Zanoni, Paulo R" <paulo.r.zanoni@xxxxxxxxx> > > > Signed-off-by: Daniel Vetter <daniel.vetter@xxxxxxxxx> > > > > lgtm, > > > > Reviewed-by: David Weinehall <david.weinehall@xxxxxxxxxxxxxxx> > > Been testing a bit; test results are a bit discouraging when it comes > to > idle power consumption. > > Our nightly test suite logs idle power consumption before running any > tests, after running all tests, and then finally after running > powertop --auto-tune. > > The before and after cases are similar with and without patch, > but not so for the auto-tune case. > > Without this patch, powertop --auto-tune yields a massive improvement > (on NUC6i5 the power consumption drops with more than a factor of 3), > while with this patch the power consumption just drops with 10% or > so. What happens if you keep the autosuspend delay to 10000? > > Judging by the powertop output it seems as though we're getting a lot > of > interrupts from i915. > > * * * Top 10 Power Consumers * * * > > With patch: > > Usage;Events/s;Category;Description > 0,5%; 75,1;Interrupt;[124] i915 > 0,3%; 48,4;Process;/usr/lib/xorg/Xorg -core :0 -seat seat0 -auth > /var/run/lightdm/root/:0 -nolisten tcp vt7 -novtswitch > 0,1%; 42,8;Timer;hrtimer_wakeup > 0,0%; 34,9;Timer;tick_sched_timer > 4,2%; 1,1;kWork;i915_hpd_poll_init_work > 0,1%; 14,0;Process;python2 /opt/scripts/dut/dutlaunch/launch2.py -- > workspace=/opt/jenkins/workspace/Custom_test --iterations=1 > idlepower_before un > 0,0%; 13,3;Process;[rcu_preempt] > 0,8%; 1,7;Process;python /opt/scripts/dut/perf-meter.py --avgskip > 1 --name perf-meter --infofile /tmp/testname GLBenchmark testfw_app > synmark2 he > 0,0%; 3,0;Process;compiz > 0,7%; 0,11;kWork;output_poll_execute > > Without the patch: > > Usage;Events/s;Category;Description > 0,0%; 29,1;Timer;tick_sched_timer > 0,1%; 19,9;Process;python2 /opt/scripts/dut/dutlaunch/launch.py -- > workspace=/opt/jenkins/workspace/Nightly_kernel_test/kernel/151077366 > 5/SKL_6260U > 0,0%; 13,2;Process;[rcu_preempt] > 0,8%; 1,6;Process;python /opt/scripts/dut/perf-meter.py --avgskip > 1 --name perf-meter --infofile /tmp/testname GLBenchmark testfw_app > synmark2 he > 0,0%; 2,5;Process;compiz > 0,0%; 1,5;Process;java -jar slave.jar > 0,0%; 1,2;Interrupt;[3] net_rx(softirq) > 0,0%; 1,0;kWork;pci_pme_list_scan > 0,0%; 0,9;Interrupt;[121] xhci_hcd > 0,1%; 0,5;Process;perf-meter > > As can be seen the i915 driver doesn't even show up without the > patch, > while it's the main culprit with the patch. > > Just to eliminate DMC issues I'm going to do another run, but with > DMC > v1.27 instead of v1.26. > > > Kind regards, David > > > > > > --- > > > drivers/gpu/drm/i915/intel_runtime_pm.c | 4 +++- > > > 1 file changed, 3 insertions(+), 1 deletion(-) > > > > > > diff --git a/drivers/gpu/drm/i915/intel_runtime_pm.c > > > b/drivers/gpu/drm/i915/intel_runtime_pm.c > > > index 8315499452dc..dc24d008d8d4 100644 > > > --- a/drivers/gpu/drm/i915/intel_runtime_pm.c > > > +++ b/drivers/gpu/drm/i915/intel_runtime_pm.c > > > @@ -3232,7 +3232,7 @@ void intel_runtime_pm_enable(struct > > > drm_i915_private *dev_priv) > > > struct pci_dev *pdev = dev_priv->drm.pdev; > > > struct device *kdev = &pdev->dev; > > > > > > - pm_runtime_set_autosuspend_delay(kdev, 10000); /* 10s */ > > > + pm_runtime_set_autosuspend_delay(kdev, 100); > > > pm_runtime_mark_last_busy(kdev); > > > > > > /* > > > @@ -3251,6 +3251,8 @@ void intel_runtime_pm_enable(struct > > > drm_i915_private *dev_priv) > > > pm_runtime_use_autosuspend(kdev); > > > } > > > > > > + pm_runtime_allow(kdev); > > > + > > > /* > > > * The core calls the driver load handler with an RPM > > > reference held. > > > * We drop that here and will reacquire it during > > > unloading in > > > -- > > > 2.15.0.rc2 > > > > > > _______________________________________________ > > > Intel-gfx mailing list > > > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx > > > > _______________________________________________ > > Intel-gfx mailing list > > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx