{"action":"created","issue":{"url":"https://api.github.com/repos/WojciechMula/sse-popcount/issues/5","repository_url":"https://api.github.com/repos/WojciechMula/sse-popcount","labels_url":"https://api.github.com/repos/WojciechMula/sse-popcount/issues/5/labels{/name}","comments_url":"https://api.github.com/repos/WojciechMula/sse-popcount/issues/5/comments","events_url":"https://api.github.com/repos/WojciechMula/sse-popcount/issues/5/events","html_url":"https://github.com/WojciechMula/sse-popcount/pull/5","id":140912147,"number":5,"title":"Add AVX compile target","user":{"login":"jkflying","id":1746276,"avatar_url":"https://avatars.githubusercontent.com/u/1746276?v=3","gravatar_id":"","url":"https://api.github.com/users/jkflying","html_url":"https://github.com/jkflying","followers_url":"https://api.github.com/users/jkflying/followers","following_url":"https://api.github.com/users/jkflying/following{/other_user}","gists_url":"https://api.github.com/users/jkflying/gists{/gist_id}","starred_url":"https://api.github.com/users/jkflying/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jkflying/subscriptions","organizations_url":"https://api.github.com/users/jkflying/orgs","repos_url":"https://api.github.com/users/jkflying/repos","events_url":"https://api.github.com/users/jkflying/events{/privacy}","received_events_url":"https://api.github.com/users/jkflying/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":7,"created_at":"2016-03-15T08:57:32Z","updated_at":"2016-03-30T12:59:18Z","closed_at":"2016-03-15T09:29:24Z","pull_request":{"url":"https://api.github.com/repos/WojciechMula/sse-popcount/pulls/5","html_url":"https://github.com/WojciechMula/sse-popcount/pull/5","diff_url":"https://github.com/WojciechMula/sse-popcount/pull/5.diff","patch_url":"https://github.com/WojciechMula/sse-popcount/pull/5.patch"},"body":"Testing showed that SSSE3 [pshufb] algorithm performed on par with, or better than, the CPU popcnt when compiled with AVX instruction set.\r\ni7 3930K @ 3.2GHz, Ubuntu 14.04, gcc 4.8.5\r\n```\r\n./speed_avx 10000000 1000\r\nLUT (uint8_t[256])            ... time = 3.541451 s\r\nLUT (uint64_t[256])           ... time = 3.526974 s (speedup: 1.00)\r\nbit parallel                  ... time = 4.137992 s (speedup: 0.86)\r\nbit parallel optimized        ... time = 2.734398 s (speedup: 1.30)\r\nHarley-Seal popcount          ... time = 1.099396 s (speedup: 3.22)\r\nbit parallel optimized - SSE  ... time = 0.989633 s (speedup: 3.58)\r\nSSSE3 [pshufb]                ... time = 0.635334 s (speedup: 5.57)\r\nCPU popcnt                    ... time = 0.662304 s (speedup: 5.35)\r\n```"},"comment":{"url":"https://api.github.com/repos/WojciechMula/sse-popcount/issues/comments/203420590","html_url":"https://github.com/WojciechMula/sse-popcount/pull/5#issuecomment-203420590","issue_url":"https://api.github.com/repos/WojciechMula/sse-popcount/issues/5","id":203420590,"user":{"login":"jkflying","id":1746276,"avatar_url":"https://avatars.githubusercontent.com/u/1746276?v=3","gravatar_id":"","url":"https://api.github.com/users/jkflying","html_url":"https://github.com/jkflying","followers_url":"https://api.github.com/users/jkflying/followers","following_url":"https://api.github.com/users/jkflying/following{/other_user}","gists_url":"https://api.github.com/users/jkflying/gists{/gist_id}","starred_url":"https://api.github.com/users/jkflying/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jkflying/subscriptions","organizations_url":"https://api.github.com/users/jkflying/orgs","repos_url":"https://api.github.com/users/jkflying/repos","events_url":"https://api.github.com/users/jkflying/events{/privacy}","received_events_url":"https://api.github.com/users/jkflying/received_events","type":"User","site_admin":false},"created_at":"2016-03-30T12:59:18Z","updated_at":"2016-03-30T12:59:18Z","body":"Busy with this now, GCC 4.8.5 and 5.3.0 on SandyBridge-E 3930K."}}