diff options
Diffstat (limited to 'src/intel')
-rw-r--r-- | src/intel/genxml/gen12.xml | 1 | ||||
-rw-r--r-- | src/intel/vulkan/genX_pipeline.c | 12 |
2 files changed, 13 insertions, 0 deletions
diff --git a/src/intel/genxml/gen12.xml b/src/intel/genxml/gen12.xml index 127bc549a8b..f9fd2321428 100644 --- a/src/intel/genxml/gen12.xml +++ b/src/intel/genxml/gen12.xml @@ -525,6 +525,7 @@ <value name="Ftz" value="0"/> <value name="SetByKernel" value="1"/> </field> + <field name="Thread Preemption Disable" start="84" end="84" type="bool"/> <field name="Sampler Count" start="98" end="100" type="uint"> <value name="No samplers used" value="0"/> <value name="Between 1 and 4 samplers used" value="1"/> diff --git a/src/intel/vulkan/genX_pipeline.c b/src/intel/vulkan/genX_pipeline.c index c9f8eaa6f51..52a363fc075 100644 --- a/src/intel/vulkan/genX_pipeline.c +++ b/src/intel/vulkan/genX_pipeline.c @@ -2354,6 +2354,18 @@ compute_pipeline_create( .CrossThreadConstantDataReadLength = cs_prog_data->push.cross_thread.regs, #endif +#if GEN_GEN >= 12 + /* TODO: Check if we are missing workarounds and enable mid-thread + * preemption. + * + * We still have issues with mid-thread preemption (it was already + * disabled by the kernel on gen11, due to missing workarounds). It's + * possible that we are just missing some workarounds, and could enable + * it later, but for now let's disable it to fix a GPU in compute in Car + * Chase (and possibly more). + */ + .ThreadPreemptionDisable = true, +#endif .NumberofThreadsinGPGPUThreadGroup = cs_prog_data->threads, }; |