We still have gpu hangs on Cannonlake when using push constants, so disable them for now until we have a proper fix for these hangs.
Signed-off-by: Rafael Antognolli <rafael.antogno...@intel.com> --- src/intel/compiler/brw_fs.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/intel/compiler/brw_fs.cpp b/src/intel/compiler/brw_fs.cpp index 6772c0d5a54..37706667562 100644 --- a/src/intel/compiler/brw_fs.cpp +++ b/src/intel/compiler/brw_fs.cpp @@ -2033,6 +2033,15 @@ fs_visitor::assign_constant_locations() if (subgroup_id_index >= 0) max_push_components--; /* Save a slot for the thread ID */ + /* FIXME: We currently have some GPU hangs that happen apparently when using + * push constants. Since we have no solution for such hangs yet, just + * go ahead and use pull constants for now. + */ + if (devinfo->gen == 10 && compiler->supports_pull_constants) { + compiler->shader_perf_log(log_data, "Disabling push constants."); + max_push_components = 0; + } + /* We push small arrays, but no bigger than 16 floats. This is big enough * for a vec4 but hopefully not large enough to push out other stuff. We * should probably use a better heuristic at some point. -- 2.13.6 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev