broadwell systems besides i7 don't seem to have FBC enabled |
||||||||||||||||||
Issue description
I was looking at some graphs of memory controller bandwidth from CWP data and noticed that some Celeron, i3 and i5 Broadwell systems seemed to have a constant read bandwidth regardless of cpu activity whereas all i7 systems (mostly Samus) don't show this constant read bandwidth. I've attached some graphs which slice the data by cache size (2M = celeron, 3M = i3 and i5, 4M = i7)
I looked at a 1080p auron_yuna system and looked at the memory read bandwidth on a static guest login screen and saw a little under 500MB/sec of read bandwidth, on a totally idle system
localhost ~ # perf stat -a -e cycles -e uncore_imc/data_reads/ -e uncore_imc/data_writes/ sleep 10
Performance counter stats for 'system wide':
63392769 cycles
4872.80 MiB uncore_imc/data_reads/ [100.00%]
6.20 MiB uncore_imc/data_writes/
10.002199006 seconds time elapsed
This suggests that FBC isn't enabled on this system.
marcheu@ also suggested that without FBC we wouldn't get into Package C7, but it looks like this Yuna system does get into pc7. Sameer mentioned that FBC is only required for C7 at very high resolutions, and at 1080p it's probably possible to see some pc7 residency without FBC.
I tried to determine if FBC was on by looking at /sys/kernel/debug/dri/0/i915_fbc_status
but all systems report this:
localhost ~ # cat /sys/kernel/debug/dri/0/i915_fbc_status
FBC unsupported on this chipset
So it seems that file is unreliable. Is it possible that somehow we enabled FBC on Samus systems but not on other Broadwell systems?
,
Mar 22 2016
,
Mar 22 2016
Are you saying "broadwell systems besides samus don't have panel self-refresh"?
,
Mar 22 2016
That's possible too -- would panel self-refresh mean we don't do a constant scan out? I have similar graphs for Haswell and they don't show that strong floor on memory read bandwidth that you see in the Broadwell graphs
,
Mar 22 2016
Panel self-refresh will completely remove all bandwidth to the display. FBC can only shrink the traffic but not eliminate it completely. It depends on the contents -- noisy content is harder to compress, solid colors should compress really well. If you see a different bandwidth usage with a fullscreen jpeg than with a fullscreen solid color, then FBC is enabled.
,
Mar 22 2016
It looks like it is not enabled on this Yuna system: This is the www.google.com: perf stat -a -e cycles -e uncore_imc/data_reads/ -e uncore_imc/data_writes/ sleep 10 Performance counter stats for 'system wide': 224211799 cycles 5074.72 MiB uncore_imc/data_reads/ [100.00%] 37.06 MiB uncore_imc/data_writes/ 10.004006980 seconds time elapsed this is a photograph of the early that fills the screen www.solarviews.com/raw/earth/bluemarblewest.jpg +200% localhost ~ # perf stat -a -e cycles -e uncore_imc/data_reads/ -e uncore_imc/data_writes/ sleep 10 Performance counter stats for 'system wide': 135274509 cycles 5071.99 MiB uncore_imc/data_reads/ [100.00%] 10.11 MiB uncore_imc/data_writes/ 10.002191859 seconds time elapsed So it makes sense that PSR is reducing the bandwith floor on Samus, but it seems like FBC would give some benefit to the other Broadwell systems that don't have PSR.
,
Mar 22 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/8adc652b658f40a3fc66186de4ddab91cc29b851 commit 8adc652b658f40a3fc66186de4ddab91cc29b851 Author: Ben Widawsky <benjamin.widawsky@intel.com> Date: Fri Feb 21 00:01:20 2014 BACKPORT: drm/i915/bdw: Add FBC support This got lost when we shuffled around our internal branch and GEN7_FEATURES macro. There were no HW changes to support FBC, so we just need to set the flag. v2: Don't allow FBC for any pipe but A on platforms with DDI. (Paulo) Cc: Daisy Sun <daisy.sun@intel.com> Signed-off-by: Ben Widawsky <ben@bwidawsk.net> Reviewed-by: Paulo Zanoni <paulo.r.zanoni@intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> (cherry picked from commit 8f94d24b7b3191fc8a6cf16c9d815410f5e09ae3) Signed-off-by: Stphane Marchesin <marcheu@chromium.org> BUG= chromium:596738 TEST=boot on yuna, look at perf stat -a -e cycles -e uncore_imc/data_reads/ -e uncore_imc/data_writes/ sleep 10 and see the numbers are lower Change-Id: Ie61266c336a4f423fac0cae90965370b85e2cd6c Reviewed-on: https://chromium-review.googlesource.com/334275 Commit-Ready: Stéphane Marchesin <marcheu@chromium.org> Tested-by: Stéphane Marchesin <marcheu@chromium.org> Reviewed-by: Ilja Friedel <ihf@chromium.org> Reviewed-by: Sonny Rao <sonnyrao@chromium.org> [modify] https://crrev.com/8adc652b658f40a3fc66186de4ddab91cc29b851/drivers/gpu/drm/i915/i915_drv.c [modify] https://crrev.com/8adc652b658f40a3fc66186de4ddab91cc29b851/drivers/gpu/drm/i915/intel_pm.c
,
Mar 22 2016
Looks like this is a pretty decent win -- about 200-250 milliwatts in the idle with screen on case
,
Mar 23 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/b9ebdd246160655deb05874fb5f3b84e650e3557 commit b9ebdd246160655deb05874fb5f3b84e650e3557 Author: Stéphane Marchesin <marcheu@chromium.org> Date: Tue Mar 22 03:28:56 2016 graphics_Idle: Add broadwell to the list of boards supporting FBC BUG= chromium:596738 TEST=run the test Change-Id: I878a36bb5bb24c9f006ae64c40fd4029579e4687 Reviewed-on: https://chromium-review.googlesource.com/334268 Commit-Ready: Stéphane Marchesin <marcheu@chromium.org> Tested-by: Stéphane Marchesin <marcheu@chromium.org> Reviewed-by: Ilja Friedel <ihf@chromium.org> Reviewed-by: Sonny Rao <sonnyrao@chromium.org> [modify] https://crrev.com/b9ebdd246160655deb05874fb5f3b84e650e3557/client/site_tests/graphics_Idle/graphics_Idle.py
,
Mar 23 2016
,
Mar 23 2016
+msheets, tbroch c#8, that's great!
,
Mar 24 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/autotest/+/39545276114d13201491a97bd751c0d5e4587f71 commit 39545276114d13201491a97bd751c0d5e4587f71 Author: Todd Broch <tbroch@chromium.org> Date: Wed Mar 23 18:55:54 2016 power_x86Settings: deprecate graphics related power-savings checks. These checks have become stale and non-functioning for more recent platforms and redundant for others which they still pass on thanks to graphics_Idle autotest. Lets remove. BUG= chromium:596738 , chromium:265986 TEST=manual - gpylint test no new failures - visual check that graphics_Idle covers >= graphics power-savings that was removed from x86Settings. - wmatrix shows no power-savings related errors with graphics_Idle presently. Change-Id: I3dda4bb7d59b5139b1b2716bcee5098d97947998 Reviewed-on: https://chromium-review.googlesource.com/334463 Commit-Ready: Todd Broch <tbroch@chromium.org> Tested-by: Todd Broch <tbroch@chromium.org> Reviewed-by: Sameer Nanda <snanda@chromium.org> Reviewed-by: Sonny Rao <sonnyrao@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/39545276114d13201491a97bd751c0d5e4587f71/client/site_tests/power_x86Settings/power_x86Settings.py
,
Mar 25 2016
Issue 597513 has been merged into this issue.
,
Mar 25 2016
Issue 597770 has been merged into this issue.
,
Mar 25 2016
Seem the graphics_Idle FBC test is not passing on Samus -- would the presence of PSR cause it to say FBC is not enabled?
,
Mar 26 2016
[bvt-cq] graphics_Idle Failure on samus-release/R51-8113.0.0 This report is automatically generated to track the following Failure: Test: graphics_Idle. Suite: bvt-cq. Chrome Version: 51.0.2691.0. Build: samus-release/R51-8113.0.0. Reason: Did not see FBC enabled. . build artifacts: https://storage.cloud.google.com/?arg=chromeos-image-archive/samus-release/R51-8113.0.0. results log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/57944774-chromeos-test/chromeos2-row1-rack7-host4/debug/. status log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/57944774-chromeos-test/chromeos2-row1-rack7-host4/status.log. buildbot stages: http://chromegw.corp.google.com/i/chromeos/builders/samus-release/builds/3050. job link: http://cautotest.corp.google.com/afe/#tab_id=view_job&object_id=57944774. You may want to check the test retry dashboard in case this is a flakey test: https://wmatrix.googleplex.com/retry_teststats/?days_back=30&tests=graphics_Idle ANCHOR TestFailure{bvt-cq,graphics_Idle,Did not see FBC enabled. }
,
Mar 30 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e17e6ac2e0ca269689b0d304a2fa3919d0e59ed8 commit e17e6ac2e0ca269689b0d304a2fa3919d0e59ed8 Author: Ilja Friedel <ihf@chromium.org> Date: Wed Mar 30 03:49:39 2016 Revert "BACKPORT: drm/i915/bdw: Add FBC support" This reverts commit 8adc652b658f40a3fc66186de4ddab91cc29b851. Looks like this may have regressed gandof stability. BUG= chromium:596738 , chrome-os-partner:51769 Change-Id: Ie2c87b786f01f343acae1073ff2ad8572c5da6a8 Reviewed-on: https://chromium-review.googlesource.com/336053 Tested-by: Ilja Friedel <ihf@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/e17e6ac2e0ca269689b0d304a2fa3919d0e59ed8/drivers/gpu/drm/i915/i915_drv.c [modify] https://crrev.com/e17e6ac2e0ca269689b0d304a2fa3919d0e59ed8/drivers/gpu/drm/i915/intel_pm.c
,
Mar 30 2016
,
Apr 1 2016
[I tried to clean up the spam and make this issue human readable again.] Summary: enabling FBC caused GPU hangs left and right, which reverting fixed. I don't think the CrOS graphics team has bandwidth to debug the problem right now.
,
Apr 1 2016
[bvt-cq] graphics_Idle Failure on lulu-release/R51-8137.0.0 This report is automatically generated to track the following Failure: Test: graphics_Idle. Suite: bvt-cq. Chrome Version: 51.0.2695.1. Build: lulu-release/R51-8137.0.0. Reason: Did not see FBC enabled. . build artifacts: https://storage.cloud.google.com/?arg=chromeos-image-archive/lulu-release/R51-8137.0.0. results log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58577294-chromeos-test/chromeos4-row6-rack2-host1/debug/. status log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58577294-chromeos-test/chromeos4-row6-rack2-host1/status.log. buildbot stages: NA. job link: http://cautotest.corp.google.com/afe/#tab_id=view_job&object_id=58577294. You may want to check the test retry dashboard in case this is a flakey test: https://wmatrix.googleplex.com/retry_teststats/?days_back=30&tests=graphics_Idle ANCHOR TestFailure{bvt-cq,graphics_Idle,Did not see FBC enabled. }
,
Apr 1 2016
[bvt-cq] graphics_Idle Failure on buddy-release/R51-8137.0.0 This report is automatically generated to track the following Failure: Test: graphics_Idle. Suite: bvt-cq. Chrome Version: 51.0.2695.1. Build: buddy-release/R51-8137.0.0. Reason: Did not see FBC enabled. . build artifacts: https://storage.cloud.google.com/?arg=chromeos-image-archive/buddy-release/R51-8137.0.0. results log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58583526-chromeos-test/chromeos4-row13-rack7-host1/debug/. status log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58583526-chromeos-test/chromeos4-row13-rack7-host1/status.log. buildbot stages: NA. job link: http://cautotest.corp.google.com/afe/#tab_id=view_job&object_id=58583526. You may want to check the test retry dashboard in case this is a flakey test: https://wmatrix.googleplex.com/retry_teststats/?days_back=30&tests=graphics_Idle ANCHOR TestFailure{bvt-cq,graphics_Idle,Did not see FBC enabled. }
,
Apr 1 2016
[bvt-cq] graphics_Idle Failure on gandof-release/R51-8137.0.0 This report is automatically generated to track the following Failure: Test: graphics_Idle. Suite: bvt-cq. Chrome Version: 51.0.2695.1. Build: gandof-release/R51-8137.0.0. Reason: Did not see FBC enabled. . build artifacts: https://storage.cloud.google.com/?arg=chromeos-image-archive/gandof-release/R51-8137.0.0. results log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58591567-chromeos-test/chromeos4-row5-rack8-host3/debug/. status log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58591567-chromeos-test/chromeos4-row5-rack8-host3/status.log. buildbot stages: NA. job link: http://cautotest.corp.google.com/afe/#tab_id=view_job&object_id=58591567. You may want to check the test retry dashboard in case this is a flakey test: https://wmatrix.googleplex.com/retry_teststats/?days_back=30&tests=graphics_Idle ANCHOR TestFailure{bvt-cq,graphics_Idle,Did not see FBC enabled. }
,
Apr 1 2016
[bvt-cq] graphics_Idle Failure on auron_yuna-release/R51-8137.0.0 This report is automatically generated to track the following Failure: Test: graphics_Idle. Suite: bvt-cq. Chrome Version: 51.0.2695.1. Build: auron_yuna-release/R51-8137.0.0. Reason: Did not see FBC enabled. . build artifacts: https://storage.cloud.google.com/?arg=chromeos-image-archive/auron_yuna-release/R51-8137.0.0. results log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58594930-chromeos-test/chromeos4-row10-rack8-host1/debug/. status log: http://cautotest.corp.google.com/tko/retrieve_logs.cgi?job=/results/58594930-chromeos-test/chromeos4-row10-rack8-host1/status.log. buildbot stages: NA. job link: http://cautotest.corp.google.com/afe/#tab_id=view_job&object_id=58594930. You may want to check the test retry dashboard in case this is a flakey test: https://wmatrix.googleplex.com/retry_teststats/?days_back=30&tests=graphics_Idle ANCHOR TestFailure{bvt-cq,graphics_Idle,Did not see FBC enabled. }
,
Apr 1 2016
,
Apr 1 2016
,
Apr 4 2016
setting back to Assigned
,
May 3 2016
We no longer see this failure in the lab - is there anything left to be done here?
,
May 3 2016
FBC has been disabled again which is why you don't see the failures.
,
Jul 31 2016
,
Sep 12 2016
Is FBC expected to be turned back on [soon]? What remaining work is there for this bug?
,
Sep 13 2016
I don't think so -- someone from the gfx team or the GPU vendor would need to debug the GPU hangs in order to turn it back on
,
Sep 19 2016
,
Feb 17 2017
Closing this -- we can reopen if someone want's to get FBC enabled on Broadwell |
||||||||||||||||||
►
Sign in to add a comment |
||||||||||||||||||
Comment 1 by sonnyrao@chromium.org
, Mar 22 2016