Added command line option --opencl.

This commit is contained in:
XMRig 2019-09-24 03:14:35 +07:00
parent 5f948d0d96
commit 2604705bab
7 changed files with 691 additions and 3 deletions

View file

@ -35,11 +35,16 @@ namespace xmrig
static const char *kAffinity = "affinity";
static const char *kAsterisk = "*";
static const char *kCpu = "cpu";
static const char *kEnabled = "enabled";
static const char *kIntensity = "intensity";
static const char *kThreads = "threads";
#ifdef XMRIG_ALGO_RANDOMX
static const char *kRandomX = "randomx";
static const char *kRandomX = "randomx";
#endif
#ifdef XMRIG_FEATURE_OPENCL
static const char *kOcl = "opencl";
#endif
@ -104,6 +109,12 @@ void xmrig::ConfigTransform::finalize(rapidjson::Document &doc)
doc[kCpu].AddMember(StringRef(kAsterisk), profile, doc.GetAllocator());
}
# ifdef XMRIG_FEATURE_OPENCL
if (m_opencl) {
set(doc, kOcl, kEnabled, true);
}
# endif
}
@ -140,6 +151,12 @@ void xmrig::ConfigTransform::transform(rapidjson::Document &doc, int key, const
return set(doc, kRandomX, "numa", false);
# endif
# ifdef XMRIG_FEATURE_OPENCL
case IConfig::OclKey: /* --opencl */
m_opencl = true;
break;
# endif
default:
break;
}
@ -153,7 +170,7 @@ void xmrig::ConfigTransform::transformBoolean(rapidjson::Document &doc, int key,
return set(doc, kCpu, "huge-pages", enable);
case IConfig::CPUKey: /* --no-cpu */
return set(doc, kCpu, "enabled", enable);
return set(doc, kCpu, kEnabled, enable);
default:
break;

View file

@ -42,6 +42,7 @@ private:
void transformBoolean(rapidjson::Document &doc, int key, bool enable);
void transformUint64(rapidjson::Document &doc, int key, uint64_t arg);
bool m_opencl = false;
int64_t m_affinity = -1;
uint64_t m_intensity = 1;
uint64_t m_threads = 0;

View file

@ -91,6 +91,9 @@ static const option options[] = {
# ifdef XMRIG_ALGO_RANDOMX
{ "randomx-init", 1, nullptr, IConfig::RandomXInitKey },
{ "randomx-no-numa", 0, nullptr, IConfig::RandomXNumaKey },
# endif
# ifdef XMRIG_FEATURE_OPENCL
{ "opencl", 0, nullptr, IConfig::OclKey },
# endif
{ nullptr, 0, nullptr, 0 }
};

View file

@ -71,7 +71,7 @@ static inline const std::string &usage()
u += "\nCPU backend:\n";
u += " --no-cpu disable CPU backend\n";
u += " --no-cpu disable CPU mining backend\n";
u += " -t, --threads=N number of CPU threads\n";
u += " -v, --av=N algorithm variation, 0 auto select\n";
u += " --cpu-affinity set process affinity to CPU core(s), mask 0x3 for cores 0 and 1\n";
@ -94,6 +94,11 @@ static inline const std::string &usage()
u += " --http-no-restricted enable full remote access to HTTP API (only if access token set)\n";
# endif
# ifdef XMRIG_FEATURE_OPENCL
u += "\nOpenCL backend:\n";
u += " --opencl enable OpenCL mining backend\n";
# endif
u += "\nLogging:\n";
# ifdef HAVE_SYSLOG_H