[Beowulf] Adding Latency to a Cluster Environment
gropp at mcs.anl.gov
Fri Feb 13 14:01:25 EST 2004
At 11:44 AM 2/13/2004, Bogdan Costescu wrote:
>On Fri, 13 Feb 2004 joshh at cs.earlham.edu wrote:
> > Here is an irregular question. I am profiling a software package that runs
> > over LAM-MPI on 16 node clusters [Details Below]. I would like to measure
> > the effect of increased latency on the run time of the program.
>It appears that in your setup MPI uses TCP/IP as underlying protocol.
>Latency is a fuzzy parameter in TCP/IP. Adding to something fuzzy gives a
>fuzzy result. So there :-)
>- modify the routines that make MPI calls to call instead some wrapper
>routines that do some thumb twiddling before making the MPI call; this
>requires modification of the program source
Actually, this is not necessary, as long as you have the object files, not
just the executable. The MPI profiling interface could be used to add
latency to every send and receive operation; adding latency to collectives
will require some care, as the exact set of communication operations that
an MPI implementation uses is up to the implementation. Simply write your
own MPI routine and call the PMPI version (e.g., for MPI_Send, call
PMPI_Send) after adding some latency.
Note also that MPI may use any communication mechanism. Even on small
clusters, it may use something besides TCP (e.g., when the network is
Infiniband). MPI on SMPs often uses a collection of communication approaches.
Beowulf mailing list, Beowulf at beowulf.org
To change your subscription (digest mode or unsubscribe) visit http://www.beowulf.org/mailman/listinfo/beowulf
More information about the Beowulf