parallel matrix multiplication ATA

Lukasz Kaczmarczyk likask at civil.gla.ac.uk
Mon Dec 7 12:58:38 CST 2009


Hello,

I have to multiply rectangular parallel matrix A by its transpose (ATA). Matrix A is computed as result of some non standard hybrid approximation method. Columns of the matrix are associated with tetrahedral faces, rows are associated with tetrahedral. In order to compute elements of matrix A interprocess communication is not needed. In addition faces are shared maximally with two processes, faces can have only two neighbour elements.

I have created matrix A using MatCreateMPIAIJWithSplitArrays, and create matrix ATA using MatPtAP which some diagonal scaling. The time consuming part of my algorithm is construction of matrix ATA.  I looking for advice, if its worth to write own problem tailored multiplication operator or is better way to speedup algorithm using standard PETSc functions.

I looking forward for any advice.

Kind regards,
Lukasz






More information about the petsc-users mailing list