How to benchmark communication cost in a beowulf system

M A Suzen mehmet.suzen at
Fri Nov 15 04:28:54 PST 2002

If you can guess or do know that which data structures
will be send/received or broadcasts during execution of
your algorithm. (is it trivial?) Then You might be able to guess cost of 
communication over your preferred channel.( qualitatively or approximate 
scaling). (still trivial?)  One very simple possibility is checking timing 
during execution (each node's execution time (real, user and system), and
global real times) Estimate would be  ;
Comm=communication cost
GR=global real
LR=local real
LU=local user
LS=local system
GS=global system
GU=global user
n=# of procs

 Comm=(GR-GU-GS)/GR (in percentage)

Ideally Comm should be zero. Only question is how to implement local 
timings (if have a code)(putting like a code like ;
   Start Myprogram
      proc timing(t,timing)
        for(n=0;n<numproc;numproc) {
             if(n==myrank) {
                measure t time of myrank and send to rank 0
        return timing
      call timing(initial,time) my code..
      call timing(final,time)
    end code

), It may work, I am not sure.
It might be the simplest measure or wrong/misleading at all.


--On 14 November 2002 4:17pm -0700 Thomas Zheng <tzheng at> wrote:

> Hi all,
> I am evaluating a beowulf system for my application.  The first thing I
> want to check is the communication cost my application would incur in a
> 100-baseT interconnect.  I am wondering if there's some programs out
> there to help me do this or any suggestion on how to do this is welcomed.
> Thanks.
> Regards,
> Thomas Zheng
> _______________________________________________
> Beowulf mailing list, Beowulf at
> To change your subscription (digest mode or unsubscribe) visit

More information about the Beowulf mailing list