[petsc-users] Accessing Vector's ghost values

Matthew Knepley knepley at gmail.com
Thu Feb 23 12:24:45 CST 2012


On Thu, Feb 23, 2012 at 12:05 PM, Bojan Niceno <bojan.niceno at psi.ch> wrote:

>  Dear Matthew,
>
>
> thank you for your response.  When I use VecCreateGhost, I get the
> following:
>

It appears that you passed a bad communicator. Did you not initialize a
'comm' variable?

   Matt


> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: Caught signal number 11 SEGV: Segmentation Violation,
> probably memory access out of range
> [0]PETSC ERROR: Try option -start_in_debugger or -on_error_attach_debugger
> [0]PETSC ERROR: or see
> http://www.mcs.anl.gov/petsc/petsc-as/documentation/faq.html#valgrind[0]PETSC
> ERROR: or try http://valgrind.org on GNU/linux and Apple Mac OS X to find
> memory corruption errors
> [0]PETSC ERROR: likely location of problem given in stack below
> [0]PETSC ERROR: ---------------------  Stack Frames
> ------------------------------------
> [0]PETSC ERROR: Note: The EXACT line numbers in the stack are not
> available,
> [0]PETSC ERROR:       INSTEAD the line number of the start of the function
> [0]PETSC ERROR:       is given.
> [0]PETSC ERROR: [0] PetscCommDuplicate line 140 src/sys/objects/tagm.c
> [0]PETSC ERROR: [0] PetscHeaderCreate_Private line 30
> src/sys/objects/inherit.c
> [0]PETSC ERROR: [0] VecCreate line 32 src/vec/vec/interface/veccreate.c
> [0]PETSC ERROR: [0] VecCreateGhostWithArray line 567
> src/vec/vec/impls/mpi/pbvec.c
> [0]PETSC ERROR: [0] VecCreateGhost line 647 src/vec/vec/impls/mpi/pbvec.c
> [0]PETSC ERROR: --------------------- Error Message
> ------------------------------------
> [0]PETSC ERROR: Signal received!
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: Petsc Release Version 3.2.0, Patch 6, Wed Jan 11 09:28:45
> CST 2012
> [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: ./PSI-Flow on a arch-linu named lccfd06 by niceno Thu Feb
> 23 19:02:45 2012
> [0]PETSC ERROR: Libraries linked from
> /homecfd/niceno/PETSc-3.2-p6/arch-linux2-c-debug/lib
> [0]PETSC ERROR: Configure run at Fri Feb 10 10:24:13 2012
> [0]PETSC ERROR: Configure options
> [0]PETSC ERROR:
> ------------------------------------------------------------------------
> [0]PETSC ERROR: User provided function() line 0 in unknown directory
> unknown file
>
> I don't understand what could be causing it.  I took very good care to
> match the global numbers of ghost cells when calling VecCreateGhost
>
>
>     Kind regards,
>
>
>     Bojan
>
>
> On 2/23/2012 5:53 PM, Matthew Knepley wrote:
>
> On Thu, Feb 23, 2012 at 10:46 AM, Bojan Niceno <bojan.niceno at psi.ch>wrote:
>
>> Hi all,
>>
>> I've never used a mailing list before, so I hope this message will reach
>> PETSc users and experts and someone might be willing to help me.  I am also
>> novice in PETSc.
>>
>> I have developed an unstructured finite volume solver on top of PETSc
>> libraries.  In sequential, it works like a charm.  For the parallel
>> version, I do domain decomposition externally with Metis, and work out
>> local and global numberings, as well as communication patterns between
>> processor.  (The latter don't seem to be needed for PETSc, though.)  When I
>> run my program in parallel, it also works, but I miss values in vectors'
>> ghost points.
>>
>> I create vectors with command: VecCreate(PETSC_COMM_WORLD, &x);
>>
>> Is it possible to get the ghost values if a vector is created like this?
>>
>
>  I do not understand this question. By definition, "ghost values" are
> those not stored in the global vector.
>
>
>> I have tried to use VecCreateGhost, but for some reason which is beyond
>> my comprehension, PETSc goes berserk when it reaches the command:
>> VecCreateGhost(PETSC_COMM_WORLD, n, PETSC_DECIDE, nghost, ifrom, &x)
>>
>
>  I think you can understand that "berserk" tells me absolutely nothing.
> Error message? Stack trace? Did you try to run an
> example which uses VecGhost?
>
>    Thanks,
>
>       Matt
>
>
>> Can anyone help me?  Either how to reach ghost values for vector created
>> by VecCreate, or how to use VecCreateGhost properly?
>>
>>
>>   Kind regards,
>>
>>   Bojan
>>
>
>
>
>  --
> 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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120223/c6e1dc0c/attachment-0001.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 6515 bytes
Desc: not available
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20120223/c6e1dc0c/attachment-0001.png>


More information about the petsc-users mailing list