mbs-octoml opened a new pull request, #12086: URL: https://github.com/apache/tvm/pull/12086
See https://github.com/apache/tvm-rfcs/blob/main/rfcs/0062-collage.md. This adds the main CollagePartition pass, which: 1. Inspects all the targets in the CompilationConfig and builds PartitionSpecs describing how to generate speculative CandidatePartitions for them. 2. Runs the above rules on the model to collect all the candidates. 3. Eliminates candidates whose target contradicts any constraints already imposed by, eg, device planning. 4. Eagerly estimates the cost of each candidate. 5. Performs a shortest path search to chose an 'optimal' set of candidate partitions so as to minimize estimated model latency, such that every sub-expression node is contained in exactly one candidate partition. 6. Coalesces adjacent optimal candidates which ended up on the same target. 7. Rewrites the model according to the chosen optimal partitioning. As for the existing partition_for_<external codegen name> methods, the result of CollagePartition can then be built using regular TVM. Very special thanks to @mbaret for authoring test_pass_collage_partition.py. Logic to prune the candidates after step 3 will be in a follow up PR since it deserves its own testing. A demonstration driver will also come as a follow up. This is based on #12085. Will rebase when that's in. -- 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]
