This is an archive of the discontinued LLVM Phabricator instance.

[mlir][NVGPU] Support N-D masks in transform.nvgpu.create_async_groups
ClosedPublic

Authored by springerm on Aug 7 2023, 7:39 AM.

Details

Summary

Support IR that is generated by the vector-to-scf lowering of N-D vector transfers with a mask. (Until now only 1-D and 2-D transfers were supported.) Only transfers that were fully unrolled are supported.

Diff Detail

Event Timeline

springerm created this revision.Aug 7 2023, 7:39 AM
Herald added a project: Restricted Project. · View Herald TranscriptAug 7 2023, 7:39 AM
springerm requested review of this revision.Aug 7 2023, 7:39 AM
Herald added a project: Restricted Project. · View Herald Transcript
springerm added inline comments.Aug 7 2023, 7:40 AM
mlir/test/Dialect/NVGPU/transform-create-async-groups.mlir
168–171

These values are dead (have no uses). No need to match them.

guraypp accepted this revision.Aug 8 2023, 2:47 AM

Looks good to me.

Just a quick suggestion – what do we think about adding an end-to-end integration test for this Op? Recently, @nicolasvasilache introduced the test-lower-to-nvvm pass which could be really helpful.

This revision is now accepted and ready to land.Aug 8 2023, 2:47 AM

Looks good to me.

Just a quick suggestion – what do we think about adding an end-to-end integration test for this Op? Recently, @nicolasvasilache introduced the test-lower-to-nvvm pass which could be really helpful.

Good idea. I'm going to add copy_async to D156371 and also add an integration test to that.