Current implementation (as of 3/18/2020) only supports combining ops into subgraphs generically. does not allow for fine grained control to say which ops should go into which subgraphs. Need to modify `supportedOps` API to change the `ids` vector from bool (supported or not) to integer (to say which subgraph this node should go in to). This will allow for coloring and fine grained control of ops in a subgraph. https://github.com/apache/incubator-mxnet/blob/07d0b738384cba011ce519bcc41aeeaaafcd22c1/example/extensions/lib_subgraph/subgraph_lib.cc#L179-L181 Will also need to modify custom_subgraph_property.h selector to use these int values to define the subgraph instead of just looking for existence of the operator name. https://github.com/apache/incubator-mxnet/blob/41d534be3ffd7b45846f555366230f4e811d8751/src/operator/subgraph/partitioner/custom_subgraph_property.h#L47-L54
Open question: How do we handle the cases where we want to remove args/aux from the top level of the model, migrating those into the subgraph? If we compile a subgraph with Args/Aux then those tensor values are effectively frozen in the compiled binary so we need to be clear with users that they can no longer be changed in the top level model -- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/apache/incubator-mxnet/issues/17236#issuecomment-600786482