Lunderberg commented on PR #15901: URL: https://github.com/apache/tvm/pull/15901#issuecomment-1753891737
I like it overall. My general view is that anything that can be done automatically while lowering should also be doable manually while scheduling, and this would enable schedule-time loop partitioning. Instead of having a specific utility for peeling loop iterations off of the end, and we have it apply a general loop partition? Something like `sch.partition_loop(partition_extents)`, where `partition_extents` is a list of extents for each extracted iterator. Similar to `.reshape()`, up to one of the extents could be `-1`, indicating that it should be inferred from the extent of the partitioned iterator and the other extents in the partition. That way, we could express "peel off the last iteration" as `sch.partition_loop([-1, 1])`, but could also express "peel off the first iteration" as `sch.partition_loop([1, -1])`, and "peel off 4 elements from both sides" as `sch.partition_loop([4, -1, 4])`. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
