On Tue, Jun 3, 2008 at 6:53 AM, Lars Rindorf
<Lars.Rindorf at teknologisk.dk> wrote:
> Hi Matthew
>
> I've a couple of questions regarding umfpack and petsc. I have a version of 
> the program that I use. This program uses complex scalars and umfpack in 
> petsc, but when I try myself to compile petsc with umfpack and complex 
> numbers, petsc gives an error saying that umfpack and complex scalars is not 
> yet implemented. Is that correct? Is there a version of petsc that allows 
> complex scalars and umfpack?

This question came up before on this list. We do not support complex
with UMFPACK. I cannot remember the reason, but there was a problem
with the complex extension.

> Secondly, I'm still having problems with umfpack running out of memory 
> (umfpack error -1). I have played around with petsc memory allocation in 
> MatSetAIJSetPreallocation and with umfpack Control[UMFPACK_ALLOC_INIT] and it 
> makes no difference. I have try it also with both Intel mkl blas and petsc 
> default blas, and that made no difference either. Do you have any ideas where 
> to look for the error?

Are you trying to go beyond 32-bits? If so, you would need an OS that
will allocate more than 2G to a process, like 64-bit Linux.

  Matt

> The largest succesful simulation gives the following petsc output:
> KSP Object:
>  type: preonly
>  maximum iterations=10000, initial guess is zero
>  tolerances:  relative=1e-05, absolute=1e-50, divergence=10000
>  left preconditioning
> PC Object:
>  type: lu
>    LU: out-of-place factorization
>      matrix ordering: nd
>    LU: tolerance for zero pivot 1e-12
>    LU: factor fill ratio needed 0
>         Factored matrix follows
>        Matrix Object:
>          type=umfpack, rows=118636, cols=118636
>          total: nonzeros=0, allocated nonzeros=118636
>            not using I-node routines
>            UMFPACK run parameters:
>              Control[UMFPACK_PRL]: 1
>              Control[UMFPACK_STRATEGY]: 0
>              Control[UMFPACK_DENSE_COL]: 0.2
>              Control[UMFPACK_DENSE_ROW]: 0.2
>              Control[UMFPACK_AMD_DENSE]: 10
>              Control[UMFPACK_BLOCK_SIZE]: 32
>              Control[UMFPACK_2BY2_TOLERANCE]: 0.01
>              Control[UMFPACK_FIXQ]: 0
>              Control[UMFPACK_AGGRESSIVE]: 1
>              Control[UMFPACK_PIVOT_TOLERANCE]: 0.1
>              Control[UMFPACK_SYM_PIVOT_TOLERANCE]: 0.001
>              Control[UMFPACK_SCALE]: 1
>              Control[UMFPACK_ALLOC_INIT]: 0.7
>              Control[UMFPACK_DROPTOL]: 0
>              Control[UMFPACK_IRSTEP]: 0
>              UMFPACK default matrix ordering is used (not the PETSc matrix 
> ordering)
>  linear system matrix = precond matrix:
>  Matrix Object:
>    type=umfpack, rows=118636, cols=118636
>    total: nonzeros=4377120, allocated nonzeros=29659000
>      using I-node routines: found 105980 nodes, limit used is 5
>
> KR, Lars
>
> -----Oprindelig meddelelse-----
> Fra: owner-petsc-users at mcs.anl.gov [mailto:owner-petsc-users at 
> mcs.anl.gov] P? vegne af Matthew Knepley
> Sendt: 2. juni 2008 16:33
> Til: petsc-users at mcs.anl.gov
> Emne: Re: Error codes from external packages
>
> On Mon, Jun 2, 2008 at 9:22 AM, Lars Rindorf <Lars.Rindorf at teknologisk.dk> 
> wrote:
>> Hi Matthew
>>
>> I have included the -mat_umfpack_prl parameter, but it does not make any 
>> difference. I have checked the spelling with petsc manual. When umfpack 
>> crashes it (umfpack_di_numeric) returns an error code. I want to access that 
>> code.
>
> Ah, I was checking solve(), not factor(). This is an oversight in the code. I 
> am fixing it in the dev version. We will have a release fairly soon, but you 
> can always get dev for these kinds of bugs fixes quickly.
>
>   Matt
>
>> Here is what petsc returns (with/without -mat_umfpack_prl option):
>> [lhr at localhost notch_patch]$ getdp patch_notch.pro -msh
>> patch_notch_29000.msh -pre res_static -cal  -ksp_type preonly -pc_type lu 
>> -mat_type umfpack -mat_umfpack_prl P r e - P r o c e s s i n g . . .
>> E n d   P r e - P r o c e s s i n g
>> P r o c e s s i n g . . .
>> Operation : Generate[A]
>> Info      : Setting System {A,b} to zero
>> Resources : cpu 6.41402 s
>> Operation : Solve[A]
>> PETSc     : N: 136188
>> [0]PETSC ERROR: --------------------- Error Message
>> ------------------------------------
>> [0]PETSC ERROR: Error in external library!
>> [0]PETSC ERROR: umfpack_di_numeric failed!
>> [0]PETSC ERROR:
>> ----------------------------------------------------------------------
>> -- [0]PETSC ERROR: Petsc Release Version 2.3.3, Patch 13, Thu May 15
>> 17:29:26 CDT 2008 HG revision:
>> 4466c6289a0922df26e20626fd4a0b4dd03c8124
>> [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: patch_notch.pro on a linux-gnu named
>> localhost.localdomain by lhr Mon Jun  2 16:03:50 2008 [0]PETSC ERROR:
>> Libraries linked from
>> /home/lhr/Desktop/getdp/petsc/petsc-2.3.3-p13/lib/linux-gnu-c-debug
>> [0]PETSC ERROR: Configure run at Mon Jun  2 15:58:42 2008 [0]PETSC
>> ERROR: Configure options --with-cc=gcc --with-fc=g77
>> --with-blas-lapack-dir=/opt/intel/mkl/10.0.1.014/lib/em64t/
>> --download-mpich=ifneeded --download-umfpack=ifneeded --with-shared=0
>> [0]PETSC ERROR:
>> ----------------------------------------------------------------------
>> -- [0]PETSC ERROR: MatLUFactorNumeric_UMFPACK() line 129 in
>> src/mat/impls/aij/seq/umfpack/umfpack.c
>> [0]PETSC ERROR: MatLUFactorNumeric() line 2227 in
>> src/mat/interface/matrix.c [0]PETSC ERROR: PCSetUp_LU() line 280 in
>> src/ksp/pc/impls/factor/lu/lu.c [0]PETSC ERROR: PCSetUp() line 787 in
>> src/ksp/pc/interface/precon.c [0]PETSC ERROR: KSPSetUp() line 234 in
>> src/ksp/ksp/interface/itfunc.c [0]PETSC ERROR: KSPSolve() line 347 in
>> src/ksp/ksp/interface/itfunc.c [0]PETSC ERROR: User provided
>> function() line 1472 in unknowndirectory/LinAlg_PETSC.c
>> [unset]: aborting job:
>> application called MPI_Abort(MPI_COMM_WORLD, 76) - process 0
>>
>> KR, Lars
>>
>>
>> -----Oprindelig meddelelse-----
>> Fra: owner-petsc-users at mcs.anl.gov
>> [mailto:owner-petsc-users at mcs.anl.gov] P? vegne af Matthew Knepley
>> Sendt: 2. juni 2008 15:07
>> Til: petsc-users at mcs.anl.gov
>> Emne: Re: Error codes from external packages
>>
>> On Mon, Jun 2, 2008 at 7:17 AM, Lars Rindorf <Lars.Rindorf at 
>> teknologisk.dk> wrote:
>>> Dear all
>>>
>>> If I want to know the error codes of an external package that
>>> crashes, then what can I do?
>>
>> We call
>>
>>  umfpack_zl_report_status()
>>
>> with the UMFPACK status code in the event of a failure. Printing for this is 
>> controlled by the -mat_umfpack_prl option I believe.
>>
>>   Matt
>>
>>> The problem arises with umfpack when the size of the matrix is more
>>> than 118000x118000, corresponding to 2.4 Gb memory consumption. It
>>> simply returns "umfpack_di_numeric" (factorization of a real matrix) failed.
>>> Has anybody else experienced this?
>>>
>>> KR, Lars
>>>
>>>
>>
>>
>>
>> --
>> 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
>
>



-- 
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


Reply via email to