<div dir="ltr"><div dir="ltr">Hi Hui, Mpich community,<div><br></div><div>Thanks for the response.  You're right, I'll provide a toy program that replicates the code structure (and results).  The toy program is calculating a sum value from each process- the value isn't too important for this toy program.  The timing, however, is the only thing important in our demonstration.  It exactly replicates what we are observing for our actual program.  This directly relates to the MPI functionality- we can't find out what the issue is.</div><div><br></div><div><img src="cid:ii_kk03dha00" alt="image.png" width="562" height="246" class="gmail-CToWUd gmail-a6T" tabindex="0" style="cursor: pointer; outline: 0px;"><br></div><div>I have attached the code.  Is something wrong with our implementation?  It starts with the main() function.  Thank you very much for any help,<br></div><div><br></div><div>Best,</div><div>Brent</div><div>PS My subscription to <a href="mailto:discuss@mpich.org">discuss@mpich.org</a> is pending currently.</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jan 16, 2021 at 12:24 PM Brent Morgan <<a href="mailto:brent.taylormorgan@gmail.com">brent.taylormorgan@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi Hui, Mpich community,<div><br></div><div>Thanks for the response.  You're right, I'll provide a toy program that replicates the code structure (and results).  The toy program is calculating a sum value from each process- the value isn't too important for this toy program.  The timing, however, is the only thing important in our demonstration.  It exactly replicates what we are observing for our actual program.  This directly relates to the MPI functionality- we can't find out what the issue is.</div><div><br></div><div><img src="cid:ii_kk03dha00" alt="image.png" width="562" height="246"><br></div><div>I have attached the code.  Is something wrong with our implementation?  It starts with the main() function.  Thank you very much for any help,<br></div><div><br></div><div>Best,</div><div>Brent</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jan 15, 2021 at 10:43 PM Zhou, Hui <<a href="mailto:zhouh@anl.gov" target="_blank">zhouh@anl.gov</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">





<div lang="EN-US">
<div>
<p class="MsoNormal">Your description only mentions MPI_Gather. If there is indeed problem with MPI_Gather, then you should be able to reproduce the issue with a sample program. Share with us and we can better assist you. If you can’t reproduce the issue with
 a simple example, then I suspect there are other problems that you are not able to fully describe. We really can’t help much without able to see the code.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal">That said, I am not even sure what is the issue you are describing. 100 process MPI_Gather will be slower than 50 process MPI_Gather. And since it is a collective, if one of your process is delayed due to some computations or else, the
 whole collective will take longer to finish just due to waiting for the late process. You really need tell us what your program is doing in order for us to even offer an intelligent guess.<u></u><u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<div>
<div>
<p class="MsoNormal">-- <br>
Hui Zhou<u></u><u></u></p>
</div>
</div>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<p class="MsoNormal"><u></u> <u></u></p>
<div style="border-right:none;border-bottom:none;border-left:none;border-top:1pt solid rgb(181,196,223);padding:3pt 0in 0in">
<p class="MsoNormal" style="margin-bottom:12pt"><b><span style="font-size:12pt;color:black">From:
</span></b><span style="font-size:12pt;color:black">Brent Morgan <<a href="mailto:brent.taylormorgan@gmail.com" target="_blank">brent.taylormorgan@gmail.com</a>><br>
<b>Date: </b>Friday, January 15, 2021 at 10:42 PM<br>
<b>To: </b>Zhou, Hui <<a href="mailto:zhouh@anl.gov" target="_blank">zhouh@anl.gov</a>>, <a href="mailto:discuss@mpich.org" target="_blank">discuss@mpich.org</a> <<a href="mailto:discuss@mpich.org" target="_blank">discuss@mpich.org</a>><br>
<b>Cc: </b>Robert Katona <<a href="mailto:robert.katona@hotmail.com" target="_blank">robert.katona@hotmail.com</a>><br>
<b>Subject: </b>Re: [mpich-devel] mpich3 error<u></u><u></u></span></p>
</div>
<div>
<div>
<p class="MsoNormal">Hi MPICH community,<u></u><u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">My team has downloaded mpich 3.3.2 (using ch3 as default) and implemented MPI, and for small # of processes (<50), everything worked fine for our MPI implementation.  For >=50 processes, there was a ch3 error and crashed the program after
 a random amount of seconds (sometimes 10seconds, sometimes 100seconds).  So we compiled mpich 3.3.2 with ch4 (instead of default ch3) using '--with-device=ch4:ofi` flag and this got rid of the error- but for >12 processes, the speed would slow down to 2x slower
 suddenly.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Upon Hui's suggestion, we upgraded to mpich 3.4 and compiled with '--with-device=ch4:ofi` flag (where ch4 is default for mpich 3.4).  Everything worked fine until we hit 20 processes; after >=20 processes, the 2x slowdown is happening again.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">We have tried 1 communicator and multiple communicators in an attempt to make the MPI implementation faster, but there's no significant difference in observations.  We are using MPI_Gather collector for merely calculating the sum of the
 result of N processes, but we can't seem to maintain stability within MPI as we increase N processes.  Is there something we are missing that is ultimately causing this error?  We are at a loss here, thank you.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Best,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Brent<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
</div>
</div>
</div>

</blockquote></div>
</blockquote></div>