|
[Sponsors] |
Efficient methods for solving thousands of right-hand-sides? |
|
LinkBack | Thread Tools | Search this Thread | Display Modes |
November 12, 2010, 18:59 |
Efficient methods for solving thousands of right-hand-sides?
|
#1 |
New Member
Bob Edwards
Join Date: Nov 2010
Posts: 1
Rep Power: 0 |
Hello, in my application I have to solve a large sparse SPD linear system for thousands of right-hand-sides as part of a numerical simulation package. Currently I am using matlab, and the algorithm uses metis pre-ordering, cholesky factorization, and then uses parfor loops to parallelize the forward/back substitution solves to as many threads as there are CPU cores. The implementation is surprisingly efficient, but there are several drawbacks, most notably that the matlab parfor creates a copy of the sparse factorization of the system to each thread, which is a large overhead as the matrix factorization is many gigabytes.
I am coding in C++ now, and exploring tools and libraries for simultaneously solving thousands of right-hand-sides on a standard multi-core desktop PC (i7 quadcore type machine). My current approach is going to be to use metis+cholmod to factor the system, and then use OpenMP to possibly parallelize the solution, but I would welcome any other suggestions. For now I am trying to keep the implementation to be non-mpi, that is, running on a single machine, but will likely explore using MPI in the future. Cheers, Bob |
|
November 13, 2010, 11:44 |
|
#2 |
Member
Anonymous
Join Date: Jul 2009
Posts: 44
Rep Power: 17 |
I don't know what SPD means, can't you just use LU decomposition?
That's very efficient for many RHsides |
|
November 15, 2010, 17:02 |
|
#4 |
Senior Member
Arjun
Join Date: Mar 2009
Location: Nurenberg, Germany
Posts: 1,285
Rep Power: 34 |
i have written smoothed multigrid lib in c++ that i use in cfd code. I intend to put it online as open source.
(This is based on algo as explained in pyAMG code which is already available as opensource). |
|
|
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Any questions about Runge-Kutta methods | Runge_Kutta | Main CFD Forum | 33 | September 9, 2019 17:32 |
comments on FDM, FEM, FVM, SM, SEM, DSEM, BEM | kenn | Main CFD Forum | 2 | July 18, 2004 19:28 |
I just wonder why "SIMPLE" | Junseok Kim | Main CFD Forum | 21 | May 20, 2001 09:47 |