Support for complex data types and functions in SYCL running on NVIDIA
- Dominant language
- LLVM
- Stars
- 1.5k
- Forks
- 854
- Avg merge
- 3d 17h
- Merged PRs (30d)
- 137
Description
**Description**
We want to evaluate the performance of SYCL/CUDA on NVIDIA using the [ginkgo library](https://github.com/ginkgo-project/ginkgo) for solving large matrices that requires `std::complex` data types.
**Is your feature request related to a problem? Please describe**
There is a problem with linking the ginkgo library in that is written in SYCL when using the NVIDIA backend due to missing complex functions, particularly `Unresolved extern function '__mulsc3'` along with `csqrt`, `csqrtf`, and other related complex operations. I noticed that in issue #6841, that this data type is currently not supported. Will there be any support for this in the future?
**Describe alternatives you have considered**
The issue ticket above suggested to use `sycl::oneapi::ext::complex` in place of `std::complex`; however, this solution is not feasible as the SYCL code relies on `MKL::cdot` and other complex related functions from the MKL library, which requires `std::complex` data type.
Contributor guide
Assessment
This issue has not been assessed yet.