Re: [petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-24 Thread Thanasis Boutsikakis
Thanks a lot Pierre! I managed to solve my problem for now using the (less scalable) solution that you provided. I also opened up an issue about the missing MatMPIAIJGetLocalMat() petsc4py binding here https://gitlab.com/petsc/petsc/-/issues/1443 and if no action is taken, I might take care

Re: [petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-23 Thread Pierre Jolivet
> On 23 Aug 2023, at 8:59 PM, Thanasis Boutsikakis > wrote: > > Thanks for the clarification Mark. > > I have tried such an implementation but I since I could not find the > equivalent of https://petsc.org/main/manualpages/Mat/MatMPIAIJGetLocalMat/ > for petsc4py, I used

Re: [petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-23 Thread Thanasis Boutsikakis
Thanks for the clarification Mark. I have tried such an implementation but I since I could not find the equivalent of https://petsc.org/main/manualpages/Mat/MatMPIAIJGetLocalMat/ for petsc4py, I used A.getLocalSubMatrix to do so, which returns a ‘localref’ object that I cannot then use to get

Re: [petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-23 Thread Mark Adams
On Wed, Aug 23, 2023 at 5:36 AM Thanasis Boutsikakis < thanasis.boutsika...@corintis.com> wrote: > Thanks for the suggestion Pierre. > > Yes B is duplicated by all processes. > > In this case, should B be created as a sequential sparse matrix using > COMM_SELF? > Yes, that is what Pierre said,

Re: [petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-23 Thread Thanasis Boutsikakis
Thanks for the suggestion Pierre. Yes B is duplicated by all processes. In this case, should B be created as a sequential sparse matrix using COMM_SELF? I guess if not, the multiplication of B with the output of https://petsc.org/main/manualpages/Mat/MatMPIAIJGetLocalMat/ would not go

Re: [petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-23 Thread Pierre Jolivet
 > On 23 Aug 2023, at 5:35 PM, Thanasis Boutsikakis > wrote: > Hi all, > > I am trying to multiply two Petsc matrices as C = A * B, where A is a tall > matrix and B is a relatively small matrix. > > I have taken the decision to create A as (row-)partitioned matrix and B as a >

[petsc-users] Multiplication of partitioned with non-partitioned (sparse) PETSc matrices

2023-08-23 Thread Thanasis Boutsikakis
Hi all, I am trying to multiply two Petsc matrices as C = A * B, where A is a tall matrix and B is a relatively small matrix. I have taken the decision to create A as (row-)partitioned matrix and B as a non-partitioned matrix that it is entirely shared by all procs (to avoid unnecessary