Jeff: Hmm. My expectation was there would be query functions for individual fields, a la MPI_Get_count. I guess I don't have a strong feeling about it -- when you want only one field, you will pay a somewhat significant cost with your approach but your approach will be an even bigger win when you want all of them. It may be harder for an implementation to add fields with your approach, I don't know... Bronis On Thu, 16 Apr 2009, Jeff Squyres wrote:
I took a first shot at removing the One Big Struct-ness (OBS) of the MPI handles proposal: I removed the OBS from communicators and replaced it with several "query" functions. A few structs still remain -- those that are all pointers, for example, or those that will likely otherwise not be problematic (e.g., not have holes).
I only updated the communicators section in the header file; I did not yet update the other 3 handle types that were prototyped (MPI_Status, MPI_Request, MPI_Errhandler). I also did not yet update the implementation to match, so it won't compile. I wanted to get some feedback from the group before continuing.
What about enums -- will those be problematic? I tended to prefer enums in most places (vs. #define's) because a debugger can show those value names (when debugging this software itself -- not necessarily when in general use by a debugger for an MPI job). If enums are going to be problematic, I can switch to #defines -- but it would be nice not to, if possible.
The communicator "query" functions that I created start around line 649:
http:// www. open-mpi.org/hg/hgwebdir.cgi/jsquyres/mpi3-tools-handles/file/4c5c1e7c0ef1/ompi/debuggers/mpihandles_interface.h#l649
Could I get some comments on the group as to the general style of what I did?
If the web interface is too klunky for you, you can clone the repo with Mercurial:
hg clone http:// www. open-mpi.org/hg/hgwebdir.cgi/jsquyres/mpi3-tools-handles
The individual file to look at is ompi/debuggers/mpihandles_interface.h.
-- Jeff Squyres Cisco Systems
_______________________________________________ Mpi3-tools mailing list [email protected] http:// lists.mpi-forum.org/mailman/listinfo.cgi/mpi3-tools