<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
</head>
<body>
<div>
<div>
<div dir="ltr">
<div style="" dir="ltr">Hi Hong,</div>
<div style="" dir="ltr"><br>
</div>
<div style="" dir="ltr">The second option, I want to solve A^T X = B.</div>
<div style="" dir="ltr">The MatMatSolveTranspose() function in petsc.</div>
<div style="" dir="ltr"><br>
</div>
<div style="" dir="ltr">Lucas</div>
</div>
</div>
<div id="ms-outlook-mobile-signature">
<div></div>
</div>
</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 Zhang, Hong via petsc-users <petsc-users@mcs.anl.gov><br>
<b>Sent:</b> Thursday, August 4, 2022 6:02:21 PM<br>
<b>To:</b> Junchao Zhang <junchao.zhang@gmail.com>; Barry Smith <bsmith@petsc.dev><br>
<b>Cc:</b> petsc-users@mcs.anl.gov <petsc-users@mcs.anl.gov><br>
<b>Subject:</b> Re: [petsc-users] Question about speed of MatMatSolveTranspose with MUMPS</font>
<div> </div>
</div>
<style type="text/css" style="display:none">
<!--
p
        {margin-top:0;
        margin-bottom:0}
-->
</style>
<div dir="ltr"><span style="font-family:Calibri"><span style="font-size:11pt">
<table style="background-color:#fbe3b3; border:1px solid black">
<tbody>
<tr>
<td><font style="color:#462c1d"><strong>Caution:</strong> This message was sent from outside the University of Manitoba.<span></span></font></td>
</tr>
</tbody>
</table>
</span></span><br>
<div>
<div style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt; color:rgb(0,0,0)">
<blockquote type="cite" style="color:rgb(32,31,30); font-size:15px; background-color:rgb(255,255,255)">
<div style="margin:0px">
<div style="font-size:12pt; font-family:Calibri,Arial,Helvetica,sans-serif; margin:0px">
<span style="margin:0px">Lucas, </span></div>
<div style="font-size:12pt; font-family:Calibri,Arial,Helvetica,sans-serif; margin:0px">
<span style="margin:0px">Solving</span></div>
<div style="font-size:12pt; font-family:Calibri,Arial,Helvetica,sans-serif; margin:0px">
<span style="margin:0px">A X = B^T  #MatMatTransposeSolve() </span>-- supported by petsc/mumps interface</div>
<div style="font-size:12pt; font-family:Calibri,Arial,Helvetica,sans-serif; margin:0px">
<span style="margin:0px">or </span></div>
<div style="font-size:12pt; font-family:Calibri,Arial,Helvetica,sans-serif; margin:0px">
A^T X = B #MatTransposeMatSolve() -- not supported</div>
<div style="font-size:12pt; font-family:Calibri,Arial,Helvetica,sans-serif; margin:0px">
which one do you want ?</div>
</div>
</blockquote>
Hong</div>
<div id="x_appendonsend"></div>
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="x_divRplyFwdMsg" dir="ltr"><font face="Calibri, sans-serif" color="#000000" style="font-size:11pt"><b>From:</b> petsc-users <petsc-users-bounces@mcs.anl.gov> on behalf of Junchao Zhang <junchao.zhang@gmail.com><br>
<b>Sent:</b> Thursday, August 4, 2022 5:21 PM<br>
<b>To:</b> Barry Smith <bsmith@petsc.dev><br>
<b>Cc:</b> petsc-users@mcs.anl.gov <petsc-users@mcs.anl.gov><br>
<b>Subject:</b> Re: [petsc-users] Question about speed of MatMatSolveTranspose with MUMPS</font>
<div> </div>
</div>
<div>
<div dir="ltr">
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
It seems yes, from mump manual</p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
<br>
</p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
ICNTL(9) computes the solution using A or A<span class="x_x_gmail-s1" style="font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal">T</span></p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
Phase: accessed by the host during the solve phase.</p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
Possible values :</p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
1    : AX = B is solved.</p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
!= 1 : A<span class="x_x_gmail-s1" style="font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal">T</span>X = B is solved.</p>
<p class="x_x_gmail-p1" style="margin:0px; font-variant-numeric:normal; font-variant-east-asian:normal; font-stretch:normal; line-height:normal; font-family:Helvetica">
<br>
</p>
</div>
<br>
<div class="x_x_gmail_quote">
<div dir="ltr" class="x_x_gmail_attr">On Thu, Aug 4, 2022 at 4:20 PM Barry Smith <<a href="mailto:bsmith@petsc.dev">bsmith@petsc.dev</a>> wrote:<br>
</div>
<blockquote class="x_x_gmail_quote" style="margin:0px 0px 0px 0.8ex; border-left:1px solid rgb(204,204,204); padding-left:1ex">
<div style="">
<div><br>
</div>
  Yes, it appears no MUMPS matmatsolvetranspose is wired in. Does MUMPS provide such a function? If so it can be added with a few lines of code.
<div><br>
</div>
<div>  Barry</div>
<div><br>
<div><br>
<blockquote type="cite">
<div>On Aug 4, 2022, at 3:55 PM, Lucas Banting <<a href="mailto:bantingl@myumanitoba.ca" target="_blank">bantingl@myumanitoba.ca</a>> wrote:</div>
<br>
<div>
<div style="font-style:normal; font-variant-caps:normal; font-weight:400; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">
Hello,<br>
</div>
<div style="font-style:normal; font-variant-caps:normal; font-weight:400; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">
<br>
I am using MUMPS to solve a system with multiple right hand sides.</div>
<div style="font-style:normal; font-variant-caps:normal; font-weight:400; letter-spacing:normal; text-align:start; text-indent:0px; text-transform:none; white-space:normal; word-spacing:0px; text-decoration:none; font-family:Calibri,Arial,Helvetica,sans-serif; font-size:12pt">
I have noticed that the MatMatSolve function appears to be quite a bit faster than the MatMatSolveTranspose function.<br>
I was trying to look through the petsc source to see where the MatMatSolveTranspose_MUMPS function was but couldn't find it.<br>
<br>
Is PETSc just doing MatSolveTranspose_MUMPS for each right hand side when doing MatMatSolveTranspose with MUMPS?<br>
If an accelerated version of MatMatSolveTranspose existed, it would be very useful for my application.<br>
<br>
Regards,
<div>Lucas</div>
</div>
</div>
</blockquote>
</div>
<br>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</body>
</html>