soiferj edited a comment on issue #4879: [Relay][Pass] Fix bug in re-processing call node in MergeComposite pass URL: https://github.com/apache/incubator-tvm/pull/4879#issuecomment-586412142 @mbarrett97 @comaniac I just pushed a test where "result" creates an incorrect graph, and "expected" is correct. Even though these two graphs are different, and "result" generated an incorrect function, the two functions generated are computationally equivalent. This means that the test actually passes `alpha_equal` both with and without the bug. It is still worth fixing this bug, since this problem blows up when patching large patterns, but I am not sure how to actually fail the test with output like this. Do you have any suggestions? Here are the Relay outputs. The pattern I am trying to match is `add -> add -> add`. Result: ``` v0.0.4 fn (%a: Tensor[(10, 10), float32], %b: Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { %0 = subtract(%a, %b) /* ty=Tensor[(10, 10), float32] */; %4 = fn (%x: Tensor[(10, 10), float32], %y: Tensor[(10, 10), float32], Primitive=1, Composite="add_add_add") -> Tensor[(10, 10), float32] { %1 = add(%x, %y) /* ty=Tensor[(10, 10), float32] */; %2 = add(%x, %1) /* ty=Tensor[(10, 10), float32] */; %3 = add(%x, %y) /* ty=Tensor[(10, 10), float32] */; add(%2, %3) /* ty=Tensor[(10, 10), float32] */ }; %4(%0, %b) /* ty=Tensor[(10, 10), float32] */ } ``` Expected: ``` v0.0.4 fn (%a: Tensor[(10, 10), float32], %b: Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { %0 = subtract(%a, %b) /* ty=Tensor[(10, 10), float32] */; %3 = fn (%in_1: Tensor[(10, 10), float32], %in_2: Tensor[(10, 10), float32]) -> Tensor[(10, 10), float32] { %1 = add(%in_1, %in_2) /* ty=Tensor[(10, 10), float32] */; %2 = add(%in_1, %1) /* ty=Tensor[(10, 10), float32] */; add(%2, %1) /* ty=Tensor[(10, 10), float32] */ }; %3(%0, %b) /* ty=Tensor[(10, 10), float32] */ } ```
---------------------------------------------------------------- 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. For queries about this service, please contact Infrastructure at: us...@infra.apache.org With regards, Apache Git Services