[Bug 104199] [i965 bisected] BIO and EM Vision in >Observer_ is broken since commit af2c320190f3c73180f1610c8df955a7fa2a4d09

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Sun Dec 10 19:50:01 UTC 2017


https://bugs.freedesktop.org/show_bug.cgi?id=104199

            Bug ID: 104199
           Summary: [i965 bisected] BIO and EM Vision in >Observer_ is
                    broken since commit
                    af2c320190f3c73180f1610c8df955a7fa2a4d09
           Product: Mesa
           Version: git
          Hardware: x86-64 (AMD64)
                OS: Linux (All)
            Status: NEW
          Severity: normal
          Priority: medium
         Component: Drivers/DRI/i965
          Assignee: intel-3d-bugs at lists.freedesktop.org
          Reporter: d.spitznagel at goodbytez.de
        QA Contact: intel-3d-bugs at lists.freedesktop.org

Hello Intel devs,

The Bio and EM Vision in >Observer_ is broken since commit...

af2c320190f3c73180f1610c8df955a7fa2a4d09 is the first bad commit
commit af2c320190f3c73180f1610c8df955a7fa2a4d09
Author: Francisco Jerez <currojerez at riseup.net>
Date:   Thu Jun 15 15:23:57 2017 -0700

    intel/fs: Implement GRF bank conflict mitigation pass.

    Unnecessary GRF bank conflicts increase the issue time of ternary
    instructions (the overwhelmingly most common of which is MAD) by
    roughly 50%, leading to reduced ALU throughput.  This pass attempts to
    minimize the number of bank conflicts by rearranging the layout of the
    GRF space post-register allocation.  It's in general not possible to
    eliminate all of them without introducing extra copies, which are
    typically more expensive than the bank conflict itself.

    In a shader-db run on SKL this helps roughly 46k shaders:

       total conflicts in shared programs: 1008981 -> 600461 (-40.49%)
       conflicts in affected programs: 816222 -> 407702 (-50.05%)
       helped: 46234
       HURT: 72

    The running time of shader-db itself on SKL seems to be increased by
    roughly 2.52%±1.13% with n=20 due to the additional work done by the
    compiler back-end.

    On earlier generations the pass is somewhat less effective in relative
    terms because the hardware incurs a bank conflict anytime the last two
    sources of the instruction are duplicate (e.g. while trying to square
    a value using MAD), which is impossible to avoid without introducing
    copies.  E.g. for a shader-db run on SNB:

       total conflicts in shared programs: 944636 -> 623185 (-34.03%)
       conflicts in affected programs: 853258 -> 531807 (-37.67%)
       helped: 31052
       HURT: 19

    And on BDW:

       total conflicts in shared programs: 1418393 -> 987539 (-30.38%)
       conflicts in affected programs: 1179787 -> 748933 (-36.52%)
       helped: 47592
       HURT: 70

    On SKL GT4e this improves performance of GpuTest Volplosion by 3.64%
    ±0.33% with n=16.

    NOTE: This patch intentionally disregards some i965 coding conventions
          for the sake of reviewability.  This is addressed by the next
          squash patch which introduces an amount of (for the most part
          boring) boilerplate that might distract reviewers from the
          non-trivial algorithmic details of the pass.

    The following patch is squashed in:

    SQUASH: intel/fs/bank_conflicts: Roll back to the nineties.

    Acked-by: Matt Turner <mattst88 at gmail.com>

:040000 040000 f68427a37c7d2d4a8fa696449fa723c7995d2e68
169b720ac98eac61cef120e37212467fa689c938 M      src

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20171210/f18d9764/attachment-0001.html>


More information about the intel-3d-bugs mailing list