-
Notifications
You must be signed in to change notification settings - Fork 163
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
unsupported getri_batch/getrf_batch for Nvidia #229
Comments
Hi @Soujanyajanga, thanks for raising this issue, I can give you an update on the progress of these operations for the Nvidia backend. For For Edit: I originally stated that |
I have a quick question, what native function have you been using as your work around? So far as I am aware getri does not have a native cuSolver equivalent. |
I have managed to answer my own question, cuSolver does not implement I think this is something we can support but I think it may take a bit of additional work in the backend to get the appropriate cuBlas handles, etc. |
For "getri_batch", CUDA equivalent API is "cublasCgetriBatched" . |
@Soujanyajanga yes, I think this is the approach we would take, if you can share your workaround this could be useful, thanks, I've added this to our roadmap so someone will take a look at. |
Here below the work around implemented using SYCL interop ……………..(creating/adjusting the parameters for CUDA API)
|
@hdelan should this issue be closed? |
@JackAKirk I think so. I don't have the permissions to close the issue but maybe @Rbiessy can |
Thanks for catching this. Looks like all the issues mentioned have been addressed so closing. |
As per the oneMKL-LAPACK
APIs "getri_batch/getrf_batch" are not implemented for Nvidia.
void geqrf_batch(sycl::queue &queue, std::int64_t m, std::int64_t n,
sycl::buffer<std::complex> &a, std::int64_t lda, std::int64_t stride_a,
sycl::buffer<std::complex> &tau, std::int64_t stride_tau,
std::int64_t batch_size, sycl::buffer<std::complex> &scratchpad,
std::int64_t scratchpad_size)
{ throw unimplemented("lapack", "geqrf_batch"); >>>>>>>>> Unimplemented }
void getri_batch(sycl::queue &queue, std::int64_t n, sycl::buffer &a, std::int64_t lda,
std::int64_t stride_a, sycl::bufferstd::int64_t &ipiv, std::int64_t stride_ipiv,
std::int64_t batch_size, sycl::buffer &scratchpad,
std::int64_t scratchpad_size) {
throw unimplemented("lapack", "getri_batch"); >>>>>>>>>> Unimplemented
Can you please let us know when these APIs support will be available?
We have implemented work around by using "SYCL interop", will you be interested in this?
The text was updated successfully, but these errors were encountered: