isl: Enable Unorm Path in Color Pipe

Improves performance on my Icelake 8x8 locked to 700Mhz.  For example,
some GfxBench5 subtests have the following results:

- [i965] gl_manhattan: ................ 7.01119% +/- 0.180971% (n=5)
- [i965] gl_4 (Car Chase):              4.24351% +/- 0.175622% (n=5)
- [i965] gl_blending:  ................ 3.36327% +/- 0.180267% (n=5)
- [i965] gl_5_normal (Aztec Ruins):     1.67962% +/- 0.243534% (n=10)
- [iris] gl_manhattan: ................ 3.92357% +/- 0.073965% (n=25)
- [iris] gl_4 (Car Chase):              2.17746% +/- 0.0826858% (n=5)
- [iris] gl_blending:  ................ 2.79599% +/- 0.803652% (n=15)
- [iris] gl_5_normal (Aztec Ruins):     1.30930% +/- 0.106523% (n=25)

Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
Kenneth Graunke 2019-08-14 13:54:55 -07:00
parent ceeaf93c8e
commit f741de236b
2 changed files with 9 additions and 0 deletions

View File

@ -706,6 +706,7 @@
<field name="Surface QPitch" start="32" end="46" type="uint"/>
<field name="Base Mip Level" start="51" end="55" type="u4.1"/>
<field name="MOCS" start="56" end="62" type="uint"/>
<field name="EnableUnormPathInColorPipe" start="63" end="63" type="bool"/>
<field name="Width" start="64" end="77" type="uint"/>
<field name="Height" start="80" end="93" type="uint"/>
<field name="Surface Pitch" start="96" end="113" type="uint"/>

View File

@ -454,6 +454,10 @@ isl_genX(surf_fill_state_s)(const struct isl_device *dev, void *state,
s.RenderCacheReadWriteMode = 0;
#endif
#if GEN_GEN >= 11
s.EnableUnormPathInColorPipe = true;
#endif
s.CubeFaceEnablePositiveZ = 1;
s.CubeFaceEnableNegativeZ = 1;
s.CubeFaceEnablePositiveY = 1;
@ -760,6 +764,10 @@ isl_genX(buffer_fill_state_s)(void *state,
s.RenderCacheReadWriteMode = 0;
#endif
#if GEN_GEN >= 11
s.EnableUnormPathInColorPipe = true;
#endif
s.SurfaceBaseAddress = info->address;
#if GEN_GEN >= 6
s.MOCS = info->mocs;