IntelPython / dpctl

Python SYCL bindings and SYCL-based Python Array API library
https://intelpython.github.io/dpctl/
Apache License 2.0
97 stars 29 forks source link

Feature request: implement array_api linalg support for dpctl tensors #1715

Open icfaust opened 1 week ago

icfaust commented 1 week ago

dpctl tensors implement most of the array_api standard except for the linalg package as shown by this deselection file: https://github.com/IntelPython/dpctl/blob/master/.github/workflows/array-api-skips.txt

This causes issues in using dpctl tensors with scikit-learn, an example being with PCA which requires the linalg.svd method. Would it be possible to implement these functions as per the array api specification in dpctl (https://data-apis.org/array-api/2023.12/extensions/linear_algebra_functions.html)?

ndgrigorian commented 1 week ago

Both this and FFT are things we're working towards supporting in the future.

It would currently be theoretically possible with array API functions and some dedicated kernels, but we're still working toward a satisfying submodule implementation.