MatMult is limited by memory bandwidth. Always analyze the data movement in your algorithm and compare the achieved "sustained memory bandwidth" to STREAM. MatMult will get a high fraction (often >80%) as long as the matrix ordering allows for reasonable cache reuse. Don't bother benchmarking with a bad ordering except to make the point that it's a bad thing to do.<div class="gmail_extra">
<br><br><div class="gmail_quote">On Fri, Nov 9, 2012 at 12:43 PM, Jed Brown <span dir="ltr"><<a href="mailto:jedbrown@mcs.anl.gov" target="_blank">jedbrown@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">
Run examples that are representative of a workload you are interested in. src/snes/examples/tutorials/ex5.c is a simple problem that is easy to understand. Use a 3D problem if that's what you're interested in. Run with -log_summary to get detailed information. Read the user's manual section on profiling for more details.<div class="HOEnZb">
<div class="h5"><div class="gmail_extra">
<br><br><div class="gmail_quote">On Fri, Nov 9, 2012 at 11:20 AM, Reuben D. Budiardja <span dir="ltr"><<a href="mailto:reubendb@utk.edu" target="_blank">reubendb@utk.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

Hello,<br>
<br>
I would like to compare / benchmark several different PETSc installations on my<br>
system. The differences may be: different compilers or compiler flags, different<br>
libraries used by PETSc (e.g. BLAS&LAPACK, and any other packages used by<br>
PETSc that I included in the build like SuperLU_Dist, Metis/ParMetis, Hypre,<br>
etc). Some of these libraries were provided by different vendors and some we<br>
built ourselves and I'd like to compare the performances as used by PETSc.<br>
<br>
So I am wondering if there's any kind of general PETSc benchmarking code out<br>
there that can do this. The more thorough parts of PETSc that gets exersized<br>
by the benchmark code the better, but even if only parts are tested it'd be<br>
useful too. Also I'm more interested on the benchmark code that can run with<br>
larger number of processors (e.g. order of hundreds and thousands). I've tried<br>
Google search but that hasn't yielded much of anything. So any help in<br>
pointing me to the right direction is greatly appreciated.<br>
<br>
Thank you<br>
<span><font color="#888888">RDB<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
<br>
</font></span></blockquote></div><br></div>
</div></div></blockquote></div><br></div>