On Jul 9, 2007, at 11:50 AM, Pedro Petrovitch wrote:
> I use the lamboot comand to set up the LAM enviroment in a single
> computer,
> i.e., "lamboot -v". I am running a simple master slave program and
> it runs
> alright when I use the "mpirun -np 2 main" command. I then try to
> set up a
> simple cluster with only 2 computers making the hostfile as you
> guys told in
> the user guide pdf. It seems to boot fine. The strange thing is
> that when I
> run my program in a single computer with 2 processes it runs way
> faster then
> when I run it with process 0 in machine 0 and process 1 in machine
> 1. Any
> idea why this happens? Any help would be appreciated.
This isn't totally unexpected, especially if one of the processes
doesn't require much CPU time or you are on an SMP machine. When
processes are on the same node, LAM/MPI will use shared memory for
communication. If your cluster only has ethernet, bandwidth is
halved and latency can easily be two or three orders of magnitude
higher when compared to shared memory. If your application uses lots
of short messages, the disparity between shared memory and TCP
performance can be really easy to see.
Hope this helps,
Brian
--
Brian Barrett
LAM/MPI Developer
Make today a LAM/MPI day!
|