Hello everyone
The point of my work is to run a python program at a cluster with MPI communication, so I use Python Scientific module 2.4.11 . I have installed the Scientific and the MPI module according to instructions at each node of cluster. When I execute mpi.py at the cluster the following message appears :
nimitsis@centaurus:~> mpipython mpi.py
Traceback (most recent call last):
File "mpi.py", line 11, in ?
communicator.send(data, 1, 0)
Scientific.MPI.core.MPIError: invalid MPI destination
According to core.py file at 299 line which is the following :
def send(self, data, destination, tag):
if destination != 0:
raise MPIError, "invalid MPI destination"
self.messages.append((tag, Numeric.array(data, copy=1).flat))
the above message is right, but it seems that the send function can not send message to any destination except 0. Is that desirable ?
In addition, I have 2 questions :
1. If i want to execute the program at several processors , where do I declare that? for example at C I use for execution at 4 processors the command : mpirun -np=4 "name of executable" , what must I do for that ?
2. Where does happens the initialization of the MPI_world with the appropriate arguments of the processor number ?
I will appreciate very each answer.
Thank you in advance