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 <[email protected]> wrote:
> Thanks to all for your help.
>
> ________________________________________
> From: [email protected] [[email protected]] on behalf of
> Ralph Castain [[email protected]]
> 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 <[email protected]> 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: [email protected] [[email protected]] on behalf of
>>>> Ralph Castain [[email protected]]
>>>> 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 <[email protected]> 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: [email protected] [[email protected]] on behalf
>>>>> of Ralph Castain [[email protected]]
>>>>> 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 <[email protected]> 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
>>>>>>> [email protected]
>>>>>>> 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
>>>>>> [email protected]
>>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> [email protected]
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> [email protected]
>>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>>
>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> [email protected]
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>> _______________________________________________
>>>> users mailing list
>>>> [email protected]
>>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>>
>>>
>>> --
>>> Jeff Squyres
>>> [email protected]
>>> For corporate legal information go to:
>>> http://www.cisco.com/web/about/doing_business/legal/cri/
>>>
>>>
>>> _______________________________________________
>>> users mailing list
>>> [email protected]
>>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>>
>>
>> --
>> Jeff Squyres
>> [email protected]
>> For corporate legal information go to:
>> http://www.cisco.com/web/about/doing_business/legal/cri/
>>
>>
>> _______________________________________________
>> users mailing list
>> [email protected]
>> http://www.open-mpi.org/mailman/listinfo.cgi/users
>
>
> _______________________________________________
> users mailing list
> [email protected]
> http://www.open-mpi.org/mailman/listinfo.cgi/users
> _______________________________________________
> users mailing list
> [email protected]
> http://www.open-mpi.org/mailman/listinfo.cgi/users