radv: Allow using compute queue with CS regalloc hang bug on GFX7
Now that all larger workgroup sizes are lowered to 256, the regalloc hang cannot mess up the compute queues anymore. Still don't allow compute queues on GFX6 though, they are prone to hangs. Needs further investigation. Signed-off-by: Timur Kristóf <timur.kristof@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/39288>
This commit is contained in:
parent
0961aba8a7
commit
86ff28b3da
1 changed files with 2 additions and 7 deletions
|
|
@ -124,13 +124,8 @@ radv_video_encode_queue_enabled(const struct radv_physical_device *pdev)
|
|||
bool
|
||||
radv_compute_queue_enabled(const struct radv_physical_device *pdev)
|
||||
{
|
||||
/* Compute queues may run compute dispatches in parallel with
|
||||
* the graphics queue, even from other processes/apps.
|
||||
* At the moment we can't make sure that all compute shaders
|
||||
* use a workgroup size of 256 to mitigate the regalloc hang,
|
||||
* so disable compute queues on affected chips.
|
||||
*/
|
||||
if (pdev->info.has_cs_regalloc_hang_bug)
|
||||
/* Compute queues may hang on GFX6, need further investigation before enabling them. */
|
||||
if (pdev->info.gfx_level == GFX6)
|
||||
return false;
|
||||
|
||||
const struct radv_instance *instance = radv_physical_device_instance(pdev);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue