[petsc-users] MatMatMult with dense matrices.

Barry Smith bsmith at mcs.anl.gov
Sun Apr 5 15:44:13 CDT 2015


  We would need to see the PETSc side of the code to see if there is anything wrong there.

> On Apr 5, 2015, at 3:35 PM, James A Charles <charlesj at purdue.edu> wrote:
> 
> Hi Hong,
> 
> You can open up matmatmult_comparison.mat in MATLAB ( load matmatmult_comparison.mat ). That .mat contains A, B, C, and C_MATLAB. I called matmatmult in sequential. We use AIJ when A2 was sparse but at the time of this multiplication everything was dense. 
> 
> Thanks,
> James
> 
> 
> ----- Original Message -----
> From: "Hong" <hzhang at mcs.anl.gov>
> To: "James A Charles" <charlesj at purdue.edu>
> Cc: "PETSc users list" <petsc-users at mcs.anl.gov>, dlemus at purdue.edu, "Daniel Mejia" <denphi at denphi.com>, "Tillmann Kubis" <tkubis at purdue.edu>
> Sent: Sunday, April 5, 2015 4:25:39 PM
> Subject: Re: [petsc-users] MatMatMult with dense matrices.
> 
> 
> 
> 
> James: 
> 
> 
> I'm multiplying two dense matrices. I compared the results against MATLAB and I am getting different results. Attached you will see a zip that contains a .mat file that has the A, B, and C. C_MATLAB is the multiplication of A*B in MATLAB and C is the PETSc 3.4.3 result. I also attached the .m files A, B, and C that were saved from PETSc. Is there something I'm doing wrong or 
> 
> 
> What is the file type of matmatmult_comparison.mat? 
> How to read it? 
> I need to see how it defers from C.m. 
> 
> 
> 
> any reason due to the shape of the matrices that this would fail? If it gives any more information we convert the previous matrix that A is formed of A2 (A = A1*A2) to dense prior to the multiplication using MatConvert. 
> 
> 
> 
> It seems both A and B are dense, complex square matrices. 
> Did you call MatMatMult() in sequential or parallel? What matrix format did you use? 
> 
> 
> Hong 



More information about the petsc-users mailing list