Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] How is a MPI process launched ?
From: Ralph Castain (rhc_at_[hidden])
Date: 2010-04-26 23:28:06


On Apr 26, 2010, at 9:05 PM, Leo P. wrote:

> Hi Ralph,
>
> Is there some reason why you don't just use MPI_Comm_spawn? This is precisely what it was created to do. You can still execute it from a singleton, if you don't want to start your first process via mpirun (and is there some reason why you don't use mpirun???).
>
> The reason why i am using MPI_Comm_spawn and singleton is i am going to route the MPI Communication (btl and OOB) from another computer before it reaches it intended destination. :)

Others have done this - the OOB is simple, but the btl is not easy. I'll suggest they contact you.

I honestly don't think you understand how the OOB, comm_spawn, and singletons work. What you are trying to do for the OOB has already been done for you in the system as shipped today. All you need to do is start the "ompi-server" daemon where the two procs can both see it, and then use the patch I provided to the other people who were just asking about something like this.

See the following thread:

http://www.open-mpi.org/community/lists/users/2010/04/12763.php

If this is a common desired feature, it would be simple to apply my patch to the devel trunk and the other releases.

>
> Yes, you -could- hack the MPI code to do this. Starting from scratch, with little knowledge of the code base - figure on taking awhile. I could probably come up with a way to do it, but this would have to be a very low priority for me.
>
> I am trying to learn the OpenMPI code base and i know its going to take time. Now i need to understand how the processes are started and made part of MPI_Comm_World. I really want to do this but i need help. If you can suggest how this can be done, i would really appreciate a lot.

See the above thread - you'll still need to route the BTL, but at least the launch and wireup are resolved.

>
> Leo
>
>
> From: Ralph Castain <rhc_at_[hidden]>
> To: Open MPI Developers <devel_at_[hidden]>
> Sent: Tue, 27 April, 2010 6:44:49 AM
> Subject: Re: [OMPI devel] How is a MPI process launched ?
>
> Ummmm....I sincerely hope you are kidding :-)
>
> Is there some reason why you don't just use MPI_Comm_spawn? This is precisely what it was created to do. You can still execute it from a singleton, if you don't want to start your first process via mpirun (and is there some reason why you don't use mpirun???).
>
> Yes, you -could- hack the MPI code to do this. Starting from scratch, with little knowledge of the code base - figure on taking awhile. I could probably come up with a way to do it, but this would have to be a very low priority for me.
>
>
> On Apr 26, 2010, at 12:12 PM, Leo P. wrote:
>
>> Hi Ralph,
>>
>> Thank you for your response. Really appreciate it as usual. :)
>>
>> It depends - if you have an environment like slurm, sge, or torque, then we use that to launch our daemons on each node. Otherwise, we default to using ssh.
>>
>> Once the daemons are launched, we then tell the daemons what processes each is to run. So it is a two-stage launch procedure.
>>
>> Ralph after starting the orte_deamon
>> what is the role of ssh then ?
>> Also i am assuming HNP is created before using ssh. Am i right ?
>> Also Ralph i would to know how i can tell the daemon to run a process ?
>> Ralph i am tying to create run a simple experiment where i can create a simple process between two computer using SSH module without using mpirun. I would to hack the mpi library so that i can send a simple "Hello World " from process A running in computer A to process B running in computer B. I would be create both the process myself. HOPE I AM BEING CLEAR.
>>
>> Basically what i am saying is i would to create the MPI_COMM_WORLD comprising of two process Process A and Process B. For that i would to create a functions called Create_Process_A and Create_Process_B and Send_Message by utilizing Open MPI source code.
>>
>> Also, I know i should be looking into PLM subsystem, RMAPS subsystem, ODLS subsystem, and ORTED subsystem. But Ralph if you guide me a bit i can finish the experiment with less sleepless night, headache, and stress.
>>
>> Leo P
>>
>>
>> On Apr 26, 2010, at 2:22 AM, Leo P. wrote:
>>
>>> Hi everyone,
>>>
>>> I wanted to know how OpenMPI launches a MPI process in a cluster environment. I am assuming if the process lifecycle management it will be using rsh.
>>>
>>>
>>> Anyhelp would be greatly appreciated.
>>>
>>>
>>> _______________________________________________
>>> devel mailing list
>>> devel_at_[hidden]
>>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>>
>>
>> _______________________________________________
>> devel mailing list
>> devel_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel