Open MPI logo

Open MPI User's Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Open MPI User's mailing list

Subject: Re: [OMPI users] User Interface for MPMD
From: Ralph Castain (rhc_at_[hidden])
Date: 2012-08-12 01:05:35


r27012 implements this for you - it is in the OMPI trunk and should make it into the 1.7.0 release.

The info keys you want are:

for item (1): "num_app_ctx"
for item (2): "first_rank" - returns a space-separated list of 1st ranks for each app_context ("instance" in your terminology)
for item (3): "np" - returns a space-separated list of num procs for each app_context

HTH
Ralph

On Aug 10, 2012, at 4:19 PM, Frank Kampe <u2591_at_[hidden]> wrote:

> Thanks to all for your help.
>
> ________________________________________
> From: users-bounces_at_[hidden] [users-bounces_at_[hidden]] on behalf of Ralph Castain [rhc_at_[hidden]]
> Sent: Friday, August 10, 2012 4:50 PM
> To: Open MPI Users
> Subject: Re: [OMPI users] User Interface for MPMD
>
> ...and, as I told Jeff on the phone, I already signed up to implement it for the 1.7 series :-)
>
> Should get to it next week. In the interim, you could access that data directly from the ORTE structures, but it would be a tad ugly - probably easier for me to get this implemented for you if your timing can wait.
>
>
> On Aug 10, 2012, at 2:42 PM, Jeff Squyres <jsquyres_at_[hidden]> wrote:
>
>> Ah, I was wrong: it wasn't Adam Moody -- it was Marc Snir's proposal. It's MPI Forum 3.0 ticket #313:
>>
>> https://svn.mpi-forum.org/trac/mpi-forum-web/ticket/313
>>
>> Download the 313.pdf to see the changes for this proposal. It did pass and will be part of MPI-3.0.
>>
>> Basically, MPI now defines a pre-defined MPI_Info object named MPI_INFO_ENV containing the information that you are looking for.
>>
>> ***NOTE: the MPI_INFO_ENV name is different than what is shown in the 313.pdf -- see the MPI-3 draft doc document for the final/official text: http://meetings.mpi-forum.org/MPI_3.0_main_page.php).
>>
>>
>>
>> On Aug 10, 2012, at 4:45 PM, Jeff Squyres wrote:
>>
>>> I swear that there was an MPI-3 proposal for just about exactly this issue (because there is currently no MPI-standardized way to get this information).
>>>
>>> I honestly don't remember what happened to this proposal, but I know who made it (Adam Moody, from Livermore). I've just pinged him off list to find out what happened to that proposal.
>>>
>>> Stay tuned...
>>>
>>>
>>>
>>> On Aug 10, 2012, at 1:50 PM, Frank Kampe wrote:
>>>
>>>> OK. I think I am not being clear and am using the wrong terms. For example, suppose we launch and MPMD job:
>>>>
>>>> mpirun -np 1 a.out : -np 8 a.out2 : -np 512 a.out3
>>>>
>>>> There are three "instances" invoked here---that's info item(1). In other words, how many executables are started. Given MPMD mode, the entire set of apps belong to the same MPI_COMM_WORLD. So, MPI Task 0 is the MPI rank of the process executing a.out, MPI Task 1 is the 1st MPI rank for process(s) executing a.out2, and Task 9 is the 1st MPI rank for processes(s) executing a.out3. That's the info in item (2) below. Finally number of tasks for instance 1 is 1, for instance 2 is 8, and for instance 3 is 512---that's item (3).
>>>>
>>>> What user-callable interface does OpenMPI provide to get that information in a.out, a.out2, and a.out3 during run-time?
>>>>
>>>> Thanks.
>>>>
>>>> ________________________________________
>>>> From: users-bounces_at_[hidden] [users-bounces_at_[hidden]] on behalf of Ralph Castain [rhc_at_[hidden]]
>>>> Sent: Friday, August 10, 2012 12:00 PM
>>>> To: Open MPI Users
>>>> Subject: Re: [OMPI users] User Interface for MPMD
>>>>
>>>> I gather you don't want to use the MPI calls to get it? Perhaps it would help if we understood a little more about what you are trying to do.
>>>>
>>>> Or maybe we just aren't understanding the term "instance" - e.g., for #1, you want to know how many processes are executing in the job, yes?
>>>>
>>>> If that's correct, then the second question doesn't make sense to me - so I'm a little lost.
>>>>
>>>>
>>>> On Aug 10, 2012, at 9:49 AM, Frank Kampe <u2591_at_[hidden]> wrote:
>>>>
>>>>> No. I am looking for a user-callable function that will return information about the running OpenMPI MPMD program from within the running program---the information listed below in (1) -- (3).
>>>>>
>>>>> ________________________________________
>>>>> From: users-bounces_at_[hidden] [users-bounces_at_[hidden]] on behalf of Ralph Castain [rhc_at_[hidden]]
>>>>> Sent: Friday, August 10, 2012 11:15 AM
>>>>> To: Open MPI Users
>>>>> Subject: Re: [OMPI users] User Interface for MPMD
>>>>>
>>>>> I'm actually not sure I understand the question - are you talking about a programmatic API where an application wants to spawn an MPI program? Or an inter-program communication API that wants to tell another program some information? Or an API by which the app can tell MPI "I'm going to spawn N threads"? Or...?
>>>>>
>>>>>
>>>>> On Aug 10, 2012, at 9:00 AM, Gus Correa <gus_at_[hidden]> wrote:
>>>>>
>>>>>> On 08/10/2012 11:31 AM, Frank Kampe wrote:
>>>>>>> Are there any user level APIs to provide the following information to a running OpenMPI MPMD program:
>>>>>>>
>>>>>>> (1) Number of executable instances
>>>>>>>
>>>>>>> (2) 1st MPI Task rank of each instance
>>>>>>>
>>>>>>> (3) Number of MPI Tasks per instance
>>>>>>>
>>>>>>> Thank You
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> users mailing list
>>>>>>> users_at_[hidden]
>>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>>> Hi Frank
>>>>>> Check 'man mpiexec', the --app file option, maybe also --rankfile.
>>>>>> The on process binding at the end may also help.
>>>>>> I hope this helps,
>>>>>> Gus Correa
>>>>>> _______________________________________________
>>>>>> users mailing list
>>>>>> users_at_[hidden]
>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> users_at_[hidden]
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> users_at_[hidden]
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>
>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> users_at_[hidden]
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>> _______________________________________________
>>>> users mailing list
>>>> users_at_[hidden]
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>
>>>
>>> --
>>> Jeff Squyres
>>> jsquyres_at_[hidden]
>>> For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
>>>
>>>
>>> _______________________________________________
>>> users mailing list
>>> users_at_[hidden]
>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>
>>
>> --
>> Jeff Squyres
>> jsquyres_at_[hidden]
>> For corporate legal information go to: http://www.cisco.com/web/about/doing_business/legal/cri/
>>
>>
>> _______________________________________________
>> users mailing list
>> users_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
> _______________________________________________
> users mailing list
> users_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/users