diff options
Diffstat (limited to 'xmrstak/backend/amd/minethd.hpp')
-rw-r--r-- | xmrstak/backend/amd/minethd.hpp | 16 |
1 files changed, 4 insertions, 12 deletions
diff --git a/xmrstak/backend/amd/minethd.hpp b/xmrstak/backend/amd/minethd.hpp index 7e71082..21c2dd9 100644 --- a/xmrstak/backend/amd/minethd.hpp +++ b/xmrstak/backend/amd/minethd.hpp @@ -2,6 +2,8 @@ #include "amd_gpu/gpu.hpp" #include "jconf.hpp" +#include "xmrstak/backend/cpu/crypto/cryptonight.h" +#include "xmrstak/backend/miner_work.hpp" #include "xmrstak/backend/iBackend.hpp" #include "xmrstak/misc/environment.hpp" @@ -13,27 +15,18 @@ namespace xmrstak namespace amd { -class minethd : public IBackend +class minethd : public iBackend { public: static void switch_work(miner_work& pWork); - static std::vector<IBackend*>* thread_starter(uint32_t threadOffset, miner_work& pWork); + static std::vector<iBackend*>* thread_starter(uint32_t threadOffset, miner_work& pWork); static bool init_gpus(); private: typedef void (*cn_hash_fun)(const void*, size_t, void*, cryptonight_ctx*); minethd(miner_work& pWork, size_t iNo, GpuContext* ctx); - - // We use the top 8 bits of the nonce for thread and resume - // This allows us to resume up to 64 threads 4 times before - // we get nonce collisions - // Bottom 24 bits allow for an hour of work at 4000 H/s - inline uint32_t calc_start_nonce(uint32_t resume) - { - return reverseBits<uint32_t>(static_cast<uint32_t>(iThreadNo + GlobalStates::inst().iThreadCount * resume)); - } void work_main(); void double_work_main(); @@ -45,7 +38,6 @@ private: miner_work oWork; std::thread oWorkThd; - uint8_t iThreadNo; bool bQuit; bool bNoPrefetch; |