Summary: | [BDW Bisected] "bdw: Apply workarounds in render ring init function" reduced performance 10%~40% | ||
---|---|---|---|
Product: | DRI | Reporter: | zhoujian <jianx.zhou> |
Component: | DRM/Intel | Assignee: | Mika Kuoppala <mika.kuoppala> |
Status: | CLOSED FIXED | QA Contact: | Intel GFX Bugs mailing list <intel-gfx-bugs> |
Severity: | critical | ||
Priority: | high | CC: | eero.t.tamminen, intel-gfx-bugs |
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: | ||
Attachments: |
Description
zhoujian
2014-09-04 08:14:35 UTC
So we are now enabling the gen8 w/a. It may be interesting to see which is responsible (or it may be more than one each contributing a little) - in particular, the GEN6_WIZ_HASHING_16x4 is an optimisation and not mandatory afaik. When looking at the performance drop in test results between 27.8. -> 1.9. (which testers stated to be because of this bug), the largest drop is for OglPSPhong & OglFillTexMulti, their performance was earlier about 2.5x. Interestingly, there was exactly same sized BDW perf improvement around 6.8. - 10.8, which is now gone. Looking at all the affected tests, issue seems to be with pixel shader performance and GPU memory bandwidth. Created attachment 106369 [details] [review] DEBUG: drm/i915: add i915.wa module parameter to control bdw workarounds Here's a patch to add a i915.wa module parameter to control the workarounds to be applied. Please read the commit message for details. Please apply this on top of drm-intel-nightly, confirm you still have the perf regression, and drop workarounds one by one (or in groups as necessary, but gets harder) to try to find out which specific workaround makes the difference. Chris, do you have any further comments on this? Created attachment 106370 [details]
v2: DEBUG: drm/i915: add i915.wa module parameter to control bdw workarounds
Fixed version.
We have also been discussing that the implementation of RPS on BDW is unreliable for benchmarking. It would also be sensible to fix the frequency whilst doing perf regression tests to rule out RPS fluctuations: cat /sys/class/drm/card0/gt_max_freq_mhz > /sys/class/drm/card0/gt_min_freq_mhz (In reply to comment #4) > Created attachment 106370 [details] > v2: DEBUG: drm/i915: add i915.wa module parameter to control bdw workarounds > > Fixed version. I have tried patch:attachment 106370 [details],this issue still exist. (In reply to comment #5) > We have also been discussing that the implementation of RPS on BDW is > unreliable for benchmarking. We're seeing same performance regression as PRC, it's 100% reproducible and I don't see any frequency fluctuation. (In reply to comment #6) > (In reply to comment #4) > > Created attachment 106370 [details] > > v2: DEBUG: drm/i915: add i915.wa module parameter to control bdw workarounds > > > > Fixed version. > I have tried patch:attachment 106370 [details],this issue still exist. Which "i915.wa" parameter values you tested? (If you aren't seeing any changes when you disable all of the workarounds with it, you've bisected wrong commit.) Created attachment 106436 [details] [review] drm/i915/bdw: Cleanup pre prod workarounds Please test with https://bugs.freedesktop.org/attachment.cgi?id=106436 (In reply to comment #9) > Please test with https://bugs.freedesktop.org/attachment.cgi?id=106436 Using above patch:https://bugs.freedesktop.org/attachment.cgi?id=106436,it can woks well,please push patch to nightly,thanks. Mika, please post the patch to intel-gfx with bugzilla reference. In drm-intel-next-fixes: commit d37cf5f7e1b315585940a735a8508d955ffc0f16 Author: Mika Kuoppala <mika.kuoppala@linux.intel.com> Date: Fri Sep 19 20:05:26 2014 +0300 drm/i915/bdw: Cleanup pre prod workarounds as these have been fixed in production hw and hurt performance if applied. v2: adjust requested ring space (Ville) Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=83482 Tested-by: zhoujian <jianx.zhou@intel.com> Signed-off-by: Mika Kuoppala <mika.kuoppala@intel.com> Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> Verified it,verified commit:(drm-intel-nightly)git-0f7cc12 Closing old verified+fixed. |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.