{"action":"created","issue":{"url":"https://api.github.com/repos/CNugteren/CLBlast/issues/82","repository_url":"https://api.github.com/repos/CNugteren/CLBlast","labels_url":"https://api.github.com/repos/CNugteren/CLBlast/issues/82/labels{/name}","comments_url":"https://api.github.com/repos/CNugteren/CLBlast/issues/82/comments","events_url":"https://api.github.com/repos/CNugteren/CLBlast/issues/82/events","html_url":"https://github.com/CNugteren/CLBlast/issues/82","id":165538152,"number":82,"title":"Performance parity with clBLAS (for small sizes)","user":{"login":"gcp","id":1104290,"avatar_url":"https://avatars.githubusercontent.com/u/1104290?v=3","gravatar_id":"","url":"https://api.github.com/users/gcp","html_url":"https://github.com/gcp","followers_url":"https://api.github.com/users/gcp/followers","following_url":"https://api.github.com/users/gcp/following{/other_user}","gists_url":"https://api.github.com/users/gcp/gists{/gist_id}","starred_url":"https://api.github.com/users/gcp/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gcp/subscriptions","organizations_url":"https://api.github.com/users/gcp/orgs","repos_url":"https://api.github.com/users/gcp/repos","events_url":"https://api.github.com/users/gcp/events{/privacy}","received_events_url":"https://api.github.com/users/gcp/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":5,"created_at":"2016-07-14T11:21:07Z","updated_at":"2016-10-08T20:12:49Z","closed_at":null,"body":"Although complete performance parity with clBLAS is likely out of scope for this project, because clBLAS contains very specific kernels to work around limitations of AMD devices, we'd preferably still be as close as possible to its performance.\r\n\r\nOf particular interest are situations where clBLAS outperforms CLBLast on NVIDIA or Intel hardware.\r\n\r\nAs described in issue #73, small or irregular configurations like (128,361,1152) are up to a factor of 3x slower on AMD, and 2x on NVIDIA, compared to clBLAS."},"comment":{"url":"https://api.github.com/repos/CNugteren/CLBlast/issues/comments/252445857","html_url":"https://github.com/CNugteren/CLBlast/issues/82#issuecomment-252445857","issue_url":"https://api.github.com/repos/CNugteren/CLBlast/issues/82","id":252445857,"user":{"login":"CNugteren","id":1162108,"avatar_url":"https://avatars.githubusercontent.com/u/1162108?v=3","gravatar_id":"","url":"https://api.github.com/users/CNugteren","html_url":"https://github.com/CNugteren","followers_url":"https://api.github.com/users/CNugteren/followers","following_url":"https://api.github.com/users/CNugteren/following{/other_user}","gists_url":"https://api.github.com/users/CNugteren/gists{/gist_id}","starred_url":"https://api.github.com/users/CNugteren/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/CNugteren/subscriptions","organizations_url":"https://api.github.com/users/CNugteren/orgs","repos_url":"https://api.github.com/users/CNugteren/repos","events_url":"https://api.github.com/users/CNugteren/events{/privacy}","received_events_url":"https://api.github.com/users/CNugteren/received_events","type":"User","site_admin":false},"created_at":"2016-10-08T20:12:49Z","updated_at":"2016-10-08T20:12:49Z","body":"I've done some proper benchmarking now. Attached are two graphs ('new' with the new direct kernel for `m*n*k < 512*512*512` and 'old' with only the indirect kernel) for the Radeon M370X:\r\n[SGEMM_M370X_new.pdf](https://github.com/CNugteren/CLBlast/files/517908/SGEMM_M370X_new.pdf)\r\n[SGEMM_M370X_old.pdf](https://github.com/CNugteren/CLBlast/files/517907/SGEMM_M370X_old.pdf)\r\n\r\nAs you can see, performance is in general better than clBLAS with exceptions of some peaks. Performance also improved for the smallest sizes, although it is a bit tricky to see on this graph. Gains are not huge though. Also note that benchmarking is not easy for small sizes: these are already averages over 50 runs but still the clBLAS results differ a bit.\r\n\r\nThis is for an AMD GPU. I still have to test a bit on other devices before I merge it in."}}
{"actor":{"display_login":"CNugteren"}}