There are few games [1], which give with INTEL_DEBUG=perf following output: SIMD16 shader unsupported, falling back to SIMD8 at a 10-20% performance cost: SIMD16 explicit accumulator operands unsupported This SIMD16 issue is GEN7 HW specific. This could be worked around with additional instructions, which can be skipped if shader falls back to SIMD8 for some other reason. [1] This happens at least with Planetary Annihilation & Bastion. And it happened also with older Mesa & older version of Crusader Kings II version (not with latest anymore though).
I sent some patches to do this back in September but they didn't get review, and I didn't pursue it further because of... NIR? I can't remember. In any case, Ben is working on some related things and has incorporated my patches into his series.
(In reply to Eero Tamminen from comment #0) > [1] This happens at least with Planetary Annihilation & Bastion. And it > happened also with older Mesa & older version of Crusader Kings II version > (not with latest anymore though). Can you capture shaders for these and add them to the internal shader-db?
Bastion data was old, I checked it with latest Mesa version (and Bastion in case that has also had updates), and it doesn't anymore give this warning either (same case as with CK2), only PA does. Shader-db update will take a bit more time (I don't have commit rights yet and I would do that for larger number of programs at the same time). If you're in hurry, I could just send the MESA_GLSL=dump output to you?
I can't understand why it wouldn't be present in more recent mesa versions. GLSL dump and INTEL_DEBUG=vs,fs,noann would be interesting to me on a recent mesa version.
(In reply to Eero Tamminen from comment #3) > Shader-db update will take a bit more time (I don't have commit rights yet > and I would do that for larger number of programs at the same time). If > you're in hurry, I could just send the MESA_GLSL=dump output to you? Yeah, send me one for each set of settings you think we should have in shader-db. Thanks!
I fixed this with: i965/fs: Support integer multiplication in SIMD16 on Haswell. i965/fs: Implement integer multiply without mul/mach.
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.