iree icon indicating copy to clipboard operation
iree copied to clipboard

Transform Dialect pipelines set translation_info to None

Open Groverkss opened this issue 1 year ago • 1 comments

There seems to be a requirement in transform dialect lowering strategies to set the pass pipeline in translation_info to None https://github.com/iree-org/iree/blob/main/compiler/src/iree/compiler/Codegen/Common/LowerExecutableUsingTransformDialect.cpp#L60 .

I checked, and the only place this pass pipeline is set to None is actually a single transform dialect op which doesn't even document this behaviour at all.

https://github.com/iree-org/iree/blob/main/compiler/src/iree/compiler/Codegen/LLVMGPU/TransformExtensions/LLVMGPUExtensions.cpp#L96

Groverkss avatar May 13 '24 19:05 Groverkss

Yeah this is a requirement. Transform dialect is used in a couple of ways today (a) Add the translation_info and lowering_config attributes to pick a particular pipeline/config to use (b) Actually lower the dispatch to scalar/vector code.

The only way to make this work as far as I can see is to have (b) set the translation_info to None which will skip the C++ pass pipelines. If there is an op that we could use to do this, that would be great, but adding transform dialect ops are scary to me, so I didnt do it. Instead I added a check for it to fail compilation which is what you are hitting.

MaheshRavishankar avatar May 13 '24 23:05 MaheshRavishankar