<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none;"> P {margin-top:0;margin-bottom:0;} </style>
</head>
<body dir="ltr">
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif;font-size:14.6667px;background-color:rgb(255, 255, 255);display:inline !important">"Sparse Matrix-Matrix Products
 Executed Through Coloring" paper is a sequential algorithm for C=A*B^T.</span><br>
</div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif;font-size:14.6667px;background-color:rgb(255, 255, 255);display:inline !important"><br>
</span></div>
<div style="font-family: Calibri, Arial, Helvetica, sans-serif; font-size: 12pt; color: rgb(0, 0, 0);">
<span style="font-family:"Segoe UI", "Segoe UI Web (West European)", "Segoe UI", -apple-system, "system-ui", Roboto, "Helvetica Neue", sans-serif;font-size:14.6667px;background-color:rgb(255, 255, 255);display:inline !important">We do not have paper discussing
 the parallel mat-mat product algorithms used in PETSc. </span></div>
<div style="color: rgb(0, 0, 0);"><span style="font-size: 14.6667px;">For source code, you may look at MatMatMultSymbolic_MPIAIJ_MPIAIJ() and MatMatMultNumeric_MPIAIJ_MPIAIJ()</span></div>
<div style="color: rgb(0, 0, 0);"><span style="font-size: 14.6667px;">in petsc/src/mat/impls/aij/mpi/mpimatmatmult.c.</span></div>
<div style="color: rgb(0, 0, 0);"><span style="font-size: 14.6667px;">Hong</span></div>
<div id="appendonsend"></div>
<hr style="display:inline-block;width:98%" tabindex="-1">
<div id="divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" style="font-size:11pt" color="#000000"><b>From:</b> petsc-users <petsc-users-bounces@mcs.anl.gov> on behalf of Jose E. Roman <jroman@dsic.upv.es><br>
<b>Sent:</b> Thursday, November 11, 2021 7:33 AM<br>
<b>To:</b> Matthew Knepley <knepley@gmail.com><br>
<b>Cc:</b> PETSc <petsc-users@mcs.anl.gov>; Majid Rasouli <maj.rasouli@gmail.com><br>
<b>Subject:</b> Re: [petsc-users] matrix-vector and matrix-matrix products in PETSc</font>
<div> </div>
</div>
<div class="BodyFragment"><font size="2"><span style="font-size:11pt;">
<div class="PlainText"><br>
<br>
> El 11 nov 2021, a las 13:41, Matthew Knepley <knepley@gmail.com> escribió:<br>
> <br>
> On Thu, Nov 11, 2021 at 3:00 AM Majid Rasouli <maj.rasouli@gmail.com> wrote:<br>
> Dear all,<br>
> <br>
> I'm trying to find a brief explanation about the parallel (MPI) implementation of matrix-vector multiplication and matrix-matrix multiplication in PETSc. I have used them for some experiments for a research paper and I need to provide a brief explanation
 about the implementation of them. Is there a paper that I can read about that? If not, can anyone please help me find the source code that includes the implementation of those two functions?<br>
> <br>
> I think this describes our SpMV:<br>
> <br>
>   <a href="https://dl.acm.org/doi/abs/10.1145/3225058.3225100?casa_token=Pz_zMwXCoz8AAAAA%3AH8iNvXSY4opzDsJsEnoYVU0CccQjOK9pIH4Rs_Yb7a_ebchRpgAJ5GHoH2humWfkFYS54m2fO84s">
https://dl.acm.org/doi/abs/10.1145/3225058.3225100?casa_token=Pz_zMwXCoz8AAAAA%3AH8iNvXSY4opzDsJsEnoYVU0CccQjOK9pIH4Rs_Yb7a_ebchRpgAJ5GHoH2humWfkFYS54m2fO84s</a><br>
> <br>
> This paper describes the SpMM algorithms we use, and makes some notes on performance<br>
> <br>
>   <a href="https://epubs.siam.org/doi/abs/10.1137/15M1028807">https://epubs.siam.org/doi/abs/10.1137/15M1028807</a><br>
> <br>
> but I could not find a paper on our implementation.<br>
<br>
Sparse Matrix-Matrix Products Executed Through Coloring<br>
Michael McCourt, Barry Smith, and Hong Zhang<br>
<a href="https://doi.org/10.1137/13093426X">https://doi.org/10.1137/13093426X</a><br>
<br>
<br>
<br>
> <br>
>   Thanks,<br>
> <br>
>      Matt<br>
>  <br>
> Thanks a lot,<br>
> Majid.<br>
> <br>
> <br>
> -- <br>
> What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>
> -- Norbert Wiener<br>
> <br>
> <a href="https://www.cse.buffalo.edu/~knepley/">https://www.cse.buffalo.edu/~knepley/</a><br>
<br>
</div>
</span></font></div>
</body>
</html>