Hi,
sorry for the delay on your request.
There are two things which have to do in order to make a client/server
example work with Open MPI right now (assuming you are using
MPI_Comm_connect/MPI_Comm_accept)
First, you have to start the orted daemon in a persistent mode, e.g.
orted --persistent --seed --scope public
Second, you can not use right now MPI_Publish_name/MPI_Lookup_name
accross multiple jobs, this is unfortunatly a known bug. (Name
publishing works within the same job however). So what you would have to
do is pass the port-information of the MPI_Comm_accept call somehow to
the other process (e.g. printing it using a printf statement in the
server application and pass it as an input argument to the client
application).
Hope this helps
Edgar
Eng. A.A. Isola wrote:
"It's not possible to connect!!!!"
Hi Devel list, crossposting as this
is getting weird...
I did a client/server using MPI_Publish_name /
MPI_Lookup_name
and it runs fine on both MPICH2 and LAM-MPI but fail
on Open MPI. It's
not a simple failure (ie. returning an error code)
it breaks the
execution line and quits. The server continue to run
after the
client's crash.
The server also use 100% of CPU while
running, what doesn't happen with LAM.
The code is here:
http://www.
systemcall.com.br/rengolin/open-mpi/
OpenMP version: 1.1.1
Compiling:
mpiCC -o server server.c
mpiCC -o client client.c
- or
-
mpiCC -o client client.c -DUSE_LOOKUP
Running & Output: