-
Notifications
You must be signed in to change notification settings - Fork 1.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Never pass a NoOp value to an op #7460
Conversation
The 'NoOp' op appears in the execution graph (although it shouldn't really), and its output value can sometimes be passed to downstream nodes. Temporarily fix this by filtering it out of the parameters in `getParamValue`. TODO(mattSoulanille): Refactor the graph so NoOp and other control dependencies are only used for sorting and don't appear in the execution graph.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reviewed 4 of 4 files at r1, all commit messages.
Reviewable status: complete! 1 of 1 approvals obtained
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
It looks like most of the usage of getting tensor list param value treat it as unknown size list, but some of it does extract positional tensors from the list (Code Search, notice the search result only convers function calls in a single line, so the actual use cases may be more.) But I believe this PR won't affect those since param tensors shouldn't come from NoOp node. |
Yeah, and that's why I would like to rewrite this solution later, since it doesn't guarantee the length of the returned list if there's a |
The 'NoOp' op appears in the execution graph (although it shouldn't really), and its output value can sometimes be passed to downstream nodes. Temporarily fix this by filtering it out of the parameters in
getParamValue
.TODO(mattSoulanille): Refactor the graph so NoOp and other control dependencies are only used for sorting and don't appear in the execution graph.
To see the logs from the Cloud Build CI, please join either our discussion or announcement mailing list.
This change is