-
Couldn't load subscription status.
- Fork 68
[fusilli] Add pointwise attribute and node #2416
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
Conversation
Signed-off-by: Ian Wood <[email protected]>
Signed-off-by: Ian Wood <[email protected]>
|
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #2416 +/- ##
=======================================
Coverage ? 77.44%
=======================================
Files ? 244
Lines ? 23370
Branches ? 0
=======================================
Hits ? 18100
Misses ? 5270
Partials ? 0 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
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.
Thanks for the quick turnaround on this! Looks great.
I have a few comments, most of them are minor. I can give it another look once you've addressed them.
| auto filteredShapes = shapes | std::views::filter([](const auto &shape) { | ||
| return !shape.empty(); | ||
| }); | ||
| FUSILLI_RETURN_ERROR_IF(filteredShapes.empty(), ErrorCode::CompileFailure, | ||
| "All input shapes are empty"); |
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.
(Non blocking comment, feel free to ignore)
A lot of the shape and stride utility functions in this file don't return an ErrorOr<> and instead use assertions, by shifting the actual checks into node / tensor pre-validations.
Even this check for empty shapes IMO can be moved to PointwiseNode::preValidateNode(). Then you can simply have an assertion here (to check that input shapes are not empty) which should be unreachable by virtue of this being called in inferPropertiesNode which always runs after preValidateNode.
I'm OK if you want to leave it like this too.
Signed-off-by: Ian Wood <[email protected]>
Signed-off-by: Ian Wood <[email protected]>
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!
Signed-off-by: Ian Wood <[email protected]>
Implements ASM emitter methods for `PointwiseNode`. This is a followup to #2416. --------- Signed-off-by: Ian Wood <[email protected]>
This change implements attribute and node for pointwise op types. This does not implement the ASM emitter for
PointwiseNode. That will be done in a followup PR.