<div dir="ltr"><div><div><div><div><div><div>@Barry:<br></div>I am running the job on a single node with 64 processors and using all of them. So do I still have to do the binding? (From what I understand from the link you have provided, the switching of processes between cores could be the reason. But will that be a reason even when all processors are doing equal amount of computations?)<br><br></div>@Jed:<br></div>There are no other jobs running on that node (and also no other jobs on the queue). So could the noise be due to load balance issue or something else in computing dot products and MatMults? Is this to be expected? If so, is the only work around for this is to report a statistics of wall time for the runs? (When I compare two different algorithms, the speed-up of one over the other varies significantly because of this issue.)<br><br></div>Thank you for the replies.<br><br></div>Regards,<br><br></div>Pradeep <br></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Feb 22, 2016 at 2:14 PM, Barry Smith <span dir="ltr"><<a href="mailto: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>
   Also make sure you are doing consistent binding of MPI processes to cores:  see <a href="http://www.mcs.anl.gov/petsc/documentation/faq.html#computers" rel="noreferrer" target="_blank">http://www.mcs.anl.gov/petsc/documentation/faq.html#computers</a>  and run the streams benchmarks several times to see if you get consistent results.<br>
<br>
   With no other user or system processes consuming large amounts of cycles and suitable binding you should get pretty consistent results.<br>
<span class="HOEnZb"><font color="#888888"><br>
  Barry<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
<br>
> On Feb 22, 2016, at 1:08 PM, Jed Brown <<a href="mailto:jed@jedbrown.org">jed@jedbrown.org</a>> wrote:<br>
><br>
> Phanisri Pradeep Pratapa <<a href="mailto:ppratapa@gatech.edu">ppratapa@gatech.edu</a>> writes:<br>
><br>
>> Hi,<br>
>><br>
>> I am trying to compare run times for a function in petsc using ksp solve.<br>
>> When I run the code in parallel on a single node (64 processors), it seems<br>
>> to take different wall time for each run, although run on exactly same<br>
>> processors. For example one time it could take 10 sec where as the same run<br>
>> next time could take 20 sec. (This happens for other choices of processors<br>
>> too, not just 64)<br>
><br>
> You probably just have a noisy system.  It could be due to the<br>
> architecture and system software or it could be caused by contention<br>
> with other jobs and/or misconfiguration.<br>
><br>
> See this paper, especially Figure 1.<br>
><br>
> <a href="http://unixer.de/publications/img/hoefler-scientific-benchmarking.pdf" rel="noreferrer" target="_blank">http://unixer.de/publications/img/hoefler-scientific-benchmarking.pdf</a><br>
<br>
</div></div></blockquote></div><br></div>