Hi Matt, Thanks, redividing between diagonal and off-diagonal solves the malloc issue.
George On Thu, Apr 4, 2013 at 2:02 PM, Matthew Knepley <knepley at gmail.com> wrote: > On Fri, Apr 5, 2013 at 7:05 AM, George Pau <gpau at lbl.gov> wrote: > >> Hi >> >> Just a follow up on the previous email which was sent accidentally. The >> info during assembly indicates there is no mallocs (typo in previous >> email). In addition, mncon is 18 and so the total nonzero column blocks >> per row block is greater than the nonzero blocks shown. If I use a single >> processor, I do not see the above error. >> > > Then this is likely you are not dividing the nonzeros between the diagonal > and off-diagonal blocks correctly. > > Matt > > >> Thanks, >> George >> >> >> >> On Thu, Apr 4, 2013 at 1:01 PM, George Pau <gpau at lbl.gov> wrote: >> >>> Hi, >>> >>> I am trying to determine where there is malloc when I am doing a >>> MatSetValuesBlocked. The following is the error: >>> >>> [1]PETSC ERROR: --------------------- Error Message >>> ------------------------------------ >>> [1]PETSC ERROR: Argument out of range! >>> [1]PETSC ERROR: New nonzero at (69216,95036) caused a malloc! >>> >>> However, when I look at the info during the assembly, I have >>> >>> [0] MatAssemblyBegin_MPIBAIJ(): Stash has 0 entries,uses 0 mallocs. >>> [0] MatAssemblyBegin_MPIBAIJ(): Block-Stash has 0 entries, uses 0 >>> mallocs. >>> [1] MatAssemblyEnd_SeqBAIJ(): Matrix size: 381300 X 381300, block size >>> 4; storage space: 14143776 unneeded, 10259424 used >>> [1] MatAssemblyEnd_SeqBAIJ(): Number of mallocs during MatSetValues is 0 >>> [1] MatAssemblyEnd_SeqBAIJ(): Most nonzeros blocks in any row is 16 >>> [0] MatAssemblyEnd_SeqBAIJ(): Matrix size: 381300 X 381300, block size >>> 4; storage space: 13696176 unneeded, 10707024 used >>> [0] MatAssemblyEnd_SeqBAIJ(): Number of mallocs during MatSetValues is 0 >>> [0] MatAssemblyEnd_SeqBAIJ(): Most nonzeros blocks in any row is 11 >>> >>> which indicates there is mallocs. >>> >>> The following is how I set up the matrix: >>> >>> call MatCreate(PETSC_COMM_WORLD,petsc_obj%jacmat, pierr) >>> call >>> MatSetSizes(petsc_obj%jacmat,PETSC_DECIDE,PETSC_DECIDE,nel*neq,nel*neq,pierr) >>> call MatSetFromOptions(petsc_obj%jacmat,pierr) >>> call MatSetBlockSize(petsc_obj%jacmat,neq,pierr) >>> call MatSetType(petsc_obj%jacmat,MATBAIJ,pierr) >>> call >>> MatSeqBAIJSetPreallocation(petsc_obj%jacmat,neq,(mncon+1)*neq*neq,PETSC_NULL_INTEGER,pierr) >>> call MatMPIBAIJSetPreallocation(petsc_obj%jacmat, >>> neq,neq*neq,PETSC_NULL_INTEGER,mncon*neq*neq,PETSC_NULL_INTEGER,pierr) >>> call >>> MatSetOption(petsc_obj%jacmat,MAT_ROW_ORIENTED,PETSC_FALSE,pierr) !because >>> of how aval is stored. >>> >>> -- >>> George Pau >>> Earth Sciences Division >>> Lawrence Berkeley National Laboratory >>> One Cyclotron, MS 74-120 >>> Berkeley, CA 94720 >>> >>> (510) 486-7196 >>> gpau at lbl.gov >>> http://esd.lbl.gov/about/staff/georgepau/ >>> >> >> >> >> -- >> George Pau >> Earth Sciences Division >> Lawrence Berkeley National Laboratory >> One Cyclotron, MS 74-120 >> Berkeley, CA 94720 >> >> (510) 486-7196 >> gpau at lbl.gov >> http://esd.lbl.gov/about/staff/georgepau/ >> > > > > -- > 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 > -- George Pau Earth Sciences Division Lawrence Berkeley National Laboratory One Cyclotron, MS 74-120 Berkeley, CA 94720 (510) 486-7196 gpau at lbl.gov http://esd.lbl.gov/about/staff/georgepau/ -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20130404/c3249a31/attachment-0001.html>
