Chev

Interesting question; I too would like to hear about it from the experts in
this forum. However, off the top of my head, I have the following advise for
you.

Yes, you could share the memory between processes using the shm_xxx system
calls of unix. However, it would be a lot easier if you used a thread
programming paradigm like pthread. A lot of these overhead would be handled
for you by the library itself.

In general, there is not a lot of performance gains by oversubscribing your
processors (i.e. number of processes > number of CPUs), unless your
processes are I/O bound and are blocked for a significant amount of time. I
don't know what your application is, but in the HPC world, such problems are
rare.

In general, processes on a shared memory node (i.e. an SMP machine) have a
significantly higher memory bandwidth and reduced latency, than those across
a node, even when the interconnect network is RDMA capable (such as
infiniband)

Durga

On 11/7/06, Chevchenkovic Chevchenkovic <chevchenko...@gmail.com> wrote:

Hi,
  I had the following setup:
 Rank 0 process on node 1 wants to send an array of particular
size to Rank 1 process on same node.
1. What are the optimisations that can be done/invoked while running
mpirun  to perform this memory to memory transfer efficiently?
2. Is there any performance gain  if 2 processes that are exchanging data
arrays are kept on the same node rather than on different nodes connected by
infiniband?
 Awaiting a reply,
-Chev







_______________________________________________
users mailing list
us...@open-mpi.org
http://www.open-mpi.org/mailman/listinfo.cgi/users




--
Devil wanted omnipresence;
He therefore created communists.

Reply via email to