<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Thu, Apr 23, 2015 at 6:02 AM, siddhesh godbole <span dir="ltr"><<a href="mailto:siddhesh4godbole@gmail.com" target="_blank">siddhesh4godbole@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif">Matt</div><div style="font-family:georgia,serif"><br></div><div style="font-family:georgia,serif">So that means the time on 10 processes in merely 1.8 times the time on 1 process?? this is quite difficult to digest!  Okay so if memory bandwidth  a controlling factor here how will forming a cluster with same machines  solve this problem?</div><div style="font-family:georgia,serif">my cpu has max memory bandwidth of 59 GB/s . </div></div></blockquote><div><br></div><div>It is tempting to say that computer manufacturers are lying when they report performance. You can</div><div>bring down 59 GB/s of memory, so that is less than 8B doubles/s. If you are adding two vectors, that</div><div>means you do 1 flop for every 2 doubles you bring down, so you can do 4 GF/s. Your processor has</div><div>6 cores, each running at 3.4 GHz, and it can do 4flops/cycle using the vector instructions, so they</div><div>report that it can do 81 GF/s, but you cannot get values to it fast enough to compute.</div><div><br></div><div>Now, you are getting only 50% of peak bandwidth, which is bad. Maybe Jed knows why you are not</div><div>getting 75-80% which is what we expect.</div><div><br></div><div>  Thanks,</div><div><br></div><div>     Matt</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 style="font-family:georgia,serif">Apologies if the question are too silly!</div></div><div class="gmail_extra"><br clear="all"><div><div><div dir="ltr"><b><font face="georgia, serif">Siddhesh M Godbole</font></b><div><br></div><div><font color="#666666">5th year Dual Degree,</font></div><div><font color="#666666">Civil Eng & Applied Mech.</font></div><div><font color="#666666">IIT Madras</font></div></div></div></div>
<br><div class="gmail_quote">On Thu, Apr 23, 2015 at 4:22 PM, Matthew Knepley <span dir="ltr"><<a href="mailto:knepley@gmail.com" target="_blank">knepley@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><div>On Thu, Apr 23, 2015 at 5:47 AM, siddhesh godbole <span dir="ltr"><<a href="mailto:siddhesh4godbole@gmail.com" target="_blank">siddhesh4godbole@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif">Hello,</div><div style="font-family:georgia,serif"><br></div><div style="font-family:georgia,serif">I want to know about the test which is conducted just after the PETSC is configured on the system to assess the possible speedup by MPI processes. I have saved the result file which says:</div><div style="font-family:georgia,serif"><div><i><font color="#073763"><b>Number of MPI processes 10</b></font></i></div><div><i><font color="#073763"><b>Process 0 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 1 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 2 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 3 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 4 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 5 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 6 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 7 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 8 iitm</b></font></i></div><div><i><font color="#073763"><b>Process 9 iitm</b></font></i></div><div><i><font color="#073763"><b>Function      Rate (MB/s) </b></font></i></div><div><i><font color="#073763"><b>Copy:       24186.8271</b></font></i></div><div><i><font color="#073763"><b>Scale:      23914.0401</b></font></i></div><div><i><font color="#073763"><b>Add:        27271.7149</b></font></i></div><div><i><font color="#073763"><b>Triad:      27787.1630</b></font></i></div><div><i><font color="#073763"><b>------------------------------------------------</b></font></i></div><div><i><font color="#073763"><b>np  speedup</b></font></i></div><div><i><font color="#073763"><b>1 1.0</b></font></i></div><div><i><font color="#073763"><b>2 1.75</b></font></i></div><div><i><font color="#073763"><b>3 1.86</b></font></i></div><div><i><font color="#073763"><b>4 1.84</b></font></i></div><div><i><font color="#073763"><b>5 1.85</b></font></i></div><div><i><font color="#073763"><b>6 1.83</b></font></i></div><div><i><font color="#073763"><b>7 1.76</b></font></i></div><div><i><font color="#073763"><b>8 1.79</b></font></i></div><div><i><font color="#073763"><b>9 1.8</b></font></i></div><div><i><font color="#073763"><b>10 1.8</b></font></i></div><div><i><font color="#073763"><b>Estimation of possible speedup of MPI programs based on Streams benchmark.</b></font></i></div><div><i><br></i></div><div>1) What parameters the speedup depends on?</div></div></div></blockquote><div><br></div></div></div><div>I am not sure what you are asking here. Speedup is defined as the time T on 1 process divided</div><div>by the time T_p on p processes:</div><div><br></div><div>  S = T/T_p</div><span><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif"><div>2) what are the hardware requirements for higher speedup? ( i was expecting atleast 5 times speedup after generating 10 processes.</div></div></div></blockquote><div><br></div></span><div>STREAMS measures the speedup of vectors operations, which are very similar to sparse matrix operations. Both</div><div>are limited by memory bandwidth.</div><span><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif"><div>3) what could possibly be done to improve this ?</div></div></div></blockquote><div><br></div></span><div>1) You could buy more nodes, since each node has a path to memory</div><div><br></div><div>2) You could change algorithms, but this has proven very difficult</div><div><br></div><div>   Thanks,</div><div><br></div><div>      Matt</div><span><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:georgia,serif"><div>i have intel® Core™ i7-4930K CPU @ 3.40GHz × 12 with 32 GB of RAM and 1 TB disk space.</div><div><br></div><div><br></div><div>Thanks</div></div><div><div><div dir="ltr"><b><font face="georgia, serif">Siddhesh M Godbole</font></b><div><br></div><div><font color="#666666">5th year Dual Degree,</font></div><div><font color="#666666">Civil Eng & Applied Mech.</font></div><div><font color="#666666">IIT Madras</font></div></div></div></div>
</div>
</blockquote></span></div><span><font color="#888888"><br><br clear="all"><span class="HOEnZb"><font color="#888888"><div><br></div>-- <br><div>What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div>
</font></span></font></span></div></div>
</blockquote></div><br></div>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature">What most experimenters take for granted before they begin their experiments is infinitely more interesting than any results to which their experiments lead.<br>-- Norbert Wiener</div>
</div></div>