Skip to content
Dan Holmes edited this page Nov 7, 2016 · 1 revision

7th November 2016 Meeting Notes

Attendees

Dan Holmes
Jim Dinan
Ken Raffenetti

Agenda

  1. deprecate MPI_Cancel for send requests (issue #26 on git)

    The ticket and the text have been updated, as per Rolf's suggestions. Rolf and Jim have reviewed it and are happy. Need one more reviewer. Volunteer: Ken.

  2. assertions via info keys (issue #11 on git)

    No changes from previous meeting. Voting was postponed due to INFO GET/SET problems (issue #63 on git).

  3. the INFO GET/SET problem (issue #63 on git)

    Lots of good discussion on the issue in github. Bringing together the strands of that discussion gives this suggestion:

     Principles:
     a. the key/value pairs returned by MPI_GET_INFO must always have been supplied by the user and not ignored by the MPI library
     b. the semantics of supplying an INFO during object creation and during MPI_SET_INFO should be identically defined
     c. the MPI is permitted, but not required, to 'ignore' any INFO key/value pair supplied by the user
     d. if an INFO key/value pair is ignored by MPI, then it will not appear in subsequent MPI_GET_INFO calls
     e. if an INFO key/value pair was not ignored by MPI, then it must appear in subsequent MPI_GET_INFO calls
    

    The language of "actually used by the MPI library" is unhelpful and should be removed from the MPI Standard. The definable semantic is "ignored" vs. "not ignored", i.e. visibility using MPI_GET_INFO. If a key/value does not appear in a subsequent MPI_GET_INFO then MPI ignored it and the user knows that it had no effect. If a key/value does appear in a subsequent MPI_GET_INFO then MPI did not ignore it, but the user cannot determine what effect, if any, it has had. If MPI does not ignore a key/value that represents an assertion then the user is bound by that assertion.

     Scenarios:
     a. MPI_COMM_DUP_WITH_INFO(MPI_INFO_NULL);MPI_COMM_GET_INFO(info);
        the returned INFO object will be MPI_INFO_NULL - no key/values supplied
     b. MPI_COMM_DUP_WITH_INFO( INFO{(kBad1,vGood1), (kGood2,vBad2)} );MPI_COMM_GET_INFO(info);
        the returned INFO object will be MPI_INFO_NULL - all key/values ignored
     c. MPI_COMM_DUP_WITH_INFO(MPI_INFO_NULL);MPI_COMM_SET_INFO( INFO{kGoodAtCreationOnly, vGood1} );MPI_COMM_GET_INFO(info); 
        the returned INFO object will be MPI_INFO_NULL - all key/values ignored
     c. MPI_COMM_DUP_WITH_INFO( INFO{kGoodAtCreationOnly, vGood1} );MPI_COMM_SET_INFO( INFO{kGoodAtCreationOnly, vGood2} );MPI_COMM_GET_INFO(info); 
        the returned INFO object will be INFO{kGoodAtCreationOnly, vGood1} - all key/values from SET ignored
    
     Notes added to issue #63. Intention is to draft changes to the MPI Standard for reading at December meeting.
    

DONM: Mon 21st Nov 2016

Active Topics

Info query:

Issue #63 -> PR #27


Arecv and Fsend:

Issue #32 -> PR (none yet)


FP16:

Issue #65 -> PR (none yet)

Issue #66 -> PR (none yet)

Clone this wiki locally