Ask questionsQuestion about how tensorflow mlir library works ?
I was wondering as to how the tensorflow mlir library is used to reduce code from the tf dialect to an executable for a gpu, which dialects are involved in this conversion ?, are there multiple choices and are there any advantages to each of them ?. (and does ths have anything to do with the gpu dialect specified in the mlir documentation : https://mlir.llvm.org/docs/Dialects/GPU/)
Answer
questions
jpienaar
Hey,
You will get more responses on [email protected] as more folks monitor it and the folks working on the GPU dialect MLIR core side are active there too. Would you mind re-asking there instead if you want more info?
In short/from a high-level there are multiple dialects involved depends on the lowering path (e.g., Affine, LinAlg, Shape, GPU, Standard, HLO, LLVM are along some of those paths) but the exact dialects depend on the lowering path and there are multiple, both as initial staging/ideas develop/technology matures as well as in limit there will still be multiple paths (e.g., if one knew at TF dialect level already the best way to lower an op is to a library call, then one might lower directly - although there are cases where the optimal choice for an op in isolation is not the optimal for the model as a whole, so its not "trivial" knowledge at work). The flexibility and ability to incorporate different code-generation strategies at different levels is important to best target the evolving HW space.
Best,
Jacques
Related questions