[Mesa-dev] [PATCH] intel/compiler/gen10: Disable push constants.
Rafael Antognolli
rafael.antognolli at intel.com
Tue Dec 5 23:52:29 UTC 2017
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.antognolli at 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
More information about the mesa-dev
mailing list