Added initial NVML stub.

This commit is contained in:
XMRig 2019-10-30 15:33:06 +07:00
parent 3bdf7111ce
commit 175a7b06b7
10 changed files with 335 additions and 17 deletions

View file

@ -40,6 +40,10 @@ static const char *kDevicesHint = "devices-hint";
static const char *kEnabled = "enabled";
static const char *kLoader = "loader";
#ifdef XMRIG_FEATURE_NVML
static const char *kNvml = "nvml";
#endif
extern template class Threads<CudaThreads>;
@ -57,6 +61,15 @@ rapidjson::Value xmrig::CudaConfig::toJSON(rapidjson::Document &doc) const
obj.AddMember(StringRef(kEnabled), m_enabled, allocator);
obj.AddMember(StringRef(kLoader), m_loader.toJSON(), allocator);
# ifdef XMRIG_FEATURE_NVML
if (m_nvmlLoader.isNull()) {
obj.AddMember(StringRef(kNvml), m_nvml, allocator);
}
else {
obj.AddMember(StringRef(kNvml), m_nvmlLoader.toJSON(), allocator);
}
# endif
m_threads.toJSON(obj, doc);
return obj;
@ -95,6 +108,16 @@ void xmrig::CudaConfig::read(const rapidjson::Value &value)
setDevicesHint(Json::getString(value, kDevicesHint));
# ifdef XMRIG_FEATURE_NVML
auto &nvml = Json::getValue(value, kNvml);
if (nvml.IsString()) {
m_nvmlLoader = nvml.GetString();
}
else if (nvml.IsBool()) {
m_nvml = nvml.GetBool();
}
# endif
m_threads.read(value);
generate();