slyubomirsky opened a new pull request, #16204: URL: https://github.com/apache/tvm/pull/16204
This PR implements a pass that automatically extracts DataflowBlocks out of binding blocks (i.e., groups consecutive pure operations in binding blocks into a dataflow block). Note that this pass makes use of `CanonicalizeBindings` and in the process of testing it, I encountered bugs in `CanonicalizeBindings` that I deal with in here: 1. `CanonicalizeBindings` dealt with the case of a var that appeared only inside a DataflowBlock (demoted to a dataflow var), but it made a mistake in cases where a var was used only inside DataflowBlocks, plural, meaning outside the one where it was defined (thus it should be exposed as an output and thus not demoted to a dataflow var). 2. `CanonicalizeBindings` did not handle inner functions correctly. It will correctly recurse into inner functions and also treat any captured vars as appearing outside their original dataflow block. -- 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]
