-
Notifications
You must be signed in to change notification settings - Fork 230
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
[BUG] GpuAdd and GpuMultiply do not include failOnError #3472
Comments
fall back to the CPU ? |
Yes that was a typo. We should fall back to the CPU unless we have a good way to detect overflow and we want to add it in. |
We can leverage the same solution with Java to detect overflow for “Add” op. Concerning the "Multiply" op, unfortunately it is much more complitcated, so we can fall back to CPU now. Any idea ? |
Yes we could detect a sign change like add exact is doing. This will not work for the AST version of add so we still will need to fall back in that case. We also will have to be careful with Decimal vs non-Decimal add. |
I just saw that UnaryMinus also has a fail on error added in... |
multiplyExact is more complicated, but it should work here too. We support everything that is a part of it. I would file a follow on issue though, for us to implement our own kernel to be able to do the checking ourselves. |
So do almost all the expressions in file arithmetic.scala, e.g. |
Yes seems we need to always fall back to CPU when ansi is enabled. Since there is no reliable way to know whether the AST version will be used. |
There's a separate |
Thanks Jason ,will check it. |
Describe the bug
Add and Multiply added in failOnError fields.
This is similar to #2078 but for overflow. We either need to fall back to the GPU in these cases or implement the feature. Note that this impacts Canonicalization too.
The text was updated successfully, but these errors were encountered: