-
Notifications
You must be signed in to change notification settings - Fork 155
Norm API for Lattice #877
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
Norm API for Lattice #877
Conversation
this is new version of #834 two open comments from old PR
Originally posted by @yshekel in #834 (comment)
Originally posted by @yshekel in #834 (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.
Overall looks good, I left a few comments
if (q < 0) { | ||
ICICLE_LOG_ERROR << "Field modulus q must be less than 64 bits; received q = " << q; | ||
return eIcicleError::INVALID_ARGUMENT; | ||
} |
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 should probably be a compile time check so we don't build libs that will fail here.
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.
you are right. I originally wrote it like this in other APIs because I couldn't make it a compile time check but maybe it's possible to do.
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.
Is the static_assert at the top of this file basically doing this check?
Describe the changes
This PR adds Norm API for Lattices
Describe the rational
Why is this change necessary?
Does it increase performance?
Backend branches
Replace "main" with the branch this PR should work with
cuda-backend-branch: emir/norm
metal-backend-branch: main