Hello Ralph, Thank you for your answer.
I'm using OpenMPI 1.2.3. , compiler glibc232, Linux Suse 10.0. My "master" executable runs only on the one local host, then it spawns "slaves" (with MPI::Intracomm::Spawn). My question was: how to determine the hosts where these "slaves" will be spawned? You said: "You have to specify all of the hosts that can be used by your job in the original hostfile". How can I specify the host file? I can not find it in the documentation. Thanks and regards, Elena -----Original Message----- From: users-boun...@open-mpi.org [mailto:users-boun...@open-mpi.org] On Behalf Of Ralph H Castain Sent: Monday, December 17, 2007 3:31 PM To: Open MPI Users <us...@open-mpi.org> Cc: Ralph H Castain Subject: Re: [OMPI users] MPI::Intracomm::Spawn and cluster configuration On 12/12/07 5:46 AM, "Elena Zhebel" <ezhe...@fugro-jason.com> wrote: > > > Hello, > > I'm working on a MPI application where I'm using OpenMPI instead of MPICH. > > In my "master" program I call the function MPI::Intracomm::Spawn which spawns > "slave" processes. It is not clear for me how to spawn the "slave" processes > over the network. Currently "master" creates "slaves" on the same host. > > If I use 'mpirun --hostfile openmpi.hosts' then processes are spawn over the > network as expected. But now I need to spawn processes over the network from > my own executable using MPI::Intracomm::Spawn, how can I achieve it? > I'm not sure from your description exactly what you are trying to do, nor in what environment this is all operating within or what version of Open MPI you are using. Setting aside the environment and version issue, I'm guessing that you are running your executable over some specified set of hosts, but want to provide a different hostfile that specifies the hosts to be used for the "slave" processes. Correct? If that is correct, then I'm afraid you can't do that in any version of Open MPI today. You have to specify all of the hosts that can be used by your job in the original hostfile. You can then specify a subset of those hosts to be used by your original "master" program, and then specify a different subset to be used by the "slaves" when calling Spawn. But the system requires that you tell it -all- of the hosts that are going to be used at the beginning of the job. At the moment, there is no plan to remove that requirement, though there has been occasional discussion about doing so at some point in the future. No promises that it will happen, though - managed environments, in particular, currently object to the idea of changing the allocation on-the-fly. We may, though, make a provision for purely hostfile-based environments (i.e., unmanaged) at some time in the future. Ralph > > > Thanks in advance for any help. > > Elena > > > _______________________________________________ > users mailing list > us...@open-mpi.org > http://www.open-mpi.org/mailman/listinfo.cgi/users _______________________________________________ users mailing list us...@open-mpi.org http://www.open-mpi.org/mailman/listinfo.cgi/users