{"action":"created","issue":{"url":"https://api.github.com/repos/ethereum/go-ethereum/issues/1869","labels_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/1869/labels{/name}","comments_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/1869/comments","events_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/1869/events","html_url":"https://github.com/ethereum/go-ethereum/pull/1869","id":109496731,"number":1869,"title":"Add GPU mining. Safety not guaranteed.","user":{"login":"Gustav-Simonsson","id":293096,"avatar_url":"https://avatars.githubusercontent.com/u/293096?v=3","gravatar_id":"","url":"https://api.github.com/users/Gustav-Simonsson","html_url":"https://github.com/Gustav-Simonsson","followers_url":"https://api.github.com/users/Gustav-Simonsson/followers","following_url":"https://api.github.com/users/Gustav-Simonsson/following{/other_user}","gists_url":"https://api.github.com/users/Gustav-Simonsson/gists{/gist_id}","starred_url":"https://api.github.com/users/Gustav-Simonsson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Gustav-Simonsson/subscriptions","organizations_url":"https://api.github.com/users/Gustav-Simonsson/orgs","repos_url":"https://api.github.com/users/Gustav-Simonsson/repos","events_url":"https://api.github.com/users/Gustav-Simonsson/events{/privacy}","received_events_url":"https://api.github.com/users/Gustav-Simonsson/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/ethereum/go-ethereum/labels/in%20progress","name":"in progress","color":"eb6420"},{"url":"https://api.github.com/repos/ethereum/go-ethereum/labels/review","name":"review","color":"fad8c7"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2015-10-02T14:02:43Z","updated_at":"2015-10-05T14:42:09Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/ethereum/go-ethereum/pulls/1869","html_url":"https://github.com/ethereum/go-ethereum/pull/1869","diff_url":"https://github.com/ethereum/go-ethereum/pull/1869.diff","patch_url":"https://github.com/ethereum/go-ethereum/pull/1869.patch"},"body":"Please review the Go OpenCL / Ethash code here: https://github.com/ethereum/ethash/pull/76\r\n\r\n**Please review even though it has in progress label - I'm not sure why the build tags do not work with the builds**\r\n\r\n- [x] Add Go GPU miner support & geth flags\r\n- [x] Add build tag for GPU mining to disable it by default.\r\n- [x] Add GPU benchmark cmd"},"comment":{"url":"https://api.github.com/repos/ethereum/go-ethereum/issues/comments/145550646","html_url":"https://github.com/ethereum/go-ethereum/pull/1869#issuecomment-145550646","issue_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/1869","id":145550646,"user":{"login":"Gustav-Simonsson","id":293096,"avatar_url":"https://avatars.githubusercontent.com/u/293096?v=3","gravatar_id":"","url":"https://api.github.com/users/Gustav-Simonsson","html_url":"https://github.com/Gustav-Simonsson","followers_url":"https://api.github.com/users/Gustav-Simonsson/followers","following_url":"https://api.github.com/users/Gustav-Simonsson/following{/other_user}","gists_url":"https://api.github.com/users/Gustav-Simonsson/gists{/gist_id}","starred_url":"https://api.github.com/users/Gustav-Simonsson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Gustav-Simonsson/subscriptions","organizations_url":"https://api.github.com/users/Gustav-Simonsson/orgs","repos_url":"https://api.github.com/users/Gustav-Simonsson/repos","events_url":"https://api.github.com/users/Gustav-Simonsson/events{/privacy}","received_events_url":"https://api.github.com/users/Gustav-Simonsson/received_events","type":"User","site_admin":false},"created_at":"2015-10-05T14:42:09Z","updated_at":"2015-10-05T14:42:09Z","body":"Discussed more with @fjl and we figured passing the device id (index) in the interface is OK and useful when we later change the interface to support return of error. There are a lot of cases when things can go wrong and so returning an error would be useful as the handler (go-ethereum/miner) could choose to restart mining. Would also add resilience if one card goes down but others keep working.\r\n\r\nWe also discussed splitting PoW interface into one for verification and one for mining.\r\n\r\nAlso to add a few tests for the GPU mining (starting with adapting the current ones for CPU mining). This would require a special build machine with a proper GPU."}}