[Trilinos-Users] How to change the row map of EpetraCrs matrix to achieve load balance ?

Erik Boman egboman at sandia.gov
Mon Apr 4 11:09:48 MDT 2011

The best way to load balance an Epetra matrix is to use the Isorropia 

Isorropia can balance either the rows or the number of nonzeros (which 
corresponds to memory).
Isorropia uses the partitioning methods in the Zoltan package. The 
default method is hypergraph partitioning,
which is good at minimizing communication but can be rather expensive to 
compute. For a faster method,
try "block".

If you use Isorropia's Redistributor, you don't need to do the 
import/export yourself.


Williams, Alan B wrote:
> You would need to set up an importer and import your initial matrix 
> into a matrix with the desired row-map.
> See the doxygen documentation for information about the Epetra_Import 
> class.
> Alan
> *From:* trilinos-users-bounces at software.sandia.gov 
> [mailto:trilinos-users-bounces at software.sandia.gov] *On Behalf Of 
> *Davood Ansari
> *Sent:* Sunday, April 03, 2011 1:13 AM
> *To:* trilinos-users at software.sandia.gov
> *Subject:* [Trilinos-Users] How to change the row map of EpetraCrs 
> matrix to achieve load balance ?
> Dear all
> I have the following problem and I wonder if there is an easy solution 
> to it.
> I would really appreciate your comments  and advice.
> I assemble a Epetra crs matrix in parallel. The assembly is based on 
> some FEM sun-domains
> and since they have very different sizes the resulting matrix is load 
> imbalanced.
> Is there an easy way to change the row map of the matrix to balance 
> the load after I am finished
> with the assembly ?
> Thankfully
> Davood
> ------------------------------------------------------------------------
> _______________________________________________
> Trilinos-Users mailing list
> Trilinos-Users at software.sandia.gov
> http://software.sandia.gov/mailman/listinfo/trilinos-users

More information about the Trilinos-Users mailing list