Invalid argument! - not a permutation!

Barry Smith bsmith at mcs.anl.gov
Thu Oct 25 14:26:54 CDT 2007



On Thu, 25 Oct 2007, Tim Stitt wrote:

> OK...that is useful thanks.
> 
> If you don't mind just one more question...I notice that the
> MatLUFactorSymbolic() routine now executes with one processor but complains
> when I run > 2 processors. The actual error message is:
> 
> [1]PETSC ERROR: No support for this operation for this object type!
> [1]PETSC ERROR: Matrix type mpiaij  symbolic LU!
> 
> Is this because the default LU factorisation routine isn't parallel...

  Yes

> I just
> assumed parallel superlu would be picked up automatically (it is compiled into
> my PETSc build) ?

  No, in the current model you have to set the matrix type to MATSUPERLU_DIST
to get it. Or MATAIJMUMPS for mumps etc.

  Hong has suggested an alternative (better?) model, but .....

  Barry

> 
> Tim.
> 
> Barry Smith wrote:
> >   I have added this information to the error message that gets printed.
> > 
> >    Barry
> > 
> > 
> > On Thu, 25 Oct 2007, Matthew Knepley wrote:
> > 
> >   
> > > I think you need to tell use that the IS is a permutation:
> > > 
> > > http://www-unix.mcs.anl.gov/petsc/petsc-as/snapshots/petsc-current/docs/manualpages/IS/ISSetPermutation.html
> > > 
> > >    Matt
> > > 
> > > On 10/25/07, Tim Stitt <timothy.stitt at ichec.ie> wrote:
> > >     
> > > > Hi all,
> > > > 
> > > > Following on from some help I got a few days ago with respect to
> > > > MatLUFactorSymbolic() usage in Fortran...I think I now have all the
> > > > parts in place but keep getting the following runtime error upon
> > > > execution:
> > > > 
> > > > [0]PETSC ERROR: --------------------- Error Message
> > > > ------------------------------------
> > > > [0]PETSC ERROR: Invalid argument!
> > > > [0]PETSC ERROR: not a permutation!
> > > > ...
> > > > [0]PETSC ERROR:
> > > > ------------------------------------------------------------------------
> > > > [0]PETSC ERROR: ISInvertPermutation() line 183 in
> > > > src/vec/is/interface/index.c
> > > > [0]PETSC ERROR: MatLUFactorSymbolic_SeqAIJ() line 276 in
> > > > src/mat/impls/aij/seq/aijfact.c
> > > > [0]PETSC ERROR: MatLUFactorSymbolic() line 2178 in
> > > > src/mat/interface/matrix.c
> > > > [localhost.localdomain:24730] MPI_ABORT invoked on rank 0 in
> > > > communicator MPI_COMM_WORLD with errorcode 62
> > > > 
> > > > Here is the portion of  the offending code (I think):
> > > > 
> > > >   call MatAssemblyBegin(A,MAT_FINAL_ASSEMBLY,error);CHKERRQ(error)
> > > >   call MatAssemblyEnd(A,MAT_FINAL_ASSEMBLY,error);CHKERRQ(error)
> > > >   call ISCreateGeneral(PETSC_COMM_WORLD,order,columnIndices,
> > > > indexSet,error);CHKERRQ(error)
> > > >   call MatFactorInfoInitialize(info,error);CHKERRQ(error)
> > > >   call
> > > > MatLUFactorSymbolic(A,indexSet,indexSet,info,factorMat,error);CHKERRQ(error)
> > > > 
> > > > order - number of rows/columns in square matrix A
> > > > columnIndices - 1D array containing values 0-->order-1
> > > > 
> > > > All types are set correctly as far as I can tell.
> > > > 
> > > > Can anyone suggest why the execution falls over during the
> > > > MatLUFactorSymbolic() call?
> > > > 
> > > > Thanks again,
> > > > 
> > > > Tim.
> > > > 
> > > > --
> > > > Dr. Timothy Stitt <timothy_dot_stitt_at_ichec.ie>
> > > > HPC Application Consultant - ICHEC (www.ichec.ie)
> > > > 
> > > > Dublin Institute for Advanced Studies
> > > > 5 Merrion Square - Dublin 2 - Ireland
> > > > 
> > > > +353-1-6621333 (tel) / +353-1-6621477 (fax)
> > > > 
> > > > 
> > > >       
> > > 
> > >     
> > 
> >   
> 
> 
> 




More information about the petsc-users mailing list