It works! Great, Matt. I guess there is no other way to know all these small issues but to get all possible errors? :)
Jed, Matt, thank you a lot! On 07.03.2011 15:35, Matthew Knepley wrote: > On Mon, Mar 7, 2011 at 8:04 AM, Alexander Grayver > <agrayver at gfz-potsdam.de <mailto:agrayver at gfz-potsdam.de>> wrote: > > Jed, but why do I get in line 3003 in src/mat/impls/aij/seq/aij.c > at all? As far as understand, if I don't pass nnz (NULL in C/C++ > or PETSC_NULL in fortran) I have to avoid this loop in aij.c code. > > > This is the problem. Fortran does not allow this kind of flexible > checking, so there are different kinds of "NULL"s. You > need to pass PETSC_NULL_INTEGER for nnz. > > Matt > > I don't have much experience with valgrind. Could you provide me > with right parameters to run my code under valgrind? > Thanks a lot for your help. > > > On 07.03.2011 14:59, Jed Brown wrote: >> >> Looks like a memory error. Best bet is to run in Valgrind. >> >>> On Mar 7, 2011 5:52 AM, "Alexander Grayver" >>> <agrayver at gfz-potsdam.de <mailto:agrayver at gfz-potsdam.de>> wrote: >>> >>> Hi Jed, >>> >>> It's getting even stranger. >>> >>> When I run this code under linux I've got error: >>> >>> [0]PETSC ERROR: --------------------- Error Message >>> ------------------------------------ >>> [0]PETSC ERROR: Argument out of range! >>> [0]PETSC ERROR: nnz cannot be greater than row length: local row >>> 98 value 1455203639 rowlength 343! >>> [0]PETSC ERROR: >>> ------------------------------------------------------------------------ >>> [0]PETSC ERROR: Petsc Release Version 3.1.0, Patch 7, Mon Dec 20 >>> 14:26:37 CST 2010 >>> [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: >>> /home/mt/agrayver/mt-soft/multiem/INV3D/_tiger/em_model on a >>> openmpi-i named glic by agrayver Mon Mar 7 14:49:43 2011 >>> [0]PETSC ERROR: Libraries linked from >>> >>> /panfs/panfs.gfz-hpcc.cluster/home/mt/agrayver/lib/petsc-3.1-p7/openmpi-intel-complex-debug/lib >>> [0]PETSC ERROR: Configure run at Fri Mar 4 12:43:58 2011 >>> [0]PETSC ERROR: Configure options >>> --with-petsc-arch=openmpi-intel-complex-debug >>> --with-mpi-dir=/opt/mpi/intel/openmpi-1.4.2 >>> --with-scalar-type=complex >>> --with-blas-lapack-dir=/opt/intel/Compiler/11.1/072/mkl/lib/em64t >>> --with-precision=double >>> --with-x=0 >>> [0]PETSC ERROR: >>> ------------------------------------------------------------------------ >>> [0]PETSC ERROR: MatSeqAIJSetPreallocation_SeqAIJ() line 3003 in >>> src/mat/impls/aij/seq/aij.c >>> [0]PETSC ERROR: MatCreateSeqAIJ() line 2906 in >>> src/mat/impls/aij/seq/aij.c >>> >>> >>> Then I traced it under debugger both on Windows and Linux and >>> realized that it doesn't crash under Windows only by luck. >>> >>> The call stack if the folowing: >>> [C] MatSeqAIJSetPreallocation_SeqAIJ, FP=7fffb4513880 >>> [C] MatCreateSeqAIJ, FP=7fffb4513900 >>> [C] matcreateseqaij_, FP=7fffb4513960 >>> [F90] MODELING_MOD`modeling, FP=7fffb4517740 >>> >>> As far as I understand after debugging the problem is that nnz >>> in MatSeqAIJSetPreallocation isn't 0 and I go through this code: >>> if (nnz) { >>> for (i=0; i<B->rmap->n; i++) { >>> if (nnz[i] < 0) SETERRQ2(PETSC_ERR_ARG_OUTOFRANGE,"nnz >>> cannot be less than 0: local row %d value %d",i,nnz[i]); >>> if (nnz[i] > B->cmap->n) >>> SETERRQ3(PETSC_ERR_ARG_OUTOFRANGE,"nnz cannot be greater than >>> row length: local row %d value %d rowlength >>> %d",i,nnz[i],B->cmap->n); >>> } >>> } >>> >>> But why is nnz nonzero? I passed PETSC_NULL. It seems like >>> macros CHKFORTRANNULLINTEGER in matcreateseqaij_ should set it >>> to zero, but it doesn't. >>> >>> >>> Thanks. >>> >>> On 06.03.2011 16:49, Jed Brown wrote: >>> >>> >>> > >>> > On Sun, Mar 6, 2011 at 07:39, Alexander Grayver >>> <agrayver at gfz-potsdam.de <mailto:agrayver at gfz-potsdam.de>> wrote: >>> >> >>> >> Hello, >>> >... >>> > > > > > -- > 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 -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20110307/63a2174b/attachment.htm>
