-
Notifications
You must be signed in to change notification settings - Fork 30
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Implements
dpctl.tensor.logsumexp
and ``dpctl.tensor.reduce_hypot…
…`` (#1446) * Implements logsumexp and reduce_hypot * Implements dedicated kernels for temp reductions over axes 1 and 0 in contiguous arrays * logsumexp and reduce_hypot no longer use atomics This change was made to improve the accuracy of these functions * Adds tests for reduce_hypot and logsumexp * Arithmetic reductions no longer use atomics for inexact types This change is intended to improve the numerical stability of sum and prod * Removed support of atomic reduction for max and min * Adds new tests for reductions * Split reductions into multiple source files * Remove unneccessary imports of reduction init functions * Added functions for querying reduction atomic support per type per function * Corrected ``min`` contig variant typo These variants were using ``sycl::maximum`` rather than ``sycl::minimum`` * Removes _tree_reduction_over_axis Use lambdas to ignore atomic-specific arguments to hypot and logsumexp dtype_supported functions * Always use atomic implementation for min/max if available For add/multiplies reductions, use tree reduction for FP types, real and complex, to get better round-off accumulation properties. * ``logaddexp`` implementation moved to math_utils Reduces code repetition between logsumexp and logaddexp --------- Co-authored-by: Oleksandr Pavlyk <oleksandr.pavlyk@intel.com>
- Loading branch information
1 parent
2eba93e
commit 03fd737
Showing
32 changed files
with
6,735 additions
and
2,402 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.