[Mpi3-tools] latest draft of mqs

John DelSignore John.DelSignore at roguewave.com
Wed May 22 08:54:48 CDT 2013


I prefer to not muddy up the "standard definitions" (or maybe "common-sense definitions") of commonly used term, such as "image file", to make them conform to the MQD interface. Instead, I like to define the MQD typedefs in terms of the standard definitions. So, WRT to the document, I think we should include the following definitions:

* An "image file" is an executable or shared library file, that may contain symbol definitions needed by the MQD interface.

* An "MPI process" consists of an "address space" and a collection of execution contexts (threads or lightweight processes).

* An "address space" is a region of memory that consists of executable code and data, and is partially composed of a collection of image files. The collection of image files may change at any point during the execution of the MPI process, and image files may be relocated at runtime within the address space at the point they are loaded into memory.

Then we can say:

* An "mqs_image" is an abstract concept that represents the collection of image files loaded into the address space of the MPI process at any given time, and is debugger implementation defined. In static execution environments, where shared libraries are not supported, an mqs_image can represent an executable image file. However, in dynamic execution environments, where shared libraries, dynamically loaded shared libraries, and runtime relocation of shared libraries are supported, an mqs_image should represent the collection of image files loaded into the address space of the MPI process at any given point in time; in this situation, mqs_image may in fact represent the MPI process itself.

Cheers, John D.


Anh Vo wrote:
> Thanks Kathryn for starting up the discussion.
> 
>  
> 
> I’ll start with my existing definition of mqs_image in the document,
> which definitely is not adequate.
> 
>  
> 
> Existing definition:
> 
> An image is an executable file that was loaded into memory when
> 
> a process is started.  For SIMD-style programs, all MPI processes have
> 
> the same image. For MIMD-style programs, MPI processes might have
> 
> different images.
> 
>  
> 
> Dong’s comments:
> 
> The definition of “Image” isn’t all that rigorous here. I think this
> creates some confusion somewhere down this document. Is an image really
> an executable file? Which  typically means the base executable or does
> this refer to both the based executable and DSOs being loaded into the
> process address space? Though it sounds hair-splitting, even the SPMD
> remark, the statement is only true if the image is defined to be the
> base executable.
> 
>  
> 
> John’s comments:
> 
> I think we should be more general with the term “image” to mean
> executable or shared library. The reason is that we do not want to
> require symbols to reside in the executable. We should allow symbols to
> reside in shared libraries.
> 
> Also, I think we need to define the “address space” of a process, and an
> “image list” as a collection of image files that have been loaded in the
> address space, and possibly relocated at runtime.
> 
>  
> 
> I think I agree with both comments. Image should not refer to a single
> executable image (a.out or a.exe), but rather the base executable and
> the shared libraries that were loaded into the process address space.
> 
>  
> 
> So how about this new definition:
> 
> An image represents the executable (e.g., a.out) and the collection of
> dynamically loaded libraries that were loaded into the process address
> space.
> 
>  
> 
> --Anh
> 
> *From:* mpi3-tools-bounces at lists.mpi-forum.org
> [mailto:mpi3-tools-bounces at lists.mpi-forum.org] *On Behalf Of *Kathryn
> Mohror
> *Sent:* Tuesday, May 21, 2013 6:27 PM
> *To:* mpi3-tools at lists.mpi-forum.org
> *Subject:* Re: [Mpi3-tools] latest draft of mqs
> 
>  
> 
> Hi John, 
> 
>  
> 
> Thank you for the extensive feedback and help with the document! I'm
> sure you will get the 'nod' you referred to on page 1 :-)
> 
>  
> 
> For the definition of mqs_image, I agree that it needs work.  Dong Ahn
> also mentioned that it needed to be more rigorously defined. However if
> possible, I think it would be beneficial if we could at least start the
> conversation before next week so that we have a better chance of having
> it nailed down in advance of the next meeting.
> 
>  
> 
> So, that said -- does anyone want to take a first stab at a definition
> to get us started?
> 
>  
> 
> Kathryn
> 
>  
> 
> On May 21, 2013, at 2:18 PM, John DelSignore
> <John.DelSignore at roguewave.com <mailto:John.DelSignore at roguewave.com>>
> wrote:
> 
> 
> 
>     Hi,
> 
>     Attached are my edits and comments on the MPI Message Queue
>     document. Anh provided me with a Word document generated from the
>     LaTex, so the formatting is funky in some places. I enabled change
>     tracking in Word before making my edits, and I added many comments
>     to the document in places where I think we have more work to do.
>     Unfortunately, I think the changes might be somewhat extensive.
> 
>     The volume of edits and comments aside, I think Anh did a great job!
>     The first draft of the document closely reflects the 10+ year-old
>     description of the interface pretty well. Unfortunately, the
>     original interface has some problem that we need to resolve, most
>     critically, we have to resolve how to describe the concept of
>     "mqs_image". We can talk about this during the next concall.
> 
>     Cheers, John D.
> 
> 
>     Anh Vo wrote:
> 
>         Hi all,
> 
>         As mentioned on the tool WG call today, I’m re-sending the
>         latest draft.
>         Feedbacks are appreciated. We’ll send this one out to the wider
>         audience
>         on Tuesday 5/21 to meet the requirement for first reading in June
> 
> 
> 
>         --Anh
> 
>     <MPI-MQD-JVD-2013-05-17.doc>_______________________________________________
>     Mpi3-tools mailing list
>     Mpi3-tools at lists.mpi-forum.org <mailto:Mpi3-tools at lists.mpi-forum.org>
>     http://lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-tools
> 
>  
> 
> ______________________________________________________________
> Kathryn Mohror, kathryn at llnl.gov
> <mailto:kathryn at llnl.gov>, http://people.llnl.gov/mohror1
> CASC @ Lawrence Livermore National Laboratory, Livermore, CA, USA
> 
>  
> 
>  
> 
>  
> 



More information about the mpiwg-tools mailing list