Config#6 recommended by h/w specification causes multiple piglit
regressions. Use config#9 instead which works well. Setting a weight
here so that we get the desired config.

Signed-off-by: Anuj Phogat <anuj.pho...@gmail.com>
Cc: Kenneth Graunke <kenn...@whitecape.org>
Cc: Francisco Jerez <curroje...@riseup.net>
Cc: Lionel Landwerlin <lionel.g.landwer...@intel.com>
---
 src/intel/common/gen_l3_config.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/src/intel/common/gen_l3_config.c b/src/intel/common/gen_l3_config.c
index de16ad23017..52c1cdd32f4 100644
--- a/src/intel/common/gen_l3_config.c
+++ b/src/intel/common/gen_l3_config.c
@@ -257,7 +257,13 @@ gen_get_default_l3_weights(const struct gen_device_info 
*devinfo,
    w.w[GEN_L3P_SLM] = devinfo->gen < 11 && needs_slm;
    w.w[GEN_L3P_URB] = 1.0;
 
-   if (devinfo->gen >= 8) {
+   if (devinfo->gen == 11) {
+      /* Config#6 recommended by h/w specification causes multiple piglit
+       * regressions. Use config#9 instead which works well. Setting a weight
+       * here so that we get the desired config.
+      */
+      w.w[GEN_L3P_ALL] = 2.0;
+   } else if (devinfo->gen >= 8) {
       w.w[GEN_L3P_ALL] = 1.0;
    } else {
       w.w[GEN_L3P_DC] = needs_dc ? 0.1 : 0;
@@ -277,8 +283,9 @@ gen_get_default_l3_config(const struct gen_device_info 
*devinfo)
     * default configuration.
     */
    const struct gen_l3_config *const cfg = get_l3_configs(devinfo);
-   assert(cfg == gen_get_l3_config(devinfo,
-                    gen_get_default_l3_weights(devinfo, false, false)));
+   assert(devinfo->gen == 11 ||
+          cfg == gen_get_l3_config(devinfo,
+                  gen_get_default_l3_weights(devinfo, false, false)));
    return cfg;
 }
 
-- 
2.17.1

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to