<div dir="ltr"><div dir="ltr">On Fri, Jan 31, 2020 at 4:19 AM Jeremy Theler <<a href="mailto:jeremy@seamplex.com">jeremy@seamplex.com</a>> wrote:<br></div><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
On Thu, 2020-01-30 at 18:05 -0500, Matthew Knepley wrote:<br>
> On Thu, Jan 30, 2020 at 6:04 PM Jeremy Theler <<a href="mailto:jeremy@seamplex.com" target="_blank">jeremy@seamplex.com</a>><br>
> wrote:<br>
> > On Thu, 2020-01-30 at 21:10 +0000, Smith, Barry F. wrote:<br>
> > <br>
> > >   MatGetSubMatrix() and then do the product on the sub matrix<br>
> > then<br>
> > > VecSum<br>
> > > <br>
> > <br>
> > Ok, I have it working in a single-processor and throws the expected<br>
> > value. Yet I have a segfault in parallel when I ask for the IS<br>
> > corresponding to the rows. When I call this instruction in parallel<br>
> > I<br>
> > get a segfault (I can post the full debug output if needed):<br>
> > <br>
> > ISCreateStride(PETSC_COMM_WORLD, size_local, first_row, 1,<br>
> > &set_cols);<br>
> > <br>
> > I tried also<br>
> > <br>
> > ISCreateStride(PETSC_COMM_WORLD, size_global, 0, 1, &set_cols));<br>
> > <br>
> > but it also fails with the same segfault.<br>
> > <br>
> > What am I getting wrong?<br>
> <br>
> Show the entire error, including stack.<br>
> <br>
<br>
I run in two processes with start_on_debugger. Main terminal says<br>
<br>
malloc(): corrupted top size<br></blockquote><div><br></div><div>The arguments look fine. I would run in valgrind, since it seems like you have memory corruption somewhere else in the code.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
and the gdb output with the stack trace is<br>
<br>
<br>
Attaching to program: /home/gtheler/codigos/wasora-suite/fino/examples/fino, process 31192<br>
[New LWP 31196]<br>
[New LWP 31198]<br>
[Thread debugging using libthread_db enabled]<br>
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".<br>
0x00007fd236019720 in __GI___nanosleep (<br>
    requested_time=requested_time@entry=0x7ffdf9838190, <br>
    remaining=remaining@entry=0x7ffdf9838190)<br>
    at ../sysdeps/unix/sysv/linux/nanosleep.c:28<br>
28      ../sysdeps/unix/sysv/linux/nanosleep.c: No such file or directory.<br>
(gdb) c<br>
Continuing.<br>
[New Thread 0x7fd233034700 (LWP 31212)]<br>
Thread 1 "fino" received signal SIGABRT, Aborted.<br>
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50<br>
50      ../sysdeps/unix/sysv/linux/raise.c: No such file or directory.<br>
(gdb) where<br>
#0  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:50<br>
#1  0x00007fd235f75535 in __GI_abort () at abort.c:79<br>
#2  0x00007fd235fcc508 in __libc_message (action=action@entry=do_abort, <br>
    fmt=fmt@entry=0x7fd2360d728d "%s\n") at ../sysdeps/posix/libc_fatal.c:181<br>
#3  0x00007fd235fd2c1a in malloc_printerr (<br>
    str=str@entry=0x7fd2360d5518 "malloc(): corrupted top size")<br>
    at malloc.c:5341<br>
#4  0x00007fd235fd620d in _int_malloc (<br>
    av=av@entry=0x7fd23610ec40 <main_arena>, bytes=bytes@entry=2372)<br>
    at malloc.c:4099<br>
#5  0x00007fd235fd756a in __GI___libc_malloc (bytes=2372) at malloc.c:3057<br>
#6  0x00007fd2377dd42d in PetscMallocAlign (mem=2372, clear=PETSC_TRUE, <br>
    line=37, func=0x7fd239450408 <__func__.14861> "ISCreate", <br>
    file=0x7fd239450298 "/home/gtheler/libs/petsc-3.12.3/src/vec/is/is/interface/isreg.c", result=0x7ffdf983c618)<br>
    at /home/gtheler/libs/petsc-3.12.3/src/sys/memory/mal.c:49<br>
#7  0x00007fd2377e0875 in PetscTrMallocDefault (a=768, clear=PETSC_TRUE, <br>
    lineno=37, function=0x7fd239450408 <__func__.14861> "ISCreate", <br>
    filename=0x7fd239450298 "/home/gtheler/libs/petsc-3.12.3/src/vec/is/is/interface/isreg.c", result=0x7ffdf983c8b0)<br>
    at /home/gtheler/libs/petsc-3.12.3/src/sys/memory/mtr.c:164<br>
#8  0x00007fd2377dedf0 in PetscMallocA (n=1, clear=PETSC_TRUE, lineno=37, <br>
    function=0x7fd239450408 <__func__.14861> "ISCreate", <br>
--Type <RET> for more, q to quit, c to continue without paging--<br>
    filename=0x7fd239450298 "/home/gtheler/libs/petsc-3.12.3/src/vec/is/is/interface/isreg.c", bytes0=768, ptr0=0x7ffdf983c8b0)<br>
    at /home/gtheler/libs/petsc-3.12.3/src/sys/memory/mal.c:422<br>
#9  0x00007fd237c67760 in ISCreate (comm=0x556dbe8c9ee0 <ompi_mpi_comm_world>, <br>
    is=0x7ffdf983c8b0)<br>
    at /home/gtheler/libs/petsc-3.12.3/src/vec/is/is/interface/isreg.c:37<br>
#10 0x00007fd237c4589a in ISCreateStride (<br>
    comm=0x556dbe8c9ee0 <ompi_mpi_comm_world>, n=70188, first=70191, step=1, <br>
    is=0x7ffdf983c8b0)<br>
#11 0x0000556dbe82aab4 in fino_instruction_reaction (arg=0x556dbf8b4460)<br>
    at ./reactions.c:72<br>
#12 0x0000556dbe8a8aa2 in wasora_step (whence=0) at ../wasora/src/wasora.c:406<br>
#13 0x0000556dbe8a81b3 in wasora_standard_run () at ../wasora/src/wasora.c:206<br>
#14 0x0000556dbe8a80a5 in main (argc=3, argv=0x7ffdf983cbd8)<br>
    at ../wasora/src/wasora.c:166<br>
(gdb) <br>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div><div><br></div><div><a href="http://www.cse.buffalo.edu/~knepley/" target="_blank">https://www.cse.buffalo.edu/~knepley/</a><br></div></div></div></div></div></div></div></div>