-
Notifications
You must be signed in to change notification settings - Fork 3.5k
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
[BYOC] Refine DNNL Codegen #5288
Conversation
CHECK(out_.size() > static_cast<size_t>(op->index)); | ||
|
||
// Only keep the item we want for the child node. | ||
// FIXME(@comaniac): The other items should still be requried for the primary outputs. |
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.
This looks ok to me, why "FIXME"? TupleGetItem only cares about one output.
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.
In terms of the semantic, if we generate a partition function like conv2d->BN->relu
, we should have a tuple output with 3 elements (relu_out, BN_out_1, BN_out_2)
even the rest 2 are useless. In general we should achieve this semantic, but since no one cares the rest 2 outputs of batch_norm
it's fine for now.
* Improve DNNL * Add bind params * trigger ci
* Improve DNNL * Add bind params * trigger ci
* Improve DNNL * Add bind params * trigger ci
With multiple output and merge compiler region support, we can now refine the DNNL codegen to support ops with multiple outputs such as
batch_norm
. This PR:batch_norm
.batch_norm
.TupleGeItem
in DNNL codegen.cc @zhiics, @masahi.