The right call in petsc4py is
P.setSizes(((nrowsLoc,PETSc.DECIDE),(ncolsLoc,PETSc.DECIDE)),1) https://petsc.org/main/petsc4py/reference/petsc4py.PETSc.Mat.html#petsc4py.PETSc.Mat.setSizes Il giorno mar 6 giu 2023 alle ore 13:05 Blaise Bourdin <[email protected]> ha scritto: > Hi, > > Does anybody understand why MatSetSizes seem to behave differently in C > and python? > > I would expect the attached examples to be strictly equivalent but the > python version fails in parallel. It may be that the python interface is > different, but I don’t see any mention of this in the python docs. > > Regards, > Blaise > > > SiBookPro:test (master)$ mpirun -np 2 python3 testL2G2.py nrowsLoc: 10 > ncolsLoc: 20 > Traceback (most recent call last): > File "/Users/blaise/Development/ccG_CR/test/testL2G2.py", line 20, in > <module> > nrowsLoc: 11 ncolsLoc: 21 > Traceback (most recent call last): > File "/Users/blaise/Development/ccG_CR/test/testL2G2.py", line 20, in > <module> > sys.exit(main()) > sys.exit(main()) > ^^^^^^ > File "/Users/blaise/Development/ccG_CR/test/testL2G2.py", line 12, in > main > ^^^^^^ > File "/Users/blaise/Development/ccG_CR/test/testL2G2.py", line 12, in > main > P.setSizes([nrowsLoc,ncolsLoc],1) > P.setSizes([nrowsLoc,ncolsLoc],1) > File "petsc4py/PETSc/Mat.pyx", line 323, in petsc4py.PETSc.Mat.setSizes > petsc4py.PETSc.Error: error code 62 > [1] MatSetSizes() at /opt/HPC/petsc-release/src/mat/utils/gcreate.c:161 > [1] Invalid argument > [1] Int value must be same on all processes, argument # 4 > File "petsc4py/PETSc/Mat.pyx", line 323, in petsc4py.PETSc.Mat.setSizes > petsc4py.PETSc.Error: error code 62 > [0] MatSetSizes() at /opt/HPC/petsc-release/src/mat/utils/gcreate.c:161 > [0] Invalid argument > [0] Int value must be same on all processes, argument # 4 > > > > > — > Canada Research Chair in Mathematical and Computational Aspects of Solid > Mechanics (Tier 1) > Professor, Department of Mathematics & Statistics > Hamilton Hall room 409A, McMaster University > 1280 Main Street West, Hamilton, Ontario L8S 4K1, Canada > https://www.math.mcmaster.ca/bourdin | +1 (905) 525 9140 ext. 27243 > > -- Stefano
