It is determined GraphFuse.
fe.flatten_data = (pattern_vec[root_id] == kElemWise || inode.source->op() == assign_op);
If a buffer gets stride configured, flatten data causes problem.
For example, for a input tensor [2, 3] , As long as shape is flattened, generated host side code will check whether the stride of input is 1, but graph runtime uses real shape and real stride in which stride is 3
I am wondering whether it is safe to disable this?