How can I solve linear equation system in parallel?
Ältere Kommentare anzeigen
I am solving a linear equation system,
, where A is a sparse square matrix and B is a sparse column vector. Before solving the system I use the command
dA = decomposition(A);
to return a decomposition of matrix A that I can use to solve the linear system more efficiently. In my case, it is Cholesky decomposition. Then I solve the system
x = dA\B;
and it works perfectly. My question is: how can I do it in parallel computing? or What is the best way to solve it in a cluster?
Akzeptierte Antwort
Weitere Antworten (1)
Christine Tobler
am 14 Jan. 2020
1 Stimme
As John says, if you are using decomposition on one computer with several cores, the solver used already will use those cores if appropriate.
If you are working on a distributed system, and the matrix A is a distributed matrix, as of R2019b decomposition is also supported for this (see here).
1 Kommentar
Heiko Weichelt
am 14 Jan. 2020
Notice that decomposition of distributed arrays has a slightly limited subset for the underlying algorithms. Right now, sparse Cholesky, e.g., is not yet supported. Compare
>> help parallel.distributed.Decomposition.Type
and
>> help parallel.distributed.Decomposition
for the limitations.
Kategorien
Mehr zu Sparse Matrices finden Sie in Hilfe-Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!