From: raja@rsn.hp.com (Raja Daoud)
Newsgroups: comp.parallel.mpi
Subject: Re: Conversion PVm to MPI
Date: 22 Sep 1998 03:36:09 -0500
Organization: Hewlett-Packard Co.
Message-Id: <6u7nhp$ev7@tbag.rsn.hp.com>
References: <Pine.GSO.3.95.980920143111.24597B-100000@pesqueira>
    <01bd79c1$848b4290$e8b7060a@eraui187>


In many cases, PVM's spawn, along with barrier or send/recv setup code,
is used to create a static group of processes.  For a star topology, the
tid of the master is broadcast.  In other cases, an array of tids may be
broadcast, with processes using the index in the array as a virtual
process ID in the [0, N-1] range.

These cases simply translate into:

	MPI_Init(...);
	MPI_Comm_size(...);
	MPI_Comm_rank(...);

using rank 0 as the master if needed.

I think you'll probably find it easy enough to read the PVM code and
do a manual translation.  For applications that run well on clusters
of workstations, you may find only a few location where messages are
exchanged, further easing the port.

IMO, even with MPI-2's spawn available, many cases will probably remain
easier and cleaner with a manual port.  Applications that truly require
dynamic processes would need MPI's spawn and take more effort to port
(probably still done manually).

Regards,

--Raja

-=-
Raja Daoud				Hewlett-Packard Co.
raja@rsn.hp.com				http://www.hp.com/go/mpi

