{"action":"created","issue":{"url":"https://api.github.com/repos/apache/incubator-mxnet/issues/10277","repository_url":"https://api.github.com/repos/apache/incubator-mxnet","labels_url":"https://api.github.com/repos/apache/incubator-mxnet/issues/10277/labels{/name}","comments_url":"https://api.github.com/repos/apache/incubator-mxnet/issues/10277/comments","events_url":"https://api.github.com/repos/apache/incubator-mxnet/issues/10277/events","html_url":"https://github.com/apache/incubator-mxnet/issues/10277","id":309119083,"number":10277,"title":"Flaky test_random.test_shuffle","user":{"login":"marcoabreu","id":18629099,"avatar_url":"https://avatars1.githubusercontent.com/u/18629099?v=4","gravatar_id":"","url":"https://api.github.com/users/marcoabreu","html_url":"https://github.com/marcoabreu","followers_url":"https://api.github.com/users/marcoabreu/followers","following_url":"https://api.github.com/users/marcoabreu/following{/other_user}","gists_url":"https://api.github.com/users/marcoabreu/gists{/gist_id}","starred_url":"https://api.github.com/users/marcoabreu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/marcoabreu/subscriptions","organizations_url":"https://api.github.com/users/marcoabreu/orgs","repos_url":"https://api.github.com/users/marcoabreu/repos","events_url":"https://api.github.com/users/marcoabreu/events{/privacy}","received_events_url":"https://api.github.com/users/marcoabreu/received_events","type":"User","site_admin":false},"labels":[{"id":721783588,"url":"https://api.github.com/repos/apache/incubator-mxnet/labels/Flaky","name":"Flaky","color":"fc2929","default":false},{"id":721783490,"url":"https://api.github.com/repos/apache/incubator-mxnet/labels/Test","name":"Test","color":"fbca04","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":8,"created_at":"2018-03-27T20:21:35Z","updated_at":"2018-03-30T07:28:30Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"http://jenkins.mxnet-ci.amazon-ml.com/blue/organizations/jenkins/incubator-mxnet/detail/master/542/pipeline\r\n\r\n```\r\n======================================================================\r\n\r\nFAIL: test_random.test_shuffle\r\n\r\n----------------------------------------------------------------------\r\n\r\nTraceback (most recent call last):\r\n\r\n  File \"C:\\Anaconda3\\envs\\py2\\lib\\site-packages\\nose\\case.py\", line 197, in runTest\r\n\r\n    self.test(*self.arg)\r\n\r\n  File \"C:\\jenkins_slave\\workspace\\ut-python-gpu\\tests\\python\\unittest\\common.py\", line 157, in test_new\r\n\r\n    orig_test(*args, **kwargs)\r\n\r\n  File \"C:\\jenkins_slave\\workspace\\ut-python-gpu\\tests\\python\\unittest\\test_random.py\", line 625, in test_shuffle\r\n\r\n    testSmall(mx.nd.arange(0, 3), 100, 20000)\r\n\r\n  File \"C:\\jenkins_slave\\workspace\\ut-python-gpu\\tests\\python\\unittest\\test_random.py\", line 599, in testSmall\r\n\r\n    assert abs(1. * count[str(mx.nd.array(p))] / repeat2 - 1. / math.factorial(data.shape[0])) < 0.01\r\n\r\nAssertionError: \r\n\r\n-------------------- >> begin captured logging << --------------------\r\n\r\ncommon: INFO: Setting test np/mx/python random seeds, use MXNET_TEST_SEED=1485655931 to reproduce.\r\n\r\n--------------------- >> end captured logging << ---------------------\r\n```\r\n\r\nhttps://issues.apache.org/jira/browse/MXNET-236"},"comment":{"url":"https://api.github.com/repos/apache/incubator-mxnet/issues/comments/377465884","html_url":"https://github.com/apache/incubator-mxnet/issues/10277#issuecomment-377465884","issue_url":"https://api.github.com/repos/apache/incubator-mxnet/issues/10277","id":377465884,"user":{"login":"asitstands","id":36436141,"avatar_url":"https://avatars1.githubusercontent.com/u/36436141?v=4","gravatar_id":"","url":"https://api.github.com/users/asitstands","html_url":"https://github.com/asitstands","followers_url":"https://api.github.com/users/asitstands/followers","following_url":"https://api.github.com/users/asitstands/following{/other_user}","gists_url":"https://api.github.com/users/asitstands/gists{/gist_id}","starred_url":"https://api.github.com/users/asitstands/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/asitstands/subscriptions","organizations_url":"https://api.github.com/users/asitstands/orgs","repos_url":"https://api.github.com/users/asitstands/repos","events_url":"https://api.github.com/users/asitstands/events{/privacy}","received_events_url":"https://api.github.com/users/asitstands/received_events","type":"User","site_admin":false},"created_at":"2018-03-30T07:28:30Z","updated_at":"2018-03-30T07:28:30Z","author_association":"CONTRIBUTOR","body":"@marcoabreu The implementation of `shuffle` already uses parallelism. On GPU, it utilizes parallel sorting algorithm and the memory swap is also parallelized. On CPU it uses GNU's parallel implementation of `std::random_shuffle` if the array is 1D. Only for higher dimensional arrays in CPU, the implementation is sequential. The optimization in this case is not trivial due to the diversity of data shape and hardware. I have tested a naive parallelization of the memory copy for the case. You can see the result in this [comment](https://github.com/apache/incubator-mxnet/pull/10048#discussion_r173857649). You have asked the test but I forgot mentioning you at the comment :)"}}
{"actor":{"display_login":"asitstands"}}