[mlir][gpu] Allow distributing to different level of IDs without failing
authorThomas Raoux <thomasraoux@google.com>
Fri, 3 Feb 2023 22:53:16 +0000 (22:53 +0000)
committerThomas Raoux <thomasraoux@google.com>
Sat, 4 Feb 2023 02:03:05 +0000 (02:03 +0000)
commita7686db801ff6a96da4b6245362c87a627fdafbe
tree2d5ab4fda2f95d5425e4486c0c2cad1d82f54c60
parent5fd51fcba6a5d675e60a59b4ed6c449efe70f41b
[mlir][gpu] Allow distributing to different level of IDs without failing

Change map_nested_foreach_to_threads to ignore foreach_thread not
mapping to threads, this will allow us to call
mapNestedForeachToThreadsImpl with different set of ids to lower
multiple levels. Also adds warpIds attributes.

Differential Revision: https://reviews.llvm.org/D143298
mlir/include/mlir/Dialect/GPU/TransformOps/GPUDeviceMappingAttr.td
mlir/include/mlir/Dialect/GPU/TransformOps/GPUTransformOps.td
mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
mlir/test/Dialect/GPU/transform-gpu-failing.mlir
mlir/test/Dialect/GPU/transform-gpu.mlir