<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Yes I am using the pre-loaded MPICH from the docker image. Further proof from configure<div class=""><br class=""></div><div class="">#define PETSC_HAVE_MPICH_NUMVERSION 30302300<br class="">#define PETSC_HAVE_MPIEXEC_ENVIRONMENTAL_VARIABLE MPIR_CVAR_CH3</div><div class=""><br class=""><div class=""><div class="">
<div dir="auto" style="caret-color: rgb(0, 0, 0); color: rgb(0, 0, 0); letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none; word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><div>Best regards,<br class=""><br class="">Jacob Faibussowitsch<br class="">(Jacob Fai - booss - oh - vitch)<br class="">Cell: (312) 694-3391</div></div>

</div>
<div><br class=""><blockquote type="cite" class=""><div class="">On Jun 2, 2020, at 11:35 AM, Junchao Zhang <<a href="mailto:junchao.zhang@gmail.com" class="">junchao.zhang@gmail.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">I guess Jacob already used MPICH, since MPIDI_CH3_EagerContigShortSend() is from MPICH.  <div class=""><br clear="all" class=""><div class=""><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr" class="">--Junchao Zhang</div></div></div><br class=""></div></div><br class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jun 2, 2020 at 9:38 AM Satish Balay via petsc-dev <<a href="mailto:petsc-dev@mcs.anl.gov" class="">petsc-dev@mcs.anl.gov</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">use --download-mpich for valgrind.<br class="">
<br class="">
<a href="https://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind" rel="noreferrer" target="_blank" class="">https://www.mcs.anl.gov/petsc/documentation/faq.html#valgrind</a><br class="">
<br class="">
Satish<br class="">
<br class="">
On Tue, 2 Jun 2020, Karl Rupp wrote:<br class="">
<br class="">
> Hi Jacob,<br class="">
> <br class="">
> the recommendation in the past was to use MPICH as it is (was?)<br class="">
> valgrind-clean. Which MPI do you use? OpenMPI used to have these kinds of<br class="">
> issues. (My information might be outdated)<br class="">
> <br class="">
> Best regards,<br class="">
> Karli<br class="">
> <br class="">
> On 6/2/20 2:43 AM, Jacob Faibussowitsch wrote:<br class="">
> > Hello All,<br class="">
> > <br class="">
> > TL;DR: valgrind always complains about "Syscall param write(buf) points to<br class="">
> > uninitialised byte(s)” for a LOT of MPI operations in petsc code, making<br class="">
> > debugging using valgrind fairly annoying since I have to sort through a ton<br class="">
> > of unrelated stuff. I have built valgrind from source, used apt install<br class="">
> > valgrind, apt install valgrind-mpi to no avail.<br class="">
> > <br class="">
> > I am using valgrind from docker. Dockerfile is attached below as well. I<br class="">
> > have been unsuccessfully trying to resolve these local valgrind errors, but<br class="">
> > I am running out of ideas. Googling the issue has also not provided entirely<br class="">
> > applicable solutions. Here is an example of the error:<br class="">
> > <br class="">
> > $ make -f gmakefile test VALGRIND=1<br class="">
> > ...<br class="">
> > #==54610== Syscall param write(buf) points to uninitialised byte(s)<br class="">
> > #==54610==    at 0x6F63317: write (write.c:26)<br class="">
> > #==54610==    by 0x9056AC9: MPIDI_CH3I_Sock_write (in <br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x9059FCD: MPIDI_CH3_iStartMsg (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x903F298: MPIDI_CH3_EagerContigShortSend (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x9049479: MPID_Send (in /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8FC9B2A: MPIC_Send (in /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8F86F2E: MPIR_Bcast_intra_binomial (in <br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8EE204E: MPIR_Bcast_intra_auto (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8EE21F4: MPIR_Bcast_impl (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8F887FB: MPIR_Bcast_intra_smp (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8EE206E: MPIR_Bcast_intra_auto (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8EE21F4: MPIR_Bcast_impl (in<br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x8EE2A6F: PMPI_Bcast (in /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > #==54610==    by 0x4B377B8: PetscOptionsInsertFile (options.c:525)<br class="">
> > #==54610==    by 0x4B39291: PetscOptionsInsert (options.c:672)<br class="">
> > #==54610==    by 0x4B5B1EF: PetscInitialize (pinit.c:996)<br class="">
> > #==54610==    by 0x10A6BA: main (ex9.c:75)<br class="">
> > #==54610==  Address 0x1ffeffa944 is on thread 1's stack<br class="">
> > #==54610==  in frame #3, created by MPIDI_CH3_EagerContigShortSend (???:)<br class="">
> > #==54610==  Uninitialised value was created by a stack allocation<br class="">
> > #==54610==    at 0x903F200: MPIDI_CH3_EagerContigShortSend (in <br class="">
> > /usr/local/lib/libmpi.so.12.1.8)<br class="">
> > <br class="">
> > There are probably 20 such errors every single time, regardless of what code<br class="">
> > is being run. I have tried using apt install valgrind, apt install<br class="">
> > valgrind-mpi, and building valgrind from source:<br class="">
> > <br class="">
> > # VALGRIND<br class="">
> > WORKDIR /<br class="">
> > RUN git clone git://<a href="http://sourceware.org/git/valgrind.git" rel="noreferrer" target="_blank" class="">sourceware.org/git/valgrind.git</a><br class="">
> > WORKDIR /valgrind<br class="">
> > RUN git pull<br class="">
> > RUN ./autogen.sh<br class="">
> > RUN ./configure --with-mpicc=/usr/local/bin/mpicc<br class="">
> > RUN make -j 5<br class="">
> > RUN make install<br class="">
> > <br class="">
> > None of the those approaches lead to these errors disappearing. Perhaps I am<br class="">
> > missing some funky MPI args?<br class="">
> > <br class="">
> > Best regards,<br class="">
> > <br class="">
> > Jacob Faibussowitsch<br class="">
> > (Jacob Fai - booss - oh - vitch)<br class="">
> > Cell: (312) 694-3391<br class="">
> > <br class="">
> > <br class="">
> <br class="">
> <br class="">
</blockquote></div>
</div></blockquote></div><br class=""></div></div></body></html>