Questions about Blas

Rodrigo Araujo rodrigowpa at
Wed Sep 16 13:09:37 CDT 2009

Thanks for the answer,

But I have another question.

I am trying to multiply the matrices using 2 pcs, so I found the function
MatMatMultNumeric_MPIDense_MPIDense, which probably could do this using the
BLAS. My question is how the BLAS or the MPI splits the matrices to multiply
them is separated pcs?

2009/9/16 Hong Zhang <hzhang at>

>  I am multiplying matrices using this line of code:
>> ierr = MatMatMult(A, B, MAT_INITIAL_MATRIX, ((PetscReal) 2.0),
>> &C);CHKERRQ(ierr);
>> But I need to see the source code of the file which has this function,
>> because I´d want to see how the functions from BLAS is being used. Is that
>> possible? If yes, could somebody tell me how.
> We have implementations for different matrix data structures.
> You can search 'MatMatMult_'
> from petsc/src/ for all.
> BLAS is used in MatMatMultNumeric_SeqDense_SeqDense()
> in src/mat/impls/dense/seq/dense.c.
> For sparse matrices, we do not use BLAS in MatMatMult().
> Hong
>> --
>> Rodrigo W. Pimentel Araujo
>> Engenharia da Computação

Rodrigo W. Pimentel Araujo
Engenharia da Computação
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the petsc-users mailing list