[MPICH] how to implement an eficient method
Bruno Simioni
brunosimioni at gmail.com
Wed Jan 31 18:55:01 CST 2007
Hi everybody,
I'm implementing an mathemathical method in parallel computing, but i'm not
happy about the result i'm getting. That is about a lot of communication,
and it is turning everything slow.
The method is an integration that the next step always depends on the last
step. But in the middle of the last step, everybody (all nodes of my
cluster) must communicate with the master node.
Like that:
node 1
stuff
stuff
for (i=0; i< num. steps ; i++)
{
send X1 to master node
stuff
stuff
receive Y from master node
stuff ( with Y)
calculate X1
}
node 2
stuff
stuff
for (i=0; i< num. steps ; i++)
{
send X2 to master node
stuff
stuff
receive Y from master node
stuff ( with Y)
calculate X2
}
master node.
stuff
stuff
for (i=0; i< num. steps ; i++)
{
receive X from everybody.
stuff
calculate Y.
send Y to everybody.
}
Well,
My point is about excessive communication at for. The time spent to
syncronize all processes is causing delay in processing.
Anyone can help me? any advice?
The cluster contains three computers (one processor each one), and the time
spent in shared memory is 60% faster than using sockets.
What do i do?
Thanks.
--
Bruno. (from Brazil.)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/mpich-discuss/attachments/20070131/436b7f95/attachment.htm>
More information about the mpich-discuss
mailing list