cyb70289 edited a comment on pull request #9841: URL: https://github.com/apache/arrow/pull/9841#issuecomment-818526907
Record things to improve, will create Jira to track. Power kernel is modified from add/sub/mul/div kernels. But power is much more complicated than basic arithmetic operations. Some limitations in current implementation: - Base and exponent must be the same type, this is not reasonable - Null handling is delayed to the end, and power is always calculated even for nulls (with whatever base/exponent happen to be in the slots). This is a big waste of time for expensive power calculations. For checked power, integer overflow is checked for every multiplication. As the integer upper bound is already know, it can be calculate directly if the power will overflow. It will remove overflow checks in each iteration, but will introduce one expensive logarithm operation. Maybe deserve a try. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: [email protected]
