[petsc-users] Question about speed of MatMatSolveTranspose with MUMPS

Zhang, Hong hzhang at mcs.anl.gov
Thu Aug 4 18:02:21 CDT 2022

A X = B^T  #MatMatTransposeSolve() -- supported by petsc/mumps interface
A^T X = B #MatTransposeMatSolve() -- not supported
which one do you want ?
From: petsc-users <petsc-users-bounces at mcs.anl.gov> on behalf of Junchao Zhang <junchao.zhang at gmail.com>
Sent: Thursday, August 4, 2022 5:21 PM
To: Barry Smith <bsmith at petsc.dev>
Cc: petsc-users at mcs.anl.gov <petsc-users at mcs.anl.gov>
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 <bsmith at petsc.dev<mailto:bsmith at petsc.dev>> 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.


On Aug 4, 2022, at 3:55 PM, Lucas Banting <bantingl at myumanitoba.ca<mailto:bantingl at myumanitoba.ca>> wrote:


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.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20220804/b5891c4b/attachment-0001.html>

More information about the petsc-users mailing list