Good afternoon!

 

Maybe you can support me to find out if it would make sense to apply
ViennaCL to my problem?

 

Background:

.         In the context of a reverse engineering problem I need to solve a
linear system of equations. 
The number of unknowns is in the range of n=2000 . 50000 and the system
needs to be solved a lot of times within an iteration loop.

 

.         The matrix is symmetric, hence only the upper triangle  is stored
in compressed CSR format

 

.         I need to solve this system with multiple right hand side vectors.

 

.         At present, I'm using Intel MKL / PARDISO to solve the linear
system with mtype =  2 (real and symmetric positive definite) or -2  (in
some cases, the matrix is real and symmetric indefinite) which works very
well.

 

.         Recently, I managed to speed up the whole algorithm by setting up
the system on the GPU with CUDA and I'm looking for a suitable library to
solve the system on the GPU as well. 

 

o   I have already tried to solve the system with cusparse (using
cusolverSpDcsrlsvchol or cusolverSpDcsrlsvqr) which in principle worked. I
have faced the problem that I did not find a possibility to simultaneously
solve multiple right hand sides and also the symmetric property is not
supported for cusolverSp. So I had to extend the matrix to a full matrix and
to solve the system for each rhs which in total was much slower than solving
the system on the CPU by means of PARDISO. 

 

So, after this lengthy introduction, my question is: 

 

Is it possible to apply ViennaCL to such a problem and can I expect a
significant speed up compared to mkl?

 

.         The perfect solution would be if I directly could transfer the
matrix in csr format and the rhs vectors (which are all stored in GPU
memory) to a suitable solver that replaces PARDISO, mtype 2,2  (I currently
copy these data to the host and pass it to PARDISO)

 

My environment for development is Win10(x64) / Visual Studio 2019 / MKL 2017
/ CUDA 11.2 and the code also compiles on Linux where CUDA 7.5 is installed.

 

Thanks for your feedback,

 

Arno Gehrer

 

 

 

 

 

_______________________________________________
ViennaCL-support mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/viennacl-support

Reply via email to