[Mlir-commits] [mlir] Remove Pure attribute from Linalg::IndexOp. (PR #68894)

llvmlistbot at llvm.org llvmlistbot at llvm.org
Sun Dec 10 22:17:20 PST 2023


MaheshRavishankar wrote:

> > Sending the indices in as a basic block argument seems cleanest of all if that's a viable path.
> 
> So I'll reiterate/repeat my question: did `linalg.indexed_generic` support arbitrary iteration spaces? Because if so, we should bring it back and kill two birds with one stone.
> 
> Edit: answering my own question after searching around: no `linalg.indexed_generic` did not allow arbitrary iterations spaces (it just passed the indices as block args in order that lowering to library functions could make use of them).


Just answering the meta point here. It is obviously more expressive to have operations that are not orthonormal iteration spaces, but that needs to be evaluated in conjunction with complexity of transformations (like tiling and vectorization) to account for increased expressivity. (There is no free lunch). So Nicolas, I think, has been working (definitely has an extensive rfc on it) to allow reasoning about more general iteration spaces (even allowing completely irregular iteration spaces). I don't know the state of this. 

https://github.com/llvm/llvm-project/pull/68894


More information about the Mlir-commits mailing list