<br><br>On Monday, January 18, 2016, Hong <<a href="mailto:hzhang@mcs.anl.gov">hzhang@mcs.anl.gov</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">Sherry,<div>Replacing <span style="font-size:12.8px">memory.c:108 </span></div><div><span style="font-size:12.8px">buf = (void *) malloc(size);</span><br></div><div><span style="font-size:12.8px">to</span></div><div><span style="font-size:12.8px">buf = (void *) calloc(size,sizeof(size_t));</span><br></div><div><span style="font-size:12.8px"><br></span></div><div></div></div></blockquote><div><br></div><div>This increases memory consumption by a factor of <span></span>sizeof(size_t).</div><div><br></div><div>malloc(n) should be changed to calloc(n,1).</div><div><br></div><div><a href="http://pubs.opengroup.org/onlinepubs/009695399/functions/calloc.html">http://pubs.opengroup.org/onlinepubs/009695399/functions/calloc.html</a><br></div><div><br></div><div>Jeff</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div></div><div><span style="font-size:12.8px">valgrind becomes clean:</span></div><div><div><span style="font-size:12.8px">hzhang@es /scratch/hzhang/petsc/src/ksp/ksp/examples/tutorials (master)</span></div><div><span style="font-size:12.8px">$ mpiexec -n 2 valgrind ./ex2 -pc_type lu -pc_factor_mat_solver_package superlu_dist</span></div><div><span style="font-size:12.8px">==1361== Memcheck, a memory error detector</span></div><div><span style="font-size:12.8px">==1361== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.</span></div><div><span style="font-size:12.8px">==1361== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info</span></div><div><span style="font-size:12.8px">==1361== Command: ./ex2 -pc_type lu -pc_factor_mat_solver_package superlu_dist</span></div><div><span style="font-size:12.8px">==1361==</span></div><div><span style="font-size:12.8px">==1362== Memcheck, a memory error detector</span></div><div><span style="font-size:12.8px">==1362== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al.</span></div><div><span style="font-size:12.8px">==1362== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info</span></div><div><span style="font-size:12.8px">==1362== Command: ./ex2 -pc_type lu -pc_factor_mat_solver_package superlu_dist</span></div><div><span style="font-size:12.8px">==1362==</span></div><div><span style="font-size:12.8px">Norm of error 1.01754e-15 iterations 1</span></div><div><span style="font-size:12.8px">==1361==</span></div><div><span style="font-size:12.8px">==1361== HEAP SUMMARY:</span></div><div><span style="font-size:12.8px">==1361==     in use at exit: 0 bytes in 0 blocks</span></div><div><span style="font-size:12.8px">==1361==   total heap usage: 2,956 allocs, 2,515 frees, 26,737,446 bytes allocated</span></div><div><span style="font-size:12.8px">==1361==</span></div><div><span style="font-size:12.8px">==1361== All heap blocks were freed -- no leaks are possible</span></div><div><span style="font-size:12.8px">==1361==</span></div><div><span style="font-size:12.8px">==1361== For counts of detected and suppressed errors, rerun with: -v</span></div><div><span style="font-size:12.8px">==1361== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 2 from 2)</span></div><div><span style="font-size:12.8px">==1362==</span></div><div><span style="font-size:12.8px">==1362== HEAP SUMMARY:</span></div><div><span style="font-size:12.8px">==1362==     in use at exit: 0 bytes in 0 blocks</span></div><div><span style="font-size:12.8px">==1362==   total heap usage: 2,955 allocs, 2,444 frees, 27,160,867 bytes allocated</span></div><div><span style="font-size:12.8px">==1362==</span></div><div><span style="font-size:12.8px">==1362== All heap blocks were freed -- no leaks are possible</span></div><div><span style="font-size:12.8px">==1362==</span></div><div><span style="font-size:12.8px">==1362== For counts of detected and suppressed errors, rerun with: -v</span></div><div><span style="font-size:12.8px">==1362== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 2 from 2)</span></div></div><div><span style="font-size:12.8px"><br></span></div><div><span style="font-size:12.8px">Hong</span></div><div><span style="font-size:12.8px"><br></span></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Jan 17, 2016 at 2:42 PM, Barry Smith <span dir="ltr"><<a href="javascript:_e(%7B%7D,'cvml','bsmith@mcs.anl.gov');" target="_blank">bsmith@mcs.anl.gov</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
  Sherry,<br>
<br>
   I may be misunderstanding the code but when I run a small case with two processes I get<br>
<br>
$ /sandbox/bsmith/petsc/bin/petscmpiexec -valgrind -n 2 ./ex2 -pc_type lu -pc_factor_mat_solver_package superlu_dist<br>
==3101== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
==3101==    at 0xA84DD4B: writev (writev.c:51)<br>
==3101==    by 0xA1FB596: MPL_large_writev (mplsock.c:32)<br>
==3101==    by 0xA1EADC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
==3101==    by 0xA1A59CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
==3101==    by 0xA175948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
==3101==    by 0xA18A574: MPID_Isend (mpid_isend.c:138)<br>
==3101==    by 0xA062ED8: PMPI_Isend (isend.c:125)<br>
==3101==    by 0x6350C2A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
==3101==    by 0x634B79F: pdgstrf (pdgstrf.c:981)<br>
==3101==    by 0x63322D8: pdgssvx (pdgssvx.c:1109)<br>
==3101==    by 0x580294C: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
==3101==    by 0x58313C2: MatLUFactorNumeric (matrix.c:2946)<br>
==3101==    by 0x5DA1A5E: PCSetUp_LU (lu.c:164)<br>
==3101==    by 0x5C5D136: PCSetUp (precon.c:984)<br>
==3101==    by 0x5E790D7: KSPSetUp (itfunc.c:390)<br>
==3101==    by 0x5E7AD81: KSPSolve (itfunc.c:594)<br>
==3101==    by 0x40290D: main (ex2.c:197)<br>
==3101==  Address 0xc01e3c8 is 8 bytes inside a block of size 131,072 alloc'd<br>
==3101==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
==3101==    by 0x636088D: superlu_malloc_dist (memory.c:108)<br>
==3101==    by 0x6330236: doubleMalloc_dist (dmemory_dist.c:145)<br>
==3101==    by 0x634ADFE: pdgstrf (pdgstrf.c:737)<br>
==3101==    by 0x63322D8: pdgssvx (pdgssvx.c:1109)<br>
==3101==    by 0x580294C: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
==3101==    by 0x58313C2: MatLUFactorNumeric (matrix.c:2946)<br>
==3101==    by 0x5DA1A5E: PCSetUp_LU (lu.c:164)<br>
==3101==    by 0x5C5D136: PCSetUp (precon.c:984)<br>
==3101==    by 0x5E790D7: KSPSetUp (itfunc.c:390)<br>
==3101==    by 0x5E7AD81: KSPSolve (itfunc.c:594)<br>
==3101==    by 0x40290D: main (ex2.c:197)<br>
==3101==  Uninitialised value was created by a heap allocation<br>
==3101==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
==3101==    by 0x636088D: superlu_malloc_dist (memory.c:108)<br>
==3101==    by 0x6330236: doubleMalloc_dist (dmemory_dist.c:145)<br>
==3101==    by 0x634ADFE: pdgstrf (pdgstrf.c:737)<br>
==3101==    by 0x63322D8: pdgssvx (pdgssvx.c:1109)<br>
==3101==    by 0x580294C: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
==3101==    by 0x58313C2: MatLUFactorNumeric (matrix.c:2946)<br>
==3101==    by 0x5DA1A5E: PCSetUp_LU (lu.c:164)<br>
==3101==    by 0x5C5D136: PCSetUp (precon.c:984)<br>
==3101==    by 0x5E790D7: KSPSetUp (itfunc.c:390)<br>
==3101==    by 0x5E7AD81: KSPSolve (itfunc.c:594)<br>
==3101==    by 0x40290D: main (ex2.c:197)<br>
==3101==<br>
==3102== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
==3102==    at 0xA84DD4B: writev (writev.c:51)<br>
==3102==    by 0xA1FB596: MPL_large_writev (mplsock.c:32)<br>
==3102==    by 0xA1EADC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
==3102==    by 0xA1A59CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
==3102==    by 0xA175948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
==3102==    by 0xA18A574: MPID_Isend (mpid_isend.c:138)<br>
==3102==    by 0xA062ED8: PMPI_Isend (isend.c:125)<br>
==3102==    by 0x6350C2A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
==3102==    by 0x634BD97: pdgstrf (pdgstrf.c:1084)<br>
==3102==    by 0x63322D8: pdgssvx (pdgssvx.c:1109)<br>
==3102==    by 0x580294C: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
==3102==    by 0x58313C2: MatLUFactorNumeric (matrix.c:2946)<br>
==3102==    by 0x5DA1A5E: PCSetUp_LU (lu.c:164)<br>
==3102==    by 0x5C5D136: PCSetUp (precon.c:984)<br>
==3102==    by 0x5E790D7: KSPSetUp (itfunc.c:390)<br>
==3102==    by 0x5E7AD81: KSPSolve (itfunc.c:594)<br>
==3102==    by 0x40290D: main (ex2.c:197)<br>
==3102==  Address 0xc020428 is 648 bytes inside a block of size 131,072 alloc'd<br>
==3102==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
==3102==    by 0x636088D: superlu_malloc_dist (memory.c:108)<br>
==3102==    by 0x6330236: doubleMalloc_dist (dmemory_dist.c:145)<br>
==3102==    by 0x634ADFE: pdgstrf (pdgstrf.c:737)<br>
==3102==    by 0x63322D8: pdgssvx (pdgssvx.c:1109)<br>
==3102==    by 0x580294C: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
==3102==    by 0x58313C2: MatLUFactorNumeric (matrix.c:2946)<br>
==3102==    by 0x5DA1A5E: PCSetUp_LU (lu.c:164)<br>
==3102==    by 0x5C5D136: PCSetUp (precon.c:984)<br>
==3102==    by 0x5E790D7: KSPSetUp (itfunc.c:390)<br>
==3102==    by 0x5E7AD81: KSPSolve (itfunc.c:594)<br>
==3102==    by 0x40290D: main (ex2.c:197)<br>
==3102==  Uninitialised value was created by a heap allocation<br>
==3102==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
==3102==    by 0x636088D: superlu_malloc_dist (memory.c:108)<br>
==3102==    by 0x6330236: doubleMalloc_dist (dmemory_dist.c:145)<br>
==3102==    by 0x634ADFE: pdgstrf (pdgstrf.c:737)<br>
==3102==    by 0x63322D8: pdgssvx (pdgssvx.c:1109)<br>
==3102==    by 0x580294C: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
==3102==    by 0x58313C2: MatLUFactorNumeric (matrix.c:2946)<br>
==3102==    by 0x5DA1A5E: PCSetUp_LU (lu.c:164)<br>
==3102==    by 0x5C5D136: PCSetUp (precon.c:984)<br>
==3102==    by 0x5E790D7: KSPSetUp (itfunc.c:390)<br>
==3102==    by 0x5E7AD81: KSPSolve (itfunc.c:594)<br>
==3102==    by 0x40290D: main (ex2.c:197)<br>
==3102==<br>
Norm of error 1.01754e-15 iterations 1<br>
<br>
  Looking at pdgstrf2_trsm() it appears that you are sending square matrices of dimension MPI_Isend (ublk_ptr, nsupc * nsupc, MPI_DOUBLE, pr)  of dimension nsupc * nsupc but then using the received matrix as a 'u' (upper diagonal matrix)? This means that some of the entries in the matrix are never used and hence never set (the below diagonal ones)?<br>
<br>
  In order to prevent MPI ever seeing those uninitialized values it seems you should use calloc at pdgstrf (pdgstrf.c:737) ?<br>
<br>
  Thanks for looking at this.<br>
<br>
   Barry<br>
<br>
> On Jan 17, 2016, at 11:16 AM, Xiaoye S. Li <<a href="javascript:_e(%7B%7D,'cvml','xsli@lbl.gov');" target="_blank">xsli@lbl.gov</a>> wrote:<br>
><br>
> Barry,<br>
> I checked those (two) places that involve MPI_Isend with uninitialized memory.  In both cases, I malloc largest possible buffer needed across different steps of the algorithm. Then, at each step, only part of the buffer is used for send (with correct data initialized).  The size argument in MPI_Isend()  tells how much data should be sent at this step.  That is, I never send uninitialized memory.   I am surprised valgrind complains this.<br>
><br>
> I can use "calloc" for theses two buffers, if that helps.<br>
><br>
> Also, if this is not urgent, I will include this fix in the upcoming xSDK 1.0 release.   I am trying to get CMake in superlu_dist; it's done only for serial superlu.<br>
><br>
><br>
> Sherry<br>
><br>
><br>
> On Sat, Jan 16, 2016 at 7:36 PM, Barry Smith <<a href="javascript:_e(%7B%7D,'cvml','bsmith@mcs.anl.gov');" target="_blank">bsmith@mcs.anl.gov</a>> wrote:<br>
><br>
>   Sherry,<br>
><br>
>    I think the memory leak is our mistake. Thanks for checking the uninitialized copies<br>
><br>
>   Barry<br>
><br>
> > On Jan 16, 2016, at 2:04 PM, Xiaoye S. Li <<a href="javascript:_e(%7B%7D,'cvml','xsli@lbl.gov');" target="_blank">xsli@lbl.gov</a>> wrote:<br>
> ><br>
> > The first leak is related to data structure for distributed sparse CSR matrix A (input).  How does the petsc interface free A's structure at the end of program?   There needs be a matching call like this:<br>
> ><br>
> >     Destroy_CompRowLoc_Matrix_dist(&A);<br>
> ><br>
> > when A is not needed anymore.<br>
> ><br>
> > I will go check all the MPI buffers.<br>
> ><br>
> > By the way, I have a question about valgrind.   Lately I have been chasing a possible memory corruption on  Cori at NERSC.  Valgrind gave LOTS OF internal system-related warnings, such as:<br>
> ><br>
> > ==39059== Conditional jump or move depends on uninitialised value(s)<br>
> > ==39059==    at 0xD5E336: __register_atfork (register-atfork.c:119)<br>
> > ==39059==    by 0xD5E418: __libc_pthread_init (libc_pthread_init.c:48)<br>
> > ==39059==    by 0x6629E1: __pthread_initialize_minimal (nptl-init.c:462)<br>
> > ==39059==    by 0xD14BDA: (below main) (libc-start.c:152)<br>
> > ==39059==<br>
> > ==39057==    by 0xD5E418: __libc_pthread_init (libc_pthread_init.c:48)<br>
> > ==39057==    by 0x6629E1: __pthread_initialize_minimal (nptl-init.c:462)<br>
> > ==39057==    by 0xD14BDA: (below main) (libc-start.c:152)<br>
> ><br>
> > ​This has nothing do do with my program.  Do you know a way to NOT to print those?   I got a huge file filled with these, hard to find out the real error.<br>
> ><br>
> ><br>
> > Sherry<br>
> > ​<br>
> ><br>
> ><br>
> > 2016-01-16 10:40 GMT-08:00 Barry Smith <<a href="javascript:_e(%7B%7D,'cvml','bsmith@mcs.anl.gov');" target="_blank">bsmith@mcs.anl.gov</a>>:<br>
> ><br>
> > Sherry,<br>
> ><br>
> >   We think there is a small memory leak in Superlu; could you check it?<br>
> ><br>
> > > ==11431== 40 bytes in 1 blocks are definitely lost in loss record 1 of 1<br>
> > > ==11431==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==11431==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==11431==    by 0x67834CA: dCreate_CompRowLoc_Matrix_dist (dutil_dist.c:61)<br>
> > > ==11431==    by 0x58C280D: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:405)<br>
> > > ==11431==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==11431==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==11431==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==11431==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==11431==    by 0x6025919: KSPSolve (itfunc.c:594)<br>
> > > ==11431==    by 0x61E538F: SNESSolve_NEWTONLS (ls.c:230)<br>
> > > ==11431==    by 0x6255E9C: SNESSolve (snes.c:3992)<br>
> > > ==11431==    by 0x40271F: main (ex19.c:160)<br>
> > > ==11431==<br>
> > > ==11430== 40 bytes in 1 blocks are definitely lost in loss record 1 of 1<br>
> > > ==11430==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==11430==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==11430==    by 0x67834CA: dCreate_CompRowLoc_Matrix_dist (dutil_dist.c:61)<br>
> > > ==11430==    by 0x58C280D: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:405)<br>
> > > ==11430==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==11430==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==11430==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==11430==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==11430==    by 0x6025919: KSPSolve (itfunc.c:594)<br>
> > > ==11430==    by 0x61E538F: SNESSolve_NEWTONLS (ls.c:230)<br>
> > > ==11430==    by 0x6255E9C: SNESSolve (snes.c:3992)<br>
> > > ==11430==    by 0x40271F: main (ex19.c:160)<br>
> > > ==11430==<br>
> ><br>
> > Another problem is that when running PETSc examples with Superlu we see valgrind warning messages about copying uninitialized data in MPI calls in superlu. This is cause by hypre allocating some buffer space, but only putting values in part of the buffer and then sending the entire buffer via MPI to some other process. Technically this is not an "error" if you never access the non initialized data on the receiver process but it makes valgrind unusable for finding TRUE memory issues (since the output is filled with false positives).<br>
> ><br>
> >    The issue could be fixed by either 1) initializing the complete buffer allocated (for example when it is malloced), then MPI won't see uninitialized data or better IMHO 2) send shorter messages that don't contain this part of the buffer that is never used anyway.<br>
> ><br>
> > Thanks<br>
> ><br>
> >   Barry<br>
> > ******* Testing: testexamples_SUPERLU_DIST_DATAFILESPATH *******<br>
> > 0a1,89<br>
> > > ==29986== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==29986==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==29986==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==29986==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==29986==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==29986==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==29986==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==29986==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==29986==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==29986==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==29986==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==29986==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==29986==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==29986==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==29986==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==29986==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==29986==    by 0x405E42: main (ex10.c:316)<br>
> > > ==29986==  Address 0xf4d8318 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==29986==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==29986==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==29986==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==29986==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==29986==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==29986==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==29986==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==29986==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==29986==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==29986==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==29986==    by 0x405E42: main (ex10.c:316)<br>
> > > ==29986==  Uninitialised value was created by a heap allocation<br>
> > > ==29986==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==29986==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==29986==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==29986==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==29986==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==29986==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==29986==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==29986==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==29986==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==29986==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==29986==    by 0x405E42: main (ex10.c:316)<br>
> > > ==29986==<br>
> > > ==29987== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==29987==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==29987==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==29987==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==29987==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==29987==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==29987==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==29987==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==29987==    by 0x67A8198: pdgstrs (pdgstrs.c:717)<br>
> > > ==29987==    by 0x6787E75: pdgssvx (pdgssvx.c:1260)<br>
> > > ==29987==    by 0x58BE3A4: MatSolve_SuperLU_DIST (superlu_dist.c:170)<br>
> > > ==29987==    by 0x591E6DB: MatSolve (matrix.c:3178)<br>
> > > ==29987==    by 0x5E58FA5: PCApply_LU (lu.c:213)<br>
> > > ==29987==    by 0x5DA1EC1: PCApply (precon.c:484)<br>
> > > ==29987==    by 0x6131991: KSP_PCApply (kspimpl.h:244)<br>
> > > ==29987==    by 0x613225F: KSPSolve_PREONLY (preonly.c:27)<br>
> > > ==29987==    by 0x6026542: KSPSolve (itfunc.c:651)<br>
> > > ==29987==    by 0x406122: main (ex10.c:336)<br>
> > > ==29987==  Address 0xfb20f38 is 8 bytes inside a block of size 152 alloc'd<br>
> > > ==29987==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==29987==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==29987==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==29987==    by 0x67A7A0F: pdgstrs (pdgstrs.c:580)<br>
> > > ==29987==    by 0x6787E75: pdgssvx (pdgssvx.c:1260)<br>
> > > ==29987==    by 0x58BE3A4: MatSolve_SuperLU_DIST (superlu_dist.c:170)<br>
> > > ==29987==    by 0x591E6DB: MatSolve (matrix.c:3178)<br>
> > > ==29987==    by 0x5E58FA5: PCApply_LU (lu.c:213)<br>
> > > ==29987==    by 0x5DA1EC1: PCApply (precon.c:484)<br>
> > > ==29987==    by 0x6131991: KSP_PCApply (kspimpl.h:244)<br>
> > > ==29987==    by 0x613225F: KSPSolve_PREONLY (preonly.c:27)<br>
> > > ==29987==    by 0x6026542: KSPSolve (itfunc.c:651)<br>
> > > ==29987==    by 0x406122: main (ex10.c:336)<br>
> > > ==29987==  Uninitialised value was created by a heap allocation<br>
> > > ==29987==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==29987==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==29987==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==29987==    by 0x67A7A0F: pdgstrs (pdgstrs.c:580)<br>
> > > ==29987==    by 0x6787E75: pdgssvx (pdgssvx.c:1260)<br>
> > > ==29987==    by 0x58BE3A4: MatSolve_SuperLU_DIST (superlu_dist.c:170)<br>
> > > ==29987==    by 0x591E6DB: MatSolve (matrix.c:3178)<br>
> > > ==29987==    by 0x5E58FA5: PCApply_LU (lu.c:213)<br>
> > > ==29987==    by 0x5DA1EC1: PCApply (precon.c:484)<br>
> > > ==29987==    by 0x6131991: KSP_PCApply (kspimpl.h:244)<br>
> > > ==29987==    by 0x613225F: KSPSolve_PREONLY (preonly.c:27)<br>
> > > ==29987==    by 0x6026542: KSPSolve (itfunc.c:651)<br>
> > > ==29987==    by 0x406122: main (ex10.c:336)<br>
> > > ==29987==<br>
> > /sandbox/petsc/petsc.clone/src/ksp/ksp/examples/tutorials<br>
> > Possible problem with ex10_superlu_lu_2, diffs above<br>
> > =========================================<br>
> > 4a5,106<br>
> > > ==30097== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30097==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30097==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30097==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30097==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30097==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30097==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30097==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30097==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30097==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30097==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30097==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30097==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30097==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30097==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30097==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30097==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30097==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30097==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30097==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30097==  Address 0xf625088 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30097==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30097==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30097==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30097==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30097==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30097==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30097==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30097==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30097==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30097==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30097==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30097==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30097==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30097==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30097==  Uninitialised value was created by a heap allocation<br>
> > > ==30097==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30097==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30097==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30097==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30097==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30097==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30097==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30097==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30097==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30097==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30097==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30097==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30097==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30097==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30097==<br>
> > > ==30098== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30098==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30098==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30098==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30098==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30098==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30098==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30098==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30098==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30098==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30098==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30098==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30098==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30098==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30098==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30098==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30098==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30098==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30098==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30098==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30098==  Address 0xf619a88 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30098==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30098==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30098==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30098==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30098==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30098==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30098==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30098==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30098==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30098==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30098==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30098==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30098==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30098==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30098==  Uninitialised value was created by a heap allocation<br>
> > > ==30098==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30098==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30098==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30098==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30098==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30098==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30098==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30098==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30098==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30098==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30098==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30098==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30098==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30098==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30098==<br>
> > 8a111,314<br>
> > > ==30150== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30150==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30150==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30150==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30150==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30150==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30150==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30150==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30150==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30150==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30150==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30150==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30150==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30150==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30150==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30150==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30150==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30150==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30150==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30150==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30150==  Address 0xf623888 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30150==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30150==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30150==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30150==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30150==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30150==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30150==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30150==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30150==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30150==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30152==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30152==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30152==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30152==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30152==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30150==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30150==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30150==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30150==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30150==  Uninitialised value was created by a heap allocation<br>
> > > ==30150==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30150==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30150==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30150==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30150==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30150==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30150==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30150==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30150==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30150==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30150==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30150==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30150==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30150==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30150==<br>
> > > ==30152==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30152==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30152==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30152==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30152==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30152==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30152==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30152==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30152==  Address 0xf61cff8 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30152==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30152==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30152==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30152==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30152==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30152==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30152==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30152==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30152==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30152==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30152==  Uninitialised value was created by a heap allocation<br>
> > > ==30152==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30152==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30152==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30152==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30152==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30152==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30152==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30152==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30152==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30152==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30152==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30152==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30152==<br>
> > > ==30151== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30151==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30151==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30151==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30151==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30151==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30151==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30151==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30151==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30151==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30151==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30151==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30151==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30151==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30151==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30151==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30151==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30151==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30151==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30151==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30151==  Address 0xf6183c8 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30151==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30151==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30151==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30151==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30151==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30151==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30151==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30151==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30151==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30151==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30151==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30151==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30151==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30151==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30151==  Uninitialised value was created by a heap allocation<br>
> > > ==30151==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30151==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30151==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30151==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30151==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30151==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30151==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30151==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30151==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30151==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30151==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30151==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30151==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30151==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30151==<br>
> > > ==30153== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30153==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30153==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30153==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30153==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30153==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30153==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30153==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30153==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30153==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30153==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30153==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30153==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30153==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30153==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30153==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30153==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30153==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30153==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30153==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30153==  Address 0xf617728 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30153==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30153==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30153==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30153==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30153==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30153==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30153==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30153==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30153==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30153==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30153==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30153==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30153==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30153==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30153==  Uninitialised value was created by a heap allocation<br>
> > > ==30153==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30153==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30153==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30153==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30153==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30153==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30153==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30153==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30153==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30153==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30153==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30153==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30153==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30153==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30153==<br>
> > 12a319,624<br>
> > > ==30207== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30207==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30207==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30207==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30207==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30207==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30207==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30207==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30207==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30207==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30207==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30207==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30207==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30207==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30207==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30207==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30207==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30207==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30207==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30207==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30207==  Address 0xf6202b8 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30207==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30207==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30207==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30207==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30207==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30207==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30207==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30207==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30207==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30207==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30207==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30207==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30207==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30207==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30207==  Uninitialised value was created by a heap allocation<br>
> > > ==30207==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30207==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30207==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30207==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30207==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30207==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30207==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30207==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30207==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30207==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30207==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30207==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30207==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30207==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30207==<br>
> > > ==30205== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30205==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30205==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30205==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30205==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30205==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30205==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30205==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30205==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30205==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30205==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30205==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30205==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30205==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30205==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30205==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30205==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30205==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30205==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30205==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30205==  Address 0xf61b928 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30205==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30205==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30205==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30205==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30205==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30205==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30205==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30205==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30205==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30205==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30205==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30205==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30205==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30205==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30205==  Uninitialised value was created by a heap allocation<br>
> > > ==30205==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30205==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30205==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30205==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30205==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30205==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30205==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30205==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30205==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30205==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30205==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30205==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30205==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30205==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30205==<br>
> > > ==30208== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30208==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30208==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30208==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30208==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30208==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30208==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30208==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30208==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30208==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30208==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30208==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30208==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30208==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30208==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30208==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30208==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30208==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30208==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30208==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30208==  Address 0xf6142f8 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30208==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30208==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30208==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30208==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30208==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30208==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30208==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30208==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30208==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30208==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30208==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30208==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30208==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30208==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30208==  Uninitialised value was created by a heap allocation<br>
> > > ==30208==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30208==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30208==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30208==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30208==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30208==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30208==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30208==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30208==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30208==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30208==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30208==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30208==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30208==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30208==<br>
> > > ==30206== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30206==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30206==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30206==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30206==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30206==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30206==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30206==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30206==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30206==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30206==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30206==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30206==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30206==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30206==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30206==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30206==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30206==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30206==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30206==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30206==  Address 0xf6164f8 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30206==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30206==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30206==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30206==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30206==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30206==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30206==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30206==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30206==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30206==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30206==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30206==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30206==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30206==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30206==  Uninitialised value was created by a heap allocation<br>
> > > ==30206==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30206==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30206==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30206==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30206==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30206==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30206==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30206==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30206==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30206==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30206==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30206==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30206==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30206==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30206==<br>
> > > ==30203== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30203==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30203==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30203==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30203==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30203==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30203==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30203==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30203==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30203==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30203==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30203==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30203==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30203==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30203==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30203==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30203==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30203==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30203==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30203==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30203==  Address 0xf6229c8 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30203==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30203==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30203==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30203==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30203==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30203==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30203==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30203==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30203==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30203==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30203==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30203==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30203==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30203==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30203==  Uninitialised value was created by a heap allocation<br>
> > > ==30203==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30203==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30203==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30203==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30203==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30203==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30203==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30203==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30203==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30203==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30203==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30203==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30203==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30203==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30203==<br>
> > > ==30204== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30204==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30204==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30204==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30204==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30204==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30204==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30204==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30204==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30204==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30204==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30204==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30204==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30204==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30204==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30204==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30204==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30204==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30204==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30204==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30204==  Address 0xf617008 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30204==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30204==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30204==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30204==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30204==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30204==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30204==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30204==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30204==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30204==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30204==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30204==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30204==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30204==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30204==  Uninitialised value was created by a heap allocation<br>
> > > ==30204==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30204==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30204==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30204==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30204==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30204==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30204==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30204==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30204==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30204==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30204==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30204==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30204==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30204==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30204==<br>
> > 16a629,1036<br>
> > > ==30262== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30262==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30262==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30262==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30262==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30262==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30262==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30262==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30262==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30262==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30262==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30262==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30262==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30262==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30262==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30262==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30262==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30262==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30262==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30262==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30262==  Address 0xf61c2b8 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30262==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30262==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30262==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30262==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30262==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30262==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30262==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30262==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30262==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30262==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30262==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30262==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30262==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30262==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30262==  Uninitialised value was created by a heap allocation<br>
> > > ==30262==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30262==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30262==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30262==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30262==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30262==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30262==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30262==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30262==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30262==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30262==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30262==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30262==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30262==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30262==<br>
> > > ==30260== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30260==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30260==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30260==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30260==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30260==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30260==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30260==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30260==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30260==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30260==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30260==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30260==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30260==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30260==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30260==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30260==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30260==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30260==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30260==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30260==  Address 0xf61ed28 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30260==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30260==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30260==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30260==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30260==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30260==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30260==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30260==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30260==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30260==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30260==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30260==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30260==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30260==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30260==  Uninitialised value was created by a heap allocation<br>
> > > ==30260==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30260==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30260==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30260==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30260==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30260==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30260==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30260==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30260==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30260==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30260==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30260==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30260==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30260==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30260==<br>
> > > ==30258== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30258==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30258==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30258==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30258==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30258==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30258==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30258==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30258==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30258==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30258==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30258==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30258==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30258==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30258==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30258==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30258==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30258==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30258==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30258==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30258==  Address 0xf61a368 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30258==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30258==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30258==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30258==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30258==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30258==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30258==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30258==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30258==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30258==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30258==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30258==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30258==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30258==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30258==  Uninitialised value was created by a heap allocation<br>
> > > ==30258==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30258==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30258==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30258==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30258==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30258==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30258==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30258==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30258==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30258==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30258==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30258==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30258==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30258==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30258==<br>
> > > ==30256== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30256==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30256==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30256==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30256==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30256==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30256==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30256==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30256==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30256==    by 0x67A0BCF: pdgstrf (pdgstrf.c:981)<br>
> > > ==30256==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30256==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30256==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30256==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30256==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30256==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30256==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30256==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30256==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30256==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30256==  Address 0xf621318 is 8 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30256==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30256==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30256==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30256==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30256==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30256==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30256==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30256==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30256==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30256==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30256==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30256==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30256==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30256==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30256==  Uninitialised value was created by a heap allocation<br>
> > > ==30256==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30256==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30256==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30256==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30256==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30256==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30256==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30256==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30256==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30256==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30256==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30256==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30256==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30256==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30256==<br>
> > > ==30263== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30263==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30263==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30263==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30263==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30263==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30263==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30263==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30263==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30263==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30263==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30263==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30263==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30263==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30263==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30263==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30263==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30263==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30263==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30263==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30263==  Address 0xf612b98 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30263==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30263==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30263==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30263==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30263==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30263==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30263==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30263==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30263==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30263==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30263==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30263==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30263==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30263==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30263==  Uninitialised value was created by a heap allocation<br>
> > > ==30263==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30263==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30263==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30263==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30263==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30263==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30263==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30263==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30263==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30263==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30263==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30263==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30263==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30263==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30263==<br>
> > > ==30261== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30261==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30261==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30261==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30261==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30261==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30261==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30261==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30261==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30261==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30261==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30261==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30261==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30261==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30261==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30261==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30261==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30261==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30261==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30261==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30261==  Address 0xf612f58 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30261==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30261==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30261==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30261==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30261==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30261==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30261==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30261==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30261==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30261==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30261==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30261==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30261==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30261==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30261==  Uninitialised value was created by a heap allocation<br>
> > > ==30261==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30261==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30261==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30261==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30261==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30261==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30261==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30261==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30261==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30261==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30261==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30261==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30261==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30261==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30261==<br>
> > > ==30259== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30259==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30259==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30259==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30259==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30259==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30259==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30259==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30259==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30259==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30259==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30259==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30259==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30259==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30259==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30259==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30259==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30259==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30259==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30259==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30259==  Address 0xf615468 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30259==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30259==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30259==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30259==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30259==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30259==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30259==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30259==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30259==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30259==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30259==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30259==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30259==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30259==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30259==  Uninitialised value was created by a heap allocation<br>
> > > ==30259==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30259==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30259==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30259==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30259==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30259==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30259==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30259==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30259==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30259==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30259==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30259==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30259==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30259==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30259==<br>
> > > ==30257== Syscall param writev(vector[...]) points to uninitialised byte(s)<br>
> > > ==30257==    at 0xE11ACDB: writev (writev.c:51)<br>
> > > ==30257==    by 0xDAC9596: MPL_large_writev (mplsock.c:32)<br>
> > > ==30257==    by 0xDAB8DC9: MPIDU_Sock_writev (sock_immed.i:610)<br>
> > > ==30257==    by 0xDA739CD: MPIDI_CH3_iSendv (ch3_isendv.c:84)<br>
> > > ==30257==    by 0xDA43948: MPIDI_CH3_EagerContigIsend (ch3u_eager.c:556)<br>
> > > ==30257==    by 0xDA58574: MPID_Isend (mpid_isend.c:138)<br>
> > > ==30257==    by 0xD930ED8: PMPI_Isend (isend.c:125)<br>
> > > ==30257==    by 0x67A605A: pdgstrf2_trsm (pdgstrf2.c:199)<br>
> > > ==30257==    by 0x67A11C7: pdgstrf (pdgstrf.c:1084)<br>
> > > ==30257==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30257==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30257==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30257==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30257==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30257==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30257==    by 0x6013E35: PCSetUp_Redundant (redundant.c:171)<br>
> > > ==30257==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30257==    by 0x6023C6F: KSPSetUp (itfunc.c:390)<br>
> > > ==30257==    by 0x405E42: main (ex10.c:316)<br>
> > > ==30257==  Address 0xf615c38 is 72 bytes inside a block of size 131,072 alloc'd<br>
> > > ==30257==    at 0x4C2B6CD: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)<br>
> > > ==30257==    by 0x67B5CBD: superlu_malloc_dist (memory.c:108)<br>
> > > ==30257==    by 0x6785666: doubleMalloc_dist (dmemory_dist.c:145)<br>
> > > ==30257==    by 0x67A022E: pdgstrf (pdgstrf.c:737)<br>
> > > ==30257==    by 0x6787708: pdgssvx (pdgssvx.c:1109)<br>
> > > ==30257==    by 0x58C32E4: MatLUFactorNumeric_SuperLU_DIST (superlu_dist.c:421)<br>
> > > ==30257==    by 0x591B10A: MatLUFactorNumeric (matrix.c:2946)<br>
> > > ==30257==    by 0x5E581F6: PCSetUp_LU (lu.c:164)<br>
> > > ==30257==    by 0x5DA8CFA: PCSetUp (precon.c:984)<br>
> > > ==30257==    by 0x6023C6F: K</blockquote></div></div></blockquote><br><br>-- <br>Jeff Hammond<br><a href="mailto:jeff.science@gmail.com" target="_blank">jeff.science@gmail.com</a><br><a href="http://jeffhammond.github.io/" target="_blank">http://jeffhammond.github.io/</a><br>