<div dir="ltr">Hi All,<div><br></div><div>I would like to use today's meeting (coming up in 1 hour at 11am CT) to review the new text that I sent out earlier.</div><div><br></div><div>Connection info is on the wiki: <a href="https://github.com/mpiwg-p2p/p2p-issues/wiki">https://github.com/mpiwg-p2p/p2p-issues/wiki</a></div><div><br></div><div> ~Jim.</div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Jan 23, 2017 at 5:22 PM, Jim Dinan <span dir="ltr"><<a href="mailto:james.dinan@gmail.com" target="_blank">james.dinan@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr">Hi All,<div><br></div><div>I made a first attempt at updating the get/set info text with the feedback from the December meeting.  For starters, I'm working with just the communicator get/set info text, so please ignore RMA and I/O for now.  For the previous draft of the proposal, please refer to the PDF posted under "references" on the issue page (<a href="https://github.com/mpi-forum/mpi-issues/issues/63" target="_blank">https://github.com/mpi-forum/<wbr>mpi-issues/issues/63</a>) or the existing PR.</div><div><br></div><div>I pushed the changes to a work-in-progress branch, in case anyone would like to see the history (<a href="https://github.com/mpiwg-p2p/mpi-standard/tree/wip/get-info" target="_blank">https://github.com/mpiwg-p2p/<wbr>mpi-standard/tree/wip/get-info</a><wbr>).  You can also compare with the main spec: <a href="https://github.com/mpi-forum/mpi-standard/compare/mpi-3.x...mpiwg-p2p:wip/get-info?expand=1" target="_blank">https://github.com/mpi-<wbr>forum/mpi-standard/compare/<wbr>mpi-3.x...mpiwg-p2p:wip/get-<wbr>info?expand=1</a></div><div><br></div><div>Here's the to-do list I captured from the last meeting:</div><div><br></div><div> 1. Remove info key deletion by omission in calls to set_info (breaks existing semantic)</div><div> 2. Allow get_info to return keys not set by the user (e.g. "filename" info key)</div><div> 3. Should get_info return all info keys supported by the implementation?</div><div><br></div><div>I took a whack at #1 and #2.  I'm still thinking about how to handle info keys that don't have good defaults (e.g. "filename") and whether #3 is a good idea.  Anyway, without further ado, here is the updated text:</div><div><br></div><div>MPI_COMM_SET_INFO:</div><div><br></div><div><div><font face="monospace, monospace">\mpifunc{MPI\_COMM\_SET\_INFO} updates the hints of the</font></div><div><font face="monospace, monospace">communicator associated with</font></div><div><font face="monospace, monospace">\mpiarg{comm} using the hints provided in \mpiarg{info}.                                              </font></div><div><font face="monospace, monospace">\mpifunc{MPI\_COMM\_SET\_INFO} is a collective                                                        </font></div><div><font face="monospace, monospace">routine. The info object may be different on each process, but any                                    </font></div><div><font face="monospace, monospace">info entries that an implementation requires to be the same on all                                    </font></div><div><font face="monospace, monospace">processes must appear with the same value in each process's info</font></div><div><font face="monospace, monospace">object.</font></div><div><font face="monospace, monospace"><br></font></div><div><font face="monospace, monospace">\begin{users}</font></div><div><font face="monospace, monospace">Some info items that an implementation can use when it creates a                                      </font></div><div><font face="monospace, monospace">communicator cannot easily be changed once the communicator has been</font></div><div><font face="monospace, monospace">created. Thus, an implementation may ignore hints issued in this call</font></div><div><font face="monospace, monospace">that it would have accepted in a creation call.                                                       </font></div><div><font face="monospace, monospace">%</font></div><div><font face="monospace, monospace">An implementation may also be unable to update certain info hints once set.                           </font></div><div><font face="monospace, monospace">%</font></div><div><font face="monospace, monospace">\mpifunc{MPI\_COMM\_GET\_INFO} can be used to determine whether updates</font></div><div><font face="monospace, monospace">to existing info hints were ignored by the implementation.                                            </font></div><div><font face="monospace, monospace">\end{users}</font></div></div><div><br></div><div>MPI_COMM_GET_INFO:</div><div><br></div><div><div><font face="monospace, monospace">\mpifunc{MPI\_COMM\_GET\_INFO} returns a new info object containing</font></div><div><font face="monospace, monospace">the hints of the communicator associated with \mpiarg{comm}.</font></div><div><font face="monospace, monospace">%</font></div><div><font face="monospace, monospace">The current setting of all hints related to this communicator is returned in</font></div><div><font face="monospace, monospace">\mpiarg{info\_used}, including any user-supplied hints that were not ignored</font></div><div><font face="monospace, monospace">by the \MPI/ implementation.</font></div><div><font face="monospace, monospace">%</font></div><div><font face="monospace, monospace">If no such hints</font></div><div><font face="monospace, monospace">exist, a handle to a newly created info object is returned that</font></div><div><font face="monospace, monospace">contains no key/value pair. The user is responsible for freeing</font></div><div><font face="monospace, monospace">\mpiarg{info\_used} via \mpifunc{MPI\_INFO\_FREE}.</font></div><div><font face="monospace, monospace"><br></font></div><div><font face="monospace, monospace">\begin{users}</font></div><div><font face="monospace, monospace">The info object returned in \mpiarg{info\_used} will contain all hints</font></div><div><font face="monospace, monospace">currently active for this communicator. This set of hints may differ</font></div><div><font face="monospace, monospace">from the set of hints specified during communicator creation or in a call</font></div><div><font face="monospace, monospace">to \mpifunc{MPI\_COMM\_SET\_INFO}<wbr>, as some hints and info updates specified</font></div><div><font face="monospace, monospace">by the user may be ignored by \MPI/ implementation.  Additional info hints</font></div><div><font face="monospace, monospace">that are set by \MPI/ implementation may also be present.</font></div><div><font face="monospace, monospace">\end{users}</font></div></div><div><br></div><div>Please send feedback!</div><span class="gmail-HOEnZb"><font color="#888888"><div> ~Jim.</div></font></span></div>
</blockquote></div><br></div></div>