{"action":"created","issue":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/53","repository_url":"https://api.github.com/repos/wesbland/mpi-forum-historic","labels_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/53/labels{/name}","comments_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/53/comments","events_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/53/events","html_url":"https://github.com/wesbland/mpi-forum-historic/issues/53","id":166679281,"number":53,"title":"Explicitly encourage routines for \"good\" one-sided memory for all memory types","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":"closed","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/7","html_url":"https://github.com/wesbland/mpi-forum-historic/milestones/2009/06/08%20California","labels_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/milestones/7/labels","id":1894747,"number":7,"title":"2009/06/08 California","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":0,"closed_issues":4,"state":"closed","created_at":"2016-07-20T18:12:54Z","updated_at":"2016-07-20T20:53:49Z","due_on":"2009-06-10T04:00:00Z","closed_at":"2016-07-20T18:12:54Z"},"comments":34,"created_at":"2016-07-20T20:52:59Z","updated_at":"2016-07-20T20:53:50Z","closed_at":"2016-07-20T20:53:49Z","body":"**Originally by _schulzm_ on 2008-10-20 12:47:36 -0500**\n\n___\n## Explicitly encourage routines for \"good\" one-sided memory for all memory types\n\nAuthor: Martin Schulz\n\n## Description\n\nThe following advice to implementors can be found on page 323, line 27-40, Section 11.2:\n\n''Advice to implementors.[[BR]]\nIn cases where RMA operations use different mechanisms\nin different memory areas (e.g., load/store in a shared memory segment, and an asynchronous\nhandler in private memory), the MPI_WIN_CREATE call needs to figure out\nwhich type of memory is used for the window. To do so, MPI maintains, internally, the\nlist of memory segments allocated by MPI_ALLOC_MEM, or by other, implementation\nspecific, mechanisms, together with information on the type of memory segment\nallocated. When a call to MPI_WIN_CREATE occurs, then MPI checks which segment\ncontains each window, and decides, accordingly, which mechanism to use for RMA\noperations.[[BR]]\nVendors may provide additional, implementation-specific mechanisms to allow “good”\nmemory to be used for static variables.[[BR]]\nImplementors should document any performance impact of window alignment.[[BR]]\n(End of advice to implementors.)''\n\n\nLine 36 and 37 explicitly restricts this to static variables, which seems artificial \nto me and I propose to remove this restriction. However, the original intent to \npoint out that this is a special problem for static variables, should be maintained\n(although, other memory regions - e.g., heap data not allocated inside a library,\nbut used by a library for one-sided communication - could also benefit from this\nas well).\n\n\n## History\n\n## Proposed Solution\n\nReplace the advice to implementors on page 323 with (this including reviewer comments)\n\n''Advice to implementors.[[BR]]\nIn cases where RMA operations use different mechanisms\nin different memory areas (e.g., load/store in a shared memory segment, and an asynchronous\nhandler in private memory), the MPI_WIN_CREATE call needs to figure out\nwhich type of memory is used for the window. To do so, MPI maintains, internally, the\nlist of memory segments allocated by MPI_ALLOC_MEM, or by other, implementation\nspecific, mechanisms, together with information on the type of memory segment\nallocated. When a call to MPI_WIN_CREATE occurs, then MPI checks which segment\ncontains each window, and decides, accordingly, which mechanism to use for RMA\noperations.[[BR]]\nVendors may provide additional, implementation-specific mechanisms to ~~allow “good”\nmemory to be used for static variables.~~\n__allocate or to specify memory regions that are preferable for use in one sided communication. In particular, such mechanisms can be used to place static variables into such preferred regions.__\nImplementors should document any performance impact of window alignment. [[BR]]\n(End of advice to implementors.)''\n\n\n## Impact on Implementations\n\nNone / all optional\n\n\n## Impact on Applications / Users\nNone / all optional\n\n\n## Alternative Solutions\n\n\n## Entry for the Change Log\n\n"},"comment":{"url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/comments/234079481","html_url":"https://github.com/wesbland/mpi-forum-historic/issues/53#issuecomment-234079481","issue_url":"https://api.github.com/repos/wesbland/mpi-forum-historic/issues/53","id":234079481,"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-20T20:53:50Z","updated_at":"2016-07-20T20:53:50Z","body":"**Originally by @jsquyres on 2010-09-18 05:01:45 -0500**\n\n___\nThis ticket is (long-since) complete; marking it resolved/text committed."}}
{"actor":{"display_login":"wesbland"}}