{"action":"created","issue":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/109","repository_url":"https://api.github.com/repos/wesbland/mpi-forum-historic","labels_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/109/labels{/name}","comments_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/109/comments","events_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/109/events","html_url":"https://github.com/wesbland/mpi-forum-historic/issues/109","id":166837140,"number":109,"title":"Nonblocking Collective Operations","user":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"assignees":[{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/milestones/5","html_url":"https://github.com/wesbland/mpi-forum-historic/milestones/2009/02/09%20San%20Jose","labels_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/milestones/5/labels","id":1894745,"number":5,"title":"2009/02/09 San Jose","description":"","creator":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":15,"state":"closed","created_at":"2016-07-20T18:12:53Z","updated_at":"2016-07-21T14:44:26Z","due_on":"2009-02-11T05:00:00Z","closed_at":"2016-07-20T18:12:53Z"},"comments":55,"created_at":"2016-07-21T14:44:22Z","updated_at":"2016-07-21T14:45:59Z","closed_at":null,"body":"**Originally by _htor_ on 2009-01-21 12:53:26 -0600**\n\n___\nAuthor: Torsten Hoefler\n\n## Description\nNonblocking collective operations provide optimization potential and new semantic properties to the user. \n\n## History\n\nThis particular issue (and proposal) has been discussed several times at the MPI Forum. An official reading was performed at the December 2008 meeting.\n\n## Proposed Solution\n\nMPI-2.1 Sections 5.1 (p129:19-42, p131:11-33) and Section 5.2.2 (p133:6-29, p133:41-p134:5) are modified according to the new text shown in the attached pdf. A new Section 5.12 \"Nonblocking Collective Operations\" is added. At the end of MPI-2.1 Sect. 5.12 (in the attached pdf, it is Sect. 5.13), new examples are added, starting with Example 5.28 in the attached pdf.\n\nThe following tickets discuss subitems of this ticket:\n - ~~NBC - Phrasing for send buffer restriction ~~#81\n - ~~NBC - number of outstanding collectives/requests ~~#82\n - ~~NBC - rationale against MPI_Request_free ~~#83\n - ~~NBC - status object handling ~~#84\n - ~~NBC - overloaded word \"operation\" ~~#85\n - ~~NBC - dealing with many requests - advice to implementers ~~#86\n - ~~NBC - Ireduce discussion ~~#112\n\nand are currently under review. They will be merged and closed (striked) as soon as the individual reviews are done.\n\n## Impact on Implementations\n\nMinor, new operations have to be added. However, a full open-source implementation is available with [LibNBC](http://www.unixer.de/research/nbcoll/libnbc/) and possible implementation options are well documented. [LibNBC](http://www.unixer.de/research/nbcoll/libnbc/) is BSD licensed and could be included in any MPI library as a first step.\n\n## Impact on Applications / Users\n\nNone, new API functions become available for use.\n\n## Alternative Solutions\nSplit collectives (see JoD) have been discussed and are generally considered as too limited.\n\n## Entry for the Change Log\nAdded nonblocking interfaces to all collective operations"},"comment":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/comments/234276506","html_url":"https://github.com/wesbland/mpi-forum-historic/issues/109#issuecomment-234276506","issue_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/109","id":234276506,"user":{"login":"wesbland","id":1561207,"avatar_url":"https://avatars.githubusercontent.com/u/1561207?v=3","gravatar_id":"","url":"https://api.github.com/users/wesbland","html_url":"https://github.com/wesbland","followers_url":"https://api.github.com/users/wesbland/followers","following_url":"https://api.github.com/users/wesbland/following{/other_user}","gists_url":"https://api.github.com/users/wesbland/gists{/gist_id}","starred_url":"https://api.github.com/users/wesbland/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/wesbland/subscriptions","organizations_url":"https://api.github.com/users/wesbland/orgs","repos_url":"https://api.github.com/users/wesbland/repos","events_url":"https://api.github.com/users/wesbland/events{/privacy}","received_events_url":"https://api.github.com/users/wesbland/received_events","type":"User","site_admin":false},"created_at":"2016-07-21T14:45:58Z","updated_at":"2016-07-21T14:45:58Z","body":"**Originally by _htor_ on 2010-11-02 10:09:32 -0500**\n\n___\nReplying to RolfRabenseifner:\n> Whether we use now the text in my last comment or, a more complete text, \n> we can decide now or later, but I would prefer a more complete text,\n> because then it is clear why this exception is only for 4 completion routines:\n> \n>   The fields in a status object returned by a call to MPI_WAIT, MPI_TEST, or\n>   MPI_{TEST|WAIT}{ALL|SOME|ANY}, where the request corresponds to a nonblocking\n>   collective call, are undefined, with one exceptions: The error status field\n>   will contain valid information if the wait or test call returned with MPI_ERR_IN_STATUS.\n>   MPI_ERR_IN_STATUS can be returned only by MPI_{TEST|WAIT}{ALL|SOME}, because \n>   only these MPI completion functions take arrays of MPI_STATUS. \n\nRolf and I decided to adopt this minor change (with slight modifications) and clear fix after a phone call. It now reads:\n\n\"The fields in a status object returned by a call to MPI_WAIT, MPI_TEST, or any of the other derived functions (MPI_{TEST|WAIT}{ALL|SOME|ANY}), where the request corresponds to a send call, are undefined, with one exception: The error status field will contain valid information if the wait or test call returned with MPI_ERR_IN_STATUS. MPI_ERR_IN_STATUS should be returned only by MPI_{TEST|WAIT}{ALL|SOME}, because only these MPI completion functions take arrays of MPI_STATUS.\"\n\nSee revision 679.\n\nThanks,\n   Torsten"}}
{"actor":{"display_login":"wesbland"}}