-
Notifications
You must be signed in to change notification settings - Fork 26.3k
[JIT] Simplified Operator #10080
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
[JIT] Simplified Operator #10080
Conversation
29fcee2 to
8eed27e
Compare
zdevito
left a comment
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.
Looks good. Two things: additional things that can be deleted from gen_jit_dispatch.py and a bugfix for allowing simple ops to be created when Node* is non-null.
tools/jit/gen_jit_dispatch.py
Outdated
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
torch/csrc/jit/operator.h
Outdated
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
torch/csrc/jit/operator.h
Outdated
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
8eed27e to
c235d8a
Compare
c235d8a to
8d34a97
Compare
facebook-github-bot
left a comment
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.
goldsborough has imported this pull request. If you are a Facebook employee, you can view this diff on Phabricator.
|
|
||
| // Essentially a variant<Operation, OperationCreator>. | ||
| // NB: std::function has a default state (where it == nullptr). | ||
| std::shared_ptr<Operation> op_; |
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
Summary: zdevito explained that the attributed versions of `Operator`s are no longer necessary. This PR does two things: 1. Removes all code associated with attributed operators, 2. Adds a second kind of state to `Operator` where it is constructed with an `Operation` directly instead of an `OperationCreator`. This will be useful to test custom operators which don't require a node (you can just retrieve it directly). Now rebased on top of pytorch#9801 zdevito Pull Request resolved: pytorch#10080 Differential Revision: D9113668 Pulled By: goldsborough fbshipit-source-id: 1276a191c7cf89da1c38488769f2105ce2664750
@zdevito explained that the attributed versions of
Operators are no longer necessary. This PR does two things:Operatorwhere it is constructed with anOperationdirectly instead of anOperationCreator. This will be useful to test custom operators which don't require a node (you can just retrieve it directly).Now rebased on top of #9801
@zdevito