<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="MSHTML 6.00.2900.2802" name=GENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Beowulf users,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>    The information posted to this 
list concerning the proper mechanism</FONT></DIV>
<DIV><FONT face=Arial size=2>for running Iozone in parallel across the nodes is 
incorrect. You do</FONT></DIV>
<DIV><FONT face=Arial size=2>NOT use dsh or any other parallel tool. It is NOT 
needed. Iozone</FONT></DIV>
<DIV><FONT face=Arial size=2>already knows how to go parallel across nodes. See 
-+m option.</FONT></DIV>
<DIV><FONT face=Arial size=2>    If you follow this person's 
suggestion you will get wrong answers,</FONT></DIV>
<DIV><FONT face=Arial size=2>and prove that you have never read the manual, nor 
the man page,</FONT></DIV>
<DIV><FONT face=Arial size=2>nor even the help screen.  </FONT></DIV>
<DIV><FONT face=Arial size=2>    If you use the -+m option then 
Iozone will eliminate the </FONT></DIV>
<DIV><FONT face=Arial size=2>straggler effect (some finish early, others finish 
late) and </FONT></DIV>
<DIV><FONT face=Arial size=2>be able to obtain accurate throughput 
results.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Below is the mis-information that was posted. ( It 
is wrong, please</FONT></DIV>
<DIV><FONT face=Arial size=2>ignore this mis-information)</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Enjoy,</FONT></DIV>
<DIV><FONT face=Arial size=2>Don Capps</FONT></DIV>
<DIV><FONT face=Arial size=2><A 
href="mailto:capps@iozone.org">capps@iozone.org</A></FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>-----------</FONT></DIV>
<DIV><STRONG>Egan Ford</STRONG> <A title="[Beowulf] Iozone on a Cluster" 
href="mailto:beowulf%40beowulf.org?Subject=%5BBeowulf%5D%20Iozone%20on%20a%20Cluster&In-Reply-To=F2184A862AE25E46BC7B1367E5771901498477%40brwsmxsusr01.pharma.aventis.com">egan 
at sense.net </A><BR><I>Thu Jan 5 15:54:00 PST 2006</I> 
<P>
<UL>
  <LI>Previous message: <A 
  href="http://www.beowulf.org/archive/2006-January/014574.html">[Beowulf] 
  Iozone on a Cluster </A>
  <LI>Next message: <A 
  href="http://www.beowulf.org/archive/2006-January/014567.html">[Beowulf] 
  Newbie </A>
  <LI><B>Messages sorted by:</B> <A 
  href="http://www.beowulf.org/archive/2006-January/date.html#14581">[ date 
  ]</A> <A 
  href="http://www.beowulf.org/archive/2006-January/thread.html#14581">[ thread 
  ]</A> <A 
  href="http://www.beowulf.org/archive/2006-January/subject.html#14581">[ 
  subject ]</A> <A 
  href="http://www.beowulf.org/archive/2006-January/author.html#14581">[ author 
  ]</A> </LI></UL>
<HR>
<!--beginarticle--><PRE>Find a parallel shell (e.g. pdsh), then write a script to run iozone,
something like:

echo ready
while [ ! -r /other/nfs/fs/go ]
do
        sleep .1
done
cd /nas/fs
iozone option option option ... >/other/nfs/fs/iozone.$(hostname -s).out
exit 0

Use pdsh or other to run the script on all nodes, e.g.:

date >foo;pdsh ...;date >>foo

Poor man parallel shell example:

date >foo;for i in node1 node2 node3 ...
do
ssh $i script &
done;wait;date >>foo

then type:

touch /other/nfs/fs/go

I do not recommend summing the output of iozone when running in parallel.
If you have a lot of clients they will not all start at the same time, some
may block on I/O for some period of time before starting inflating the
performance.  It is better to do the math yourself by using the timestamps
in the foo file.

A better solution to all of this is to use iometer.  With iometer you launch
a daemon on each node, then startup a iometer GUI (on Windows).  The GUI can
contact all the daemons and coordinate a benchmark in parallel, isolating
read from write.  With iozone in parallel you may get read and write
overlap.  You will need to patch iometer to use a directory instead of the
root of the FS or all daemons will try to read/write the same name.  I have
a patch somewhere to use a shell variable.

Another solution would be to use an MPIIO benchmark.

Normally I only use iozone for testing individual drive performance on nodes
and then check for a normal distribution.  I use MPIIO benchmarks and
iometer for testing SAN, NAS, and Parallel file systems.

</PRE></DIV></BODY></HTML>