Page 1 of 1

Best library for O(100k) linear system

Posted: Tue Jan 07, 2020 7:14 am
by zleba
Dear all,
I need to solve huge system of linear equations, with up to 500,000 unknown variables.
Consequently, the related matrix has a TB size and definitely cannot be stored in the GPU memory.
I have access to cluster with nodes having CPUs or CPUs+GPUs.
Currently, I am using ScaLAPACK to utilize MPI and to distribute the whole matrix to several nodes.

Is there a chance to benefit from GPUs when solving such system (MAGMA or something else)?
Or is ScaLAPACK the only reasonable option?

Thanks a lot.
Radek

Re: Best library for O(100k) linear system

Posted: Tue Jan 07, 2020 11:36 am
by Stan Tomov
Dear Radek,
You can try the SLATE library:
https://bitbucket.org/icl/slate/
which provides the ScaLAPACK functionalities with support for GPU use.
Stan

Re: Best library for O(100k) linear system

Posted: Tue Jan 07, 2020 1:43 pm
by mgates3
SLATE is a good choice for a distributed solver with CPUs or CPUs + GPUs. For using CPUs + GPUs, it would require that the distributed matrix fits in the cumulative memory of all the GPUs.

For a single node, MAGMA will also do out-of-GPU-memory algorithms for such large matrices. Just call magma_dgetrf() with the matrix in CPU host memory. MAGMA would need to be compiled with 64-bit BLAS and LAPACK (ilp64).

-mark