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