Hi Hong, The second option, I want to solve A^T X = B. The MatMatSolveTranspose() function in petsc.
Lucas ________________________________ From: petsc-users <[email protected]> on behalf of Zhang, Hong via petsc-users <[email protected]> Sent: Thursday, August 4, 2022 6:02:21 PM To: Junchao Zhang <[email protected]>; Barry Smith <[email protected]> Cc: [email protected] <[email protected]> Subject: Re: [petsc-users] Question about speed of MatMatSolveTranspose with MUMPS Caution: This message was sent from outside the University of Manitoba. Lucas, Solving A X = B^T #MatMatTransposeSolve() -- supported by petsc/mumps interface or A^T X = B #MatTransposeMatSolve() -- not supported which one do you want ? Hong ________________________________ From: petsc-users <[email protected]> on behalf of Junchao Zhang <[email protected]> Sent: Thursday, August 4, 2022 5:21 PM To: Barry Smith <[email protected]> Cc: [email protected] <[email protected]> Subject: Re: [petsc-users] Question about speed of MatMatSolveTranspose with MUMPS It seems yes, from mump manual ICNTL(9) computes the solution using A or AT Phase: accessed by the host during the solve phase. Possible values : 1 : AX = B is solved. != 1 : ATX = B is solved. On Thu, Aug 4, 2022 at 4:20 PM Barry Smith <[email protected]<mailto:[email protected]>> wrote: 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. Barry On Aug 4, 2022, at 3:55 PM, Lucas Banting <[email protected]<mailto:[email protected]>> wrote: Hello, I am using MUMPS to solve a system with multiple right hand sides. I have noticed that the MatMatSolve function appears to be quite a bit faster than the MatMatSolveTranspose function. I was trying to look through the petsc source to see where the MatMatSolveTranspose_MUMPS function was but couldn't find it. Is PETSc just doing MatSolveTranspose_MUMPS for each right hand side when doing MatMatSolveTranspose with MUMPS? If an accelerated version of MatMatSolveTranspose existed, it would be very useful for my application. Regards, Lucas
