{"action":"created","issue":{"url":"https://api.github.com/repos/Microsoft/CNTK/issues/1258","repository_url":"https://api.github.com/repos/Microsoft/CNTK","labels_url":"https://api.github.com/repos/Microsoft/CNTK/issues/1258/labels{/name}","comments_url":"https://api.github.com/repos/Microsoft/CNTK/issues/1258/comments","events_url":"https://api.github.com/repos/Microsoft/CNTK/issues/1258/events","html_url":"https://github.com/Microsoft/CNTK/pull/1258","id":199335040,"number":1258,"title":"Add deviceId=localRank mode, enabling process select GPU by its local rank","user":{"login":"FDecaYed","id":17164548,"avatar_url":"https://avatars.githubusercontent.com/u/17164548?v=3","gravatar_id":"","url":"https://api.github.com/users/FDecaYed","html_url":"https://github.com/FDecaYed","followers_url":"https://api.github.com/users/FDecaYed/followers","following_url":"https://api.github.com/users/FDecaYed/following{/other_user}","gists_url":"https://api.github.com/users/FDecaYed/gists{/gist_id}","starred_url":"https://api.github.com/users/FDecaYed/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/FDecaYed/subscriptions","organizations_url":"https://api.github.com/users/FDecaYed/orgs","repos_url":"https://api.github.com/users/FDecaYed/repos","events_url":"https://api.github.com/users/FDecaYed/events{/privacy}","received_events_url":"https://api.github.com/users/FDecaYed/received_events","type":"User","site_admin":false},"labels":[{"id":315027028,"url":"https://api.github.com/repos/Microsoft/CNTK/labels/cla-already-signed","name":"cla-already-signed","color":"009800","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2017-01-07T02:34:06Z","updated_at":"2017-01-27T23:15:57Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/Microsoft/CNTK/pulls/1258","html_url":"https://github.com/Microsoft/CNTK/pull/1258","diff_url":"https://github.com/Microsoft/CNTK/pull/1258.diff","patch_url":"https://github.com/Microsoft/CNTK/pull/1258.patch"},"body":"This commit add localRank option. Using this, mpi processes can select GPU base on their local rank.\r\n\r\nTo use:\r\n`cntk configFile=... deviceId=localRank`\r\n\r\nFor example, if we launch 3 processed on 2 nodes\r\nProcess 0 on node 0 with local rank 0 will will try to pick GPU 0 on node 0\r\nProcess 1 and 2 with local rank 0 and 1 will try to pick GPU 0 and 1 on node 1\r\n\r\nUser can also manually select GPU in this mode by tweak GPU order on each node with environment variable in advance. Normally this is not needed, since faster and closer GPUs may have smaller and closer numbers.\r\n\r\nThis commit should cover most of use cases when user know the topology. If other cases needed, we are willing to work on those later. \r\n\r\nNote that due to MPI implementation, windows version is not covered in this commit.\r\n"},"comment":{"url":"https://api.github.com/repos/Microsoft/CNTK/issues/comments/275800447","html_url":"https://github.com/Microsoft/CNTK/pull/1258#issuecomment-275800447","issue_url":"https://api.github.com/repos/Microsoft/CNTK/issues/1258","id":275800447,"user":{"login":"KeDengMS","id":22626095,"avatar_url":"https://avatars.githubusercontent.com/u/22626095?v=3","gravatar_id":"","url":"https://api.github.com/users/KeDengMS","html_url":"https://github.com/KeDengMS","followers_url":"https://api.github.com/users/KeDengMS/followers","following_url":"https://api.github.com/users/KeDengMS/following{/other_user}","gists_url":"https://api.github.com/users/KeDengMS/gists{/gist_id}","starred_url":"https://api.github.com/users/KeDengMS/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KeDengMS/subscriptions","organizations_url":"https://api.github.com/users/KeDengMS/orgs","repos_url":"https://api.github.com/users/KeDengMS/repos","events_url":"https://api.github.com/users/KeDengMS/events{/privacy}","received_events_url":"https://api.github.com/users/KeDengMS/received_events","type":"User","site_admin":false},"created_at":"2017-01-27T23:15:57Z","updated_at":"2017-01-27T23:15:57Z","body":"@FDecaYed My understanding is that this PR fixes the slow start-up in BestGPU::Init when CNTK used to call cudaSetDevice. Now that we've removed it, do you think we still need localRank for GPU selection?"}}
{"actor":{"display_login":"KeDengMS"}}