multiple rhs

Hong Zhang hzhang at mcs.anl.gov
Thu Mar 12 15:09:32 CDT 2009


>>
>> Is MatCreateMPIDense the recommended matrix type to interface w/ mumps ?
>> Does it use a sparse direct storage or allocate the full n x n matrix?
>
>
> No, MUMPS is "sparse direct" so it uses MPIAIJ.

For mpi dense matrix, you can use plapack

Hong
>
>
>>
>> df
>>
>> On Thu, 12 Mar 2009, Matthew Knepley wrote:
>>
>>  You can try using a sparse direct solver like MUMPS instead of PETSc LU.
>>>
>>>  Matt
>>>
>>> On Thu, Mar 12, 2009 at 9:17 AM, David Fuentes <fuentesdt at gmail.com>
>>> wrote:
>>>
>>>  Thanks Hong,
>>>>
>>>> The complete error message is attached. I think I just had too big
>>>> of a matrix. The matrix i'm trying to factor is 327680 x 327680
>>>>
>>>>
>>>> [0]PETSC ERROR: --------------------- Error Message
>>>> ------------------------------------
>>>> [0]PETSC ERROR: Out of memory. This could be due to allocating
>>>> [0]PETSC ERROR: too large an object or bleeding by not properly
>>>> [0]PETSC ERROR: destroying unneeded objects.
>>>> [0]PETSC ERROR: Memory allocated 2047323584 Memory used by process
>>>> 2074058752
>>>> [0]PETSC ERROR: Try running with -malloc_dump or -malloc_log for info.
>>>> [0]PETSC ERROR: Memory requested 1258466480!
>>>> [0]PETSC ERROR:
>>>> ------------------------------------------------------------------------
>>>> [0]PETSC ERROR: Petsc Release Version 3.0.0, Patch 2, Wed Jan 14 22:57:05
>>>> CST 2009
>>>> [0]PETSC ERROR: See docs/changes/index.html for recent updates.
>>>> [0]PETSC ERROR: See docs/faq.html for hints about trouble shooting.
>>>> [0]PETSC ERROR: See docs/index.html for manual pages.
>>>> [0]PETSC ERROR:
>>>> ------------------------------------------------------------------------
>>>> [0]PETSC ERROR: ./RealTimeImaging on a gcc-4.1.2 named DIPWS019 by
>>>> dfuentes
>>>> Wed Mar 11 20:30:37 2009
>>>> [0]PETSC ERROR: Libraries linked from
>>>> /usr/local/petsc/petsc-3.0.0-p2/gcc-4.1.2-mpich2-1.0.7-dbg/lib
>>>> [0]PETSC ERROR: Configure run at Sat Jan 31 06:53:09 2009
>>>> [0]PETSC ERROR: Configure options --download-f-blas-lapack=ifneeded
>>>> --with-mpi-dir=/usr/local --with-matlab=1 --with-matlab-engine=1
>>>> --with-matlab-dir=/usr/local/matlab2007a --CFLAGS=-fPIC --with-shared=0
>>>> [0]PETSC ERROR:
>>>> ------------------------------------------------------------------------
>>>> [0]PETSC ERROR: PetscMallocAlign() line 61 in src/sys/memory/mal.c
>>>> [0]PETSC ERROR: PetscTrMallocDefault() line 194 in src/sys/memory/mtr.c
>>>> [0]PETSC ERROR: PetscFreeSpaceGet() line 14 in src/mat/utils/freespace.c
>>>> [0]PETSC ERROR: MatLUFactorSymbolic_SeqAIJ() line 381 in
>>>> src/mat/impls/aij/seq/aijfact.c
>>>> [0]PETSC ERROR: MatLUFactorSymbolic() line 2289 in
>>>> src/mat/interface/matrix.c
>>>> [0]PETSC ERROR: KalmanFilter::DirectStateUpdate() line 456 in
>>>> unknowndirectory/src/KalmanFilter.cxx
>>>> [0]PETSC ERROR: GeneratePRFTmap() line 182 in
>>>> unknowndirectory/src/MainDriver.cxx
>>>> [0]PETSC ERROR: main() line 90 in unknowndirectory/src/MainDriver.cxx
>>>> application called MPI_Abort(MPI_COMM_WORLD, 55) - process 0[unset]:
>>>> aborting job:
>>>> application called MPI_Abort(MPI_COMM_WORLD, 55) - process 0
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Thu, 12 Mar 2009, Hong Zhang wrote:
>>>>
>>>>
>>>>  David,
>>>>>
>>>>> I do not see any problem with the calling sequence.
>>>>>
>>>>> The memory is determined in MatLUFactorSymbolic().
>>>>> Does your code crashes within MatLUFactorSymbolic()?
>>>>> Please send us complete error message.
>>>>>
>>>>> Hong
>>>>>
>>>>> On Wed, 11 Mar 2009, David Fuentes wrote:
>>>>>
>>>>>
>>>>>  Hello,
>>>>>>
>>>>>> I have a sparse matrix, A, with which I want to solve multiple right
>>>>>> hand
>>>>>> sides
>>>>>> with a direct solver.  Is this the correct call sequence ?
>>>>>>
>>>>>>
>>>>>>  MatGetFactor(A,MAT_SOLVER_PETSC,MAT_FACTOR_LU,&Afact);
>>>>>>  IS isrow,iscol;
>>>>>>  MatGetOrdering(A,MATORDERING_ND,&isrow,&iscol);
>>>>>>  MatLUFactorSymbolic(Afact,A,isrow,iscol,&info);
>>>>>>  MatLUFactorNumeric(Afact,A,&info);
>>>>>>  MatMatSolve(Afact,B,X);
>>>>>>
>>>>>>
>>>>>> my solve keeps running out of memory
>>>>>>
>>>>>> "[0]PETSC ERROR: Memory requested xxx!"
>>>>>>
>>>>>>
>>>>>> is this in bytes? I can't tell if the problem I'm trying to solve
>>>>>> is too large form my machine or if I just have bug in the call
>>>>>> sequence.
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> thank you,
>>>>>> David Fuentes
>>>>>>
>>>>>>
>>>>>>
>>>>>
>>>
>>> --
>>> What most experimenters take for granted before they begin their
>>> experiments
>>> is infinitely more interesting than any results to which their experiments
>>> lead.
>>> -- Norbert Wiener
>>>
>>>
>
>
> -- 
> What most experimenters take for granted before they begin their experiments
> is infinitely more interesting than any results to which their experiments
> lead.
> -- Norbert Wiener
>


More information about the petsc-users mailing list