[petsc-users] Unequal sparse matrix row distribution for MPI MatMult

Steena M stm8086 at yahoo.com
Sun Mar 22 17:50:20 CDT 2015


Hello, 

I need to distribute a sparse matrix such that each proc owns an unequal number of blocked rows before I proceed with MPI MatMult. My initial thoughts on doing this:

1) Use  MatGetSubMatrices() on the test MATMPIBAIJ matrix to produce a new matrix where each proc has an unequal number of rows.

2) Provide scatter context for vector X (for MatMult )using IS iscol from MatGetSubMatrices() while creating the vector X.

3) Call MatMult()

 Will MatMult_MPIBAIJ continue to scatter this matrix and vector such that each proc will own an equal number of matrix rows and corresponding diagonal vector elements? Should I write my own MPIMatMult function to retain my redistribution of the matrix and vector?

Thanks in advance,
Steena


More information about the petsc-users mailing list