r600/sfn: Don't schedule GDS instructions early
Atomic GDS instructions like inc, dec, or read will increase the register pressure, therefore we shouldn't prioritize scheduling them. Related: https://gitlab.freedesktop.org/mesa/mesa/-/issues/6975 Fixes:79ca456b48
r600/sfn: rewrite NIR backend Signed-off-by: Gert Wollny <gert.wollny@collabora.com> Reviewed-by: Filip Gawin <filip@gawin.net> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18212> (cherry picked from commit79eabb8130
)
This commit is contained in:
@@ -10309,7 +10309,7 @@
|
||||
"description": "r600/sfn: Don't schedule GDS instructions early",
|
||||
"nominated": true,
|
||||
"nomination_type": 1,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": "79ca456b4837b3bc21cf9ef3c03c505c4b4909f6"
|
||||
},
|
||||
|
@@ -333,8 +333,6 @@ void BlockSheduler::schedule_block(Block& in_block, Shader::ShaderBlocks& out_bl
|
||||
current_shed = sched_mem_ring;
|
||||
else if (rat_instr_ready.size() > 3)
|
||||
current_shed = sched_rat;
|
||||
else if (gds_ready.size() > 3)
|
||||
current_shed = sched_gds;
|
||||
else if (tex_ready.size() > 3)
|
||||
current_shed = sched_tex;
|
||||
}
|
||||
|
Reference in New Issue
Block a user