aco/gfx11: create waitcnt for workgroup vmem barriers
It seems this is necessary on GFX11.
Similar to 576a2e798c
Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Georg Lehmann <dadschoorse@gmail.com>
Backport-to: 25.0
Backport-to: 25.1
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34634>
(cherry picked from commit b03e07158331b2d37dab8a1183931ac55cb39758)
This commit is contained in:

committed by
Eric Engestrom

parent
5c9733618d
commit
e1f06788f5
@@ -234,7 +234,7 @@
|
||||
"description": "aco/gfx11: create waitcnt for workgroup vmem barriers",
|
||||
"nominated": true,
|
||||
"nomination_type": 4,
|
||||
"resolution": 0,
|
||||
"resolution": 1,
|
||||
"main_sha": null,
|
||||
"because_sha": null,
|
||||
"notes": null
|
||||
|
@@ -319,9 +319,9 @@ perform_barrier(wait_ctx& ctx, wait_imm& imm, memory_sync_info sync, unsigned se
|
||||
if (bar_scope_lds <= subgroup_scope)
|
||||
events &= ~event_lds;
|
||||
|
||||
/* Until GFX12, in non-WGP, the L1 (L0 on GFX10+) cache keeps all memory operations
|
||||
/* Until GFX11, in non-WGP, the L1 (L0 on GFX10+) cache keeps all memory operations
|
||||
* in-order for the same workgroup */
|
||||
if (ctx.gfx_level < GFX12 && !ctx.program->wgp_mode && sync.scope <= scope_workgroup)
|
||||
if (ctx.gfx_level < GFX11 && !ctx.program->wgp_mode && sync.scope <= scope_workgroup)
|
||||
events &= ~(event_vmem | event_vmem_store | event_smem);
|
||||
|
||||
if (events)
|
||||
|
Reference in New Issue
Block a user