TuDa
TuDa

Reputation: 87

I don't find the LU decomposition on the device with cuSolver

I need to calculate the determinant of a matrix (array of double) with cuda and I want use the LU decomposition to do this. I don't find the device function in cusolverSp.h but only the host function cusolverSpDcsrlsvluHost. I look in cuda 7.0 and cuda 7.5.

I don't understand why I can't find it because it is described in the official documentation: http://docs.nvidia.com/cuda/cusolver/index.html#api

Other functions like the Cholesky decomposition on the device works.

Is it implemented? If yes, where can I find it?

Thank you for your help!

Upvotes: 0

Views: 853

Answers (1)

Gilles
Gilles

Reputation: 9489

Looking at the documentation you pointed I see:

Remark 5: only CPU (Host) path is provided

A bit of reading on the page gives this:

Next, cuSolverSP provides a new set of sparse routines based on a sparse QR factorization. Not all matrices have a good sparsity pattern for parallelism in factorization, so the cuSolverSP library also provides a CPU path to handle those sequential-like matrices. For those matrices with abundant parallelism, the GPU path will deliver higher performance. The library is designed to be called from C and C++.

Combining the two quotes, I guess the device function wasn't deemed worth providing... This is just my interpretation though.

Upvotes: 1

Related Questions