{"action":"created","issue":{"url":"https://api.github.com/repos/raffenet/mpich-migrate-test/issues/2046","repository_url":"https://api.github.com/repos/raffenet/mpich-migrate-test","labels_url":"https://api.github.com/repos/raffenet/mpich-migrate-test/issues/2046/labels{/name}","comments_url":"https://api.github.com/repos/raffenet/mpich-migrate-test/issues/2046/comments","events_url":"https://api.github.com/repos/raffenet/mpich-migrate-test/issues/2046/events","html_url":"https://github.com/raffenet/mpich-migrate-test/issues/2046","id":169269853,"number":2046,"title":"Incorrect semantics in test/mpi/rma/reqops.c","user":{"login":"raffenet","id":1410792,"avatar_url":"https://avatars.githubusercontent.com/u/1410792?v=3","gravatar_id":"","url":"https://api.github.com/users/raffenet","html_url":"https://github.com/raffenet","followers_url":"https://api.github.com/users/raffenet/followers","following_url":"https://api.github.com/users/raffenet/following{/other_user}","gists_url":"https://api.github.com/users/raffenet/gists{/gist_id}","starred_url":"https://api.github.com/users/raffenet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raffenet/subscriptions","organizations_url":"https://api.github.com/users/raffenet/orgs","repos_url":"https://api.github.com/users/raffenet/repos","events_url":"https://api.github.com/users/raffenet/events{/privacy}","received_events_url":"https://api.github.com/users/raffenet/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"raffenet","id":1410792,"avatar_url":"https://avatars.githubusercontent.com/u/1410792?v=3","gravatar_id":"","url":"https://api.github.com/users/raffenet","html_url":"https://github.com/raffenet","followers_url":"https://api.github.com/users/raffenet/followers","following_url":"https://api.github.com/users/raffenet/following{/other_user}","gists_url":"https://api.github.com/users/raffenet/gists{/gist_id}","starred_url":"https://api.github.com/users/raffenet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raffenet/subscriptions","organizations_url":"https://api.github.com/users/raffenet/orgs","repos_url":"https://api.github.com/users/raffenet/repos","events_url":"https://api.github.com/users/raffenet/events{/privacy}","received_events_url":"https://api.github.com/users/raffenet/received_events","type":"User","site_admin":false},"assignees":[{"login":"raffenet","id":1410792,"avatar_url":"https://avatars.githubusercontent.com/u/1410792?v=3","gravatar_id":"","url":"https://api.github.com/users/raffenet","html_url":"https://github.com/raffenet","followers_url":"https://api.github.com/users/raffenet/followers","following_url":"https://api.github.com/users/raffenet/following{/other_user}","gists_url":"https://api.github.com/users/raffenet/gists{/gist_id}","starred_url":"https://api.github.com/users/raffenet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raffenet/subscriptions","organizations_url":"https://api.github.com/users/raffenet/orgs","repos_url":"https://api.github.com/users/raffenet/repos","events_url":"https://api.github.com/users/raffenet/events{/privacy}","received_events_url":"https://api.github.com/users/raffenet/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/raffenet/mpich-migrate-test/milestones/25","html_url":"https://github.com/raffenet/mpich-migrate-test/milestones/mpich-3.3","labels_url":"https://api.github.com/repos/raffenet/mpich-migrate-test/milestones/25/labels","id":1911855,"number":25,"title":"mpich-3.3","description":"This is a feature-oriented release, with a large number of major features planned (full list below).  The features are more of a wish-list, so they do not hold-up the release.\r\n\r\n'''Major Features:'''\r\n  1. MPICH/CH4\r\n     1. Scalable communication with large number of peers\r\n     1. Improvements for fine-grained communication (message rate and such)\r\n     1. OFI support\r\n     1. UCX support\r\n     1. Portals4 support\r\n  1. MPI+thread optimizations\r\n      * Thread arbitration optimizations\r\n      * Fine-grained threading optimizations\r\n  1. Topology function improvements (Comm_split_type and Cart/graph_create)\r\n  1. Derived datatypes\r\n      * Loop computation optimizations (DAME infrastructure)\r\n      * Dataloop comparison functionality\r\n  1. ptmalloc support\r\n","creator":{"login":"raffenet","id":1410792,"avatar_url":"https://avatars.githubusercontent.com/u/1410792?v=3","gravatar_id":"","url":"https://api.github.com/users/raffenet","html_url":"https://github.com/raffenet","followers_url":"https://api.github.com/users/raffenet/followers","following_url":"https://api.github.com/users/raffenet/following{/other_user}","gists_url":"https://api.github.com/users/raffenet/gists{/gist_id}","starred_url":"https://api.github.com/users/raffenet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raffenet/subscriptions","organizations_url":"https://api.github.com/users/raffenet/orgs","repos_url":"https://api.github.com/users/raffenet/repos","events_url":"https://api.github.com/users/raffenet/events{/privacy}","received_events_url":"https://api.github.com/users/raffenet/received_events","type":"User","site_admin":false},"open_issues":49,"closed_issues":4,"state":"open","created_at":"2016-07-29T14:57:31Z","updated_at":"2016-08-04T01:15:49Z","due_on":"2017-05-01T05:00:00Z","closed_at":null},"comments":2,"created_at":"2016-08-04T01:15:46Z","updated_at":"2016-08-04T01:15:49Z","closed_at":null,"body":"**Originally on 2014-02-26 12:53:08 -0600**\n\n___\nOriginally reported to devel@mpich by Nathan Hjelm:\n\nHello, I am finishing MPI-3 RMA support in Open MPI and I am using the\nMPICH test suite to test the new functionality before release. I think\nI found a bug in one of your tests. The reqops test does the following\nin one of its loops:\n\n```\n   for (i = 0; i < ITER; i++) {\n       MPI_Request req;\n       int val # -1, exp-1;\n\n       /* Processes form a ring.  Process 0 starts first, then passes a token\n        - to the right.  Each process, in turn, performs third-party\n        - communication via process 0's window. */\n       if (rank > 0) {\n           MPI_Recv(NULL, 0, MPI_BYTE, rank-1, 0, MPI_COMM_WORLD, MPI_STATUS_IGNORE);\n       }\n\n       MPI_Rget(&val, 1, MPI_INT, 0, 0, 1, MPI_INT, window, &req);\n       assert(req != MPI_REQUEST_NULL);\n       MPI_Wait(&req, MPI_STATUS_IGNORE);\n\n       MPI_Rput(&rank, 1, MPI_INT, 0, 0, 1, MPI_INT, window, &req);\n       assert(req != MPI_REQUEST_NULL);\n       MPI_Wait(&req, MPI_STATUS_IGNORE);\n\n       exp = (rank + nproc-1) % nproc;\n\n       if (val != exp) {\n           printf(\"%d - Got %d, expected %d\\n\", rank, val, exp);\n           errors++;\n       }\n\n       if (rank < nproc-1) {\n           MPI_Send(NULL, 0, MPI_BYTE, rank+1, 0, MPI_COMM_WORLD);\n       }\n\n       MPI_Barrier(MPI_COMM_WORLD);\n   }\n```\n\nThe problem is that no call is being made to ensure the RMA operation is\ncomplete at the target as per MPI-3 p432 13-17:\n\n\"The completion of an MPI_RPUT operation (i.e., after the corresponding\ntest or wait) indicates that the sender is now free to update the\nlocations in the origin buffer. It does not indicate that the data is\navailable at the target window. If remote completion is required,\nMPI_WIN_FLUSH, MPI_WIN_FLUSH_ALL, MPI_WIN_UNLOCK, or MPI_WIN_UNLOCK_ALL\ncan be used.\"\n\nNot ensuring remote completion may cause processes further down the ring\nto read a value written by a process other than the previous process in\nthe ring.\n\nThe fix is to add MPI_Win_flush (0, window) before the MPI_Send. I can\nconfirm that this fixes the issue with Open MPI. Please see the attached\npatch.\n\n-Nathan Hjelm\nHPC-5, LANL"},"comment":{"url":"https://api.github.com/repos/raffenet/mpich-migrate-test/issues/comments/237423024","html_url":"https://github.com/raffenet/mpich-migrate-test/issues/2046#issuecomment-237423024","issue_url":"https://api.github.com/repos/raffenet/mpich-migrate-test/issues/2046","id":237423024,"user":{"login":"raffenet","id":1410792,"avatar_url":"https://avatars.githubusercontent.com/u/1410792?v=3","gravatar_id":"","url":"https://api.github.com/users/raffenet","html_url":"https://github.com/raffenet","followers_url":"https://api.github.com/users/raffenet/followers","following_url":"https://api.github.com/users/raffenet/following{/other_user}","gists_url":"https://api.github.com/users/raffenet/gists{/gist_id}","starred_url":"https://api.github.com/users/raffenet/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raffenet/subscriptions","organizations_url":"https://api.github.com/users/raffenet/orgs","repos_url":"https://api.github.com/users/raffenet/repos","events_url":"https://api.github.com/users/raffenet/events{/privacy}","received_events_url":"https://api.github.com/users/raffenet/received_events","type":"User","site_admin":false},"created_at":"2016-08-04T01:15:48Z","updated_at":"2016-08-04T01:15:48Z","body":"**Originally by _balaji@mcs.anl.gov_ on 2014-02-27 07:43:43 -0600**\n\n___\nImproved formatting.  The previous ticket description had code interspersed with text which made it unreadable."}}
{"actor":{"display_login":"raffenet"}}