<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - 4.5% perf drop in CSDor with "nir: Optimize integer division and modulus with 1""
   href="https://bugs.freedesktop.org/show_bug.cgi?id=98409">98409</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>4.5% perf drop in CSDor with "nir: Optimize integer division and modulus with 1"
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>git
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>All
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Drivers/DRI/i965
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>idr@freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>eero.t.tamminen@intel.com
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>intel-3d-bugs@lists.freedesktop.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>Following commit drops SynMark2 CSDof test performance on all platforms
supporting compute shaders:

commit 4d35683d91e3d61bf14b76d801bf6ae17237e162
Author: Ian Romanick <<a href="mailto:ian.d.romanick@intel.com">ian.d.romanick@intel.com</a>>
Date:   Wed Oct 19 08:53:10 2016 -0700

    nir: Optimize integer division and modulus with 1

    The previous power-of-two rules didn't catch idiv (because i965 doesn't
    set lower_idiv) and imod cases.  The udiv and umod cases should have
    been caught, but I included them for orthogonality.

    This fixes silly code observed from compute shaders with local_size_[xy]
    = 1.

Commit seems clear optimization, so I assume this regression is some kind of
bad interaction in the optimization passes.

On SKL GT2 drop is 4.5% and more on on GT4(e).  INTEL_DEBUG=perf reports a lot
of register spilling and tells about inefficient fallback code for CS variable
indexing with this test.   No other tests besides CSDof were affected, but it's
the only test in our set that is register spilling currently.</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the QA Contact for the bug.</li>
      </ul>
    </body>
</html>