Skip to content
Snippets Groups Projects
Unverified Commit 447fef4b authored by fireice-uk's avatar fireice-uk Committed by GitHub
Browse files

Merge pull request #2071 from psychocrypt/topic-changeBackendLoadOrder

change load order for backends
parents 1755f5e8 cf959a1c
No related branches found
No related tags found
No related merge requests found
......@@ -60,11 +60,29 @@ std::vector<iBackend*>* BackendConnector::thread_starter(miner_work& pWork)
std::vector<iBackend*>* pvThreads = new std::vector<iBackend*>;
#ifndef CONF_NO_OPENCL
if(params::inst().useAMD)
{
const std::string backendName = xmrstak::params::inst().openCLVendor;
plugin amdplugin;
amdplugin.load(backendName, "xmrstak_opencl_backend");
std::vector<iBackend*>* amdThreads = amdplugin.startBackend(static_cast<uint32_t>(pvThreads->size()), pWork, environment::inst());
size_t numWorkers = 0u;
if(amdThreads != nullptr)
{
pvThreads->insert(std::end(*pvThreads), std::begin(*amdThreads), std::end(*amdThreads));
numWorkers = amdThreads->size();
delete amdThreads;
}
if(numWorkers == 0)
printer::inst()->print_msg(L0, "WARNING: backend %s (OpenCL) disabled.", backendName.c_str());
}
#endif
#ifndef CONF_NO_CUDA
if(params::inst().useNVIDIA)
{
plugin nvidiaplugin;
std::vector<iBackend*>* nvidiaThreads;
std::vector<std::string> libNames = {"xmrstak_cuda_backend_cuda10_0", "xmrstak_cuda_backend_cuda9_2", "xmrstak_cuda_backend"};
size_t numWorkers = 0u;
......@@ -96,25 +114,6 @@ std::vector<iBackend*>* BackendConnector::thread_starter(miner_work& pWork)
}
#endif
#ifndef CONF_NO_OPENCL
if(params::inst().useAMD)
{
const std::string backendName = xmrstak::params::inst().openCLVendor;
plugin amdplugin;
amdplugin.load(backendName, "xmrstak_opencl_backend");
std::vector<iBackend*>* amdThreads = amdplugin.startBackend(static_cast<uint32_t>(pvThreads->size()), pWork, environment::inst());
size_t numWorkers = 0u;
if(amdThreads != nullptr)
{
pvThreads->insert(std::end(*pvThreads), std::begin(*amdThreads), std::end(*amdThreads));
numWorkers = amdThreads->size();
delete amdThreads;
}
if(numWorkers == 0)
printer::inst()->print_msg(L0, "WARNING: backend %s (OpenCL) disabled.", backendName.c_str());
}
#endif
#ifndef CONF_NO_CPU
if(params::inst().useCPU)
{
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment