This is an archive of the discontinued LLVM Phabricator instance.

[AMDGPU] Temporarily disable FeatureBackOffBarrier for GFX11
ClosedPublic

Authored by foad on Jan 10 2023, 5:32 AM.

Details

Summary

Enabling this feature exposed some incorrect codegen, where a workgroup-
scope barrier fails to properly synchronise two waves from the same
workgroup running on different SIMDs of the same CU.

Disabling FeatureBackOffBarrier causes an s_waitcnt to be emitted before
the barrier which works around the problem.

Diff Detail

Event Timeline

foad created this revision.Jan 10 2023, 5:32 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 10 2023, 5:32 AM
foad requested review of this revision.Jan 10 2023, 5:32 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 10 2023, 5:32 AM
foad added reviewers: Restricted Project, critson, kerbowa, nhaehnle, tpr, dstuttard.Jan 10 2023, 5:33 AM

Well, this LGTM, but probably need some feedback from others.

tpr accepted this revision.Jan 11 2023, 9:22 AM

LGTM too.

This revision is now accepted and ready to land.Jan 11 2023, 9:22 AM

Is it possible to just check for cumode? I don't really have a problem with this since on Navi we can't really take advantage of barriers being too conservative without addrspace info on fences, but it really only has an impact when compiling for cumode. Also, I thought the workaround was pretty simple.

This revision was automatically updated to reflect the committed changes.