Thank you so much @tqchen @slyubomirsky @sanirudh for your detailed inputs on this!
I have some thoughts and questions listed below. I also discussed them with @sanirudh. It would be great if we can address them in the next unity meeting. I’ll add this topic to the agenda.
-
Axis separator will be set by
AlterOpImpl
pass and hence, it can embedR.memory_axis_separator
for each tensor. -
IIUC,
FlattenLowAxisSepDimensions
should be invoked to before all TIR passes. Now, if a TIR pass depends on logical shape of a tensor, then how should we handle such a scenario ? Should the logical shape be stored/saved in an attribute so that TIR passes can run smoothly ?
Thanks.