-
Notifications
You must be signed in to change notification settings - Fork 55
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
[Host ir] support for set reduce and binary op #4146
base: host_irs/refactor_lowering_and_segmentation
Are you sure you want to change the base?
[Host ir] support for set reduce and binary op #4146
Conversation
Review updated until commit 10daa92 Description
Changes walkthrough 📝
PR Reviewer Guide 🔍Here are some key observations to aid the review process:
|
588e130
to
10daa92
Compare
!test |
permutation.has_value(), | ||
"The logical domain of a Set.Permute is supposed to be a permutation of the root domain: ", | ||
out_tv->toString()); | ||
in_tensor = in_tensor.permute(*permutation).contiguous(); |
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.
note that the .contiguous()
is necessary here, and I think this is an unexposed bug in LoadStoreOp::evaluate()
-- however fixing it there incidentally causes another test failure.
The bug was not exposed because we never "host evaluate" a set.Permute op before this PR
@@ -457,135 +457,4 @@ INSTANTIATE_TEST_SUITE_P( | |||
testing::Values(0, 1), | |||
testing::Values(true))); | |||
|
|||
// Different scheduling modes used in |
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 test is not relevant anymore since we don't use generated kernels for now. So we'll add it back in times if we think this is useful. But in the meantime it is just technical debt
This PR belongs to a series of stacked PRs:
Add support for
LoadStoreOp
,BinaryOp
,ReductionOp
, including support for pre-allocated output, which is not provided by ExprEvaluator.