{"action":"created","issue":{"url":"https://api.github.com/repos/mpi-forum/mpi-issues/issues/63","repository_url":"https://api.github.com/repos/mpi-forum/mpi-issues","labels_url":"https://api.github.com/repos/mpi-forum/mpi-issues/issues/63/labels{/name}","comments_url":"https://api.github.com/repos/mpi-forum/mpi-issues/issues/63/comments","events_url":"https://api.github.com/repos/mpi-forum/mpi-issues/issues/63/events","html_url":"https://github.com/mpi-forum/mpi-issues/issues/63","id":181625866,"number":63,"title":"Info query","user":{"login":"dholmes-epcc-ed-ac-uk","id":13106250,"avatar_url":"https://avatars.githubusercontent.com/u/13106250?v=3","gravatar_id":"","url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk","html_url":"https://github.com/dholmes-epcc-ed-ac-uk","followers_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/followers","following_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/following{/other_user}","gists_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/gists{/gist_id}","starred_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/subscriptions","organizations_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/orgs","repos_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/repos","events_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/events{/privacy}","received_events_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/received_events","type":"User","site_admin":false},"labels":[{"id":264457592,"url":"https://api.github.com/repos/mpi-forum/mpi-issues/labels/mpi%20%3Cnext%3E","name":"mpi <next>","color":"fef2c0","default":false},{"id":263756160,"url":"https://api.github.com/repos/mpi-forum/mpi-issues/labels/not%20ready","name":"not ready","color":"5319e7","default":false},{"id":297687859,"url":"https://api.github.com/repos/mpi-forum/mpi-issues/labels/wg-p2p","name":"wg-p2p","color":"bfe5bf","default":false}],"state":"open","locked":false,"assignee":{"login":"jsquyres","id":617316,"avatar_url":"https://avatars.githubusercontent.com/u/617316?v=3","gravatar_id":"","url":"https://api.github.com/users/jsquyres","html_url":"https://github.com/jsquyres","followers_url":"https://api.github.com/users/jsquyres/followers","following_url":"https://api.github.com/users/jsquyres/following{/other_user}","gists_url":"https://api.github.com/users/jsquyres/gists{/gist_id}","starred_url":"https://api.github.com/users/jsquyres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsquyres/subscriptions","organizations_url":"https://api.github.com/users/jsquyres/orgs","repos_url":"https://api.github.com/users/jsquyres/repos","events_url":"https://api.github.com/users/jsquyres/events{/privacy}","received_events_url":"https://api.github.com/users/jsquyres/received_events","type":"User","site_admin":false},"assignees":[{"login":"jsquyres","id":617316,"avatar_url":"https://avatars.githubusercontent.com/u/617316?v=3","gravatar_id":"","url":"https://api.github.com/users/jsquyres","html_url":"https://github.com/jsquyres","followers_url":"https://api.github.com/users/jsquyres/followers","following_url":"https://api.github.com/users/jsquyres/following{/other_user}","gists_url":"https://api.github.com/users/jsquyres/gists{/gist_id}","starred_url":"https://api.github.com/users/jsquyres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsquyres/subscriptions","organizations_url":"https://api.github.com/users/jsquyres/orgs","repos_url":"https://api.github.com/users/jsquyres/repos","events_url":"https://api.github.com/users/jsquyres/events{/privacy}","received_events_url":"https://api.github.com/users/jsquyres/received_events","type":"User","site_admin":false},{"login":"jdinan","id":3397618,"avatar_url":"https://avatars.githubusercontent.com/u/3397618?v=3","gravatar_id":"","url":"https://api.github.com/users/jdinan","html_url":"https://github.com/jdinan","followers_url":"https://api.github.com/users/jdinan/followers","following_url":"https://api.github.com/users/jdinan/following{/other_user}","gists_url":"https://api.github.com/users/jdinan/gists{/gist_id}","starred_url":"https://api.github.com/users/jdinan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdinan/subscriptions","organizations_url":"https://api.github.com/users/jdinan/orgs","repos_url":"https://api.github.com/users/jdinan/repos","events_url":"https://api.github.com/users/jdinan/events{/privacy}","received_events_url":"https://api.github.com/users/jdinan/received_events","type":"User","site_admin":false},{"login":"dholmes-epcc-ed-ac-uk","id":13106250,"avatar_url":"https://avatars.githubusercontent.com/u/13106250?v=3","gravatar_id":"","url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk","html_url":"https://github.com/dholmes-epcc-ed-ac-uk","followers_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/followers","following_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/following{/other_user}","gists_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/gists{/gist_id}","starred_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/subscriptions","organizations_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/orgs","repos_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/repos","events_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/events{/privacy}","received_events_url":"https://api.github.com/users/dholmes-epcc-ed-ac-uk/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/mpi-forum/mpi-issues/milestones/6","html_url":"https://github.com/mpi-forum/mpi-issues/milestones/2016-12%20Dallas,%20USA","labels_url":"https://api.github.com/repos/mpi-forum/mpi-issues/milestones/6/labels","id":1331011,"number":6,"title":"2016-12 Dallas, USA","description":"","creator":{"login":"jsquyres","id":617316,"avatar_url":"https://avatars.githubusercontent.com/u/617316?v=3","gravatar_id":"","url":"https://api.github.com/users/jsquyres","html_url":"https://github.com/jsquyres","followers_url":"https://api.github.com/users/jsquyres/followers","following_url":"https://api.github.com/users/jsquyres/following{/other_user}","gists_url":"https://api.github.com/users/jsquyres/gists{/gist_id}","starred_url":"https://api.github.com/users/jsquyres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jsquyres/subscriptions","organizations_url":"https://api.github.com/users/jsquyres/orgs","repos_url":"https://api.github.com/users/jsquyres/repos","events_url":"https://api.github.com/users/jsquyres/events{/privacy}","received_events_url":"https://api.github.com/users/jsquyres/received_events","type":"User","site_admin":false},"open_issues":5,"closed_issues":0,"state":"open","created_at":"2015-09-30T12:30:06Z","updated_at":"2016-10-12T12:43:39Z","due_on":"2016-12-07T06:00:00Z","closed_at":null},"comments":19,"created_at":"2016-10-07T09:42:39Z","updated_at":"2016-10-31T17:47:10Z","closed_at":null,"body":"# Problem\n\nContext: MPI_Comm/File/Win_get_info\n\n> MPI_COMM_GET_INFO returns a new info object containing the hints of the communicator associated with comm. The current setting of all hints **`actually used`** by the system related to this communicator is returned in info_used. If no such hints exist, a handle to a newly created info object is returned that contains no key/value pair. The user is responsible for freeing info_used via MPI_INFO_FREE.\n\nWhat does “actually used” mean?\n- Info settings exactly as supplied by the user (e.g. during creation or in set_info)\n- Current effective values of info keys (even if different/not supplied by user)\n- Implementation defined (this is the most common current interpretation)\n\nAlso, when can the value for an info key change?\n- Whenever the MPI library feels like it?\n- Only in user calls that access/set a particular info key?\n# Proposal\n- MPI maintains an internal INFO state for each Comm/File/Win object.\n  - Different INFO state for each object.\n  - The INFO state is created/set/referenced during creation of the Comm/File/Win object.\n  - The INFO state may be INFO_NULL, if no keys support by MPI.\n  - The INFO state may be some common default Info object, if no user-supplied key/values.\n- MPI_[Comm|File|Win]_get_info returns MPI’s current internal INFO state.\n- MPI_[Comm|File|Win]_set_info attempts to modify MPI’s internal INFO state.\n  - MPI may ignore supplied keys, whether or not that key is current set in the internal state.\n  - MPI may choose different values for supplied keys, (not user value and not internal value).\n  - MPI must not change values for keys not supplied by the user in the set function call.\n  - MPI must not choose more restrictive values for assertion keys.\n  - MPI may choose any less restrictive (or equally restrictive) value for any info key.\n  - MPI does not have to store user keys that it does not understand (it is not a cache).\n# Changes to the Text\n\nTBD: Describe the text changes here.\n# Impact on Implementations\n\nAlmost useless but minimal work implementation: ignore _all_ info keys, i.e. do not even store them. Always return INFO_NULL from all info query functions.\n\nMore useful but more work implementation: for each info key that can have some sort of internal effect on the MPI library, store the key as supplied by the user with the most appropriate value, i.e. the value that most closely represents what the MPI library will implement.\n# Impact on Users\n\nThis change addresses the current ambiguity regarding info query functions allowing the user to predict, and rely on, the results.\n# References\n\nProblem specification slides were presented to the Sept 2016 meeting:\nhttps://docs.google.com/presentation/d/10EPCx2LuJ0BWCeUXIG3pXJjqQs1tlnlO-6TJXIC8G8Q/edit?usp=sharing\nThe final slide was added during the face-to-face meeting to capture the result of discussion.\n\nInsert any internal (other issues) or external (websites, papers, etc.) references here.\n"},"comment":{"url":"https://api.github.com/repos/mpi-forum/mpi-issues/issues/comments/257366406","html_url":"https://github.com/mpi-forum/mpi-issues/issues/63#issuecomment-257366406","issue_url":"https://api.github.com/repos/mpi-forum/mpi-issues/issues/63","id":257366406,"user":{"login":"jdinan","id":3397618,"avatar_url":"https://avatars.githubusercontent.com/u/3397618?v=3","gravatar_id":"","url":"https://api.github.com/users/jdinan","html_url":"https://github.com/jdinan","followers_url":"https://api.github.com/users/jdinan/followers","following_url":"https://api.github.com/users/jdinan/following{/other_user}","gists_url":"https://api.github.com/users/jdinan/gists{/gist_id}","starred_url":"https://api.github.com/users/jdinan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jdinan/subscriptions","organizations_url":"https://api.github.com/users/jdinan/orgs","repos_url":"https://api.github.com/users/jdinan/repos","events_url":"https://api.github.com/users/jdinan/events{/privacy}","received_events_url":"https://api.github.com/users/jdinan/received_events","type":"User","site_admin":false},"created_at":"2016-10-31T17:47:10Z","updated_at":"2016-10-31T17:47:10Z","body":"@jsquyres Well .. it's a weird API, so the fix is probably also going to look weird.  :)\r\n\r\n1) Ok, I see your point that behavior is a subset of (k,v), so we should be talking about the latter.\r\n\r\n2) I think what I'm proposing is something like treating info as a request/response API that allows the user to request options on an MPI object, but without exposing the internal parameters that the MPI library might be using internally.\r\n\r\n"}}
{"actor":{"display_login":"jdinan"}}