Added BenchConfig class.
This commit is contained in:
parent
a3daaf09f5
commit
027a6f8ae2
19 changed files with 321 additions and 127 deletions
|
@ -36,6 +36,11 @@
|
|||
#endif
|
||||
|
||||
|
||||
#ifdef XMRIG_FEATURE_BENCHMARK
|
||||
# include "base/net/stratum/benchmark/BenchConfig.h"
|
||||
#endif
|
||||
|
||||
|
||||
namespace xmrig
|
||||
{
|
||||
|
||||
|
@ -103,8 +108,6 @@ void xmrig::ConfigTransform::finalize(rapidjson::Document &doc)
|
|||
BaseTransform::finalize(doc);
|
||||
|
||||
if (m_threads) {
|
||||
doc.AddMember("version", 1, allocator);
|
||||
|
||||
if (!doc.HasMember(CpuConfig::kField)) {
|
||||
doc.AddMember(StringRef(CpuConfig::kField), Value(kObjectType), allocator);
|
||||
}
|
||||
|
@ -249,18 +252,14 @@ void xmrig::ConfigTransform::transform(rapidjson::Document &doc, int key, const
|
|||
# endif
|
||||
|
||||
# ifdef XMRIG_FEATURE_BENCHMARK
|
||||
case IConfig::StressKey: /* --stress */
|
||||
case IConfig::BenchKey: /* --bench */
|
||||
set(doc, CpuConfig::kField, CpuConfig::kHugePagesJit, true);
|
||||
set(doc, CpuConfig::kField, CpuConfig::kPriority, 2);
|
||||
set(doc, CpuConfig::kField, CpuConfig::kYield, false);
|
||||
|
||||
add(doc, Pools::kPools, Pool::kUser, Pool::kBenchmark);
|
||||
|
||||
if (key == IConfig::BenchKey) {
|
||||
add(doc, Pools::kPools, Pool::kBenchmark, arg);
|
||||
}
|
||||
break;
|
||||
case IConfig::AlgorithmKey: /* --algo */
|
||||
case IConfig::BenchKey: /* --bench */
|
||||
case IConfig::StressKey: /* --stress */
|
||||
case IConfig::BenchSubmitKey: /* --submit */
|
||||
case IConfig::BenchVerifyKey: /* --verify */
|
||||
case IConfig::BenchSeedKey: /* --seed */
|
||||
case IConfig::BenchHashKey: /* --hash */
|
||||
return transformBenchmark(doc, key, arg);
|
||||
# endif
|
||||
|
||||
default:
|
||||
|
@ -310,3 +309,36 @@ void xmrig::ConfigTransform::transformUint64(rapidjson::Document &doc, int key,
|
|||
}
|
||||
}
|
||||
|
||||
|
||||
#ifdef XMRIG_FEATURE_BENCHMARK
|
||||
void xmrig::ConfigTransform::transformBenchmark(rapidjson::Document &doc, int key, const char *arg)
|
||||
{
|
||||
set(doc, CpuConfig::kField, CpuConfig::kHugePagesJit, true);
|
||||
set(doc, CpuConfig::kField, CpuConfig::kPriority, 2);
|
||||
set(doc, CpuConfig::kField, CpuConfig::kYield, false);
|
||||
|
||||
switch (key) {
|
||||
case IConfig::AlgorithmKey: /* --algo */
|
||||
return set(doc, BenchConfig::kBenchmark, BenchConfig::kAlgo, arg);
|
||||
|
||||
case IConfig::BenchKey: /* --bench */
|
||||
return set(doc, BenchConfig::kBenchmark, BenchConfig::kSize, arg);
|
||||
|
||||
case IConfig::StressKey: /* --stress */
|
||||
return add(doc, Pools::kPools, Pool::kUser, BenchConfig::kBenchmark);
|
||||
|
||||
case IConfig::BenchSubmitKey: /* --submit */
|
||||
return set(doc, BenchConfig::kBenchmark, BenchConfig::kSubmit, true);
|
||||
|
||||
case IConfig::BenchVerifyKey: /* --verify */
|
||||
return set(doc, BenchConfig::kBenchmark, BenchConfig::kVerify, arg);
|
||||
|
||||
case IConfig::BenchSeedKey: /* --seed */
|
||||
return set(doc, BenchConfig::kBenchmark, BenchConfig::kSeed, arg);
|
||||
|
||||
case IConfig::BenchHashKey: /* --hash */
|
||||
return set(doc, BenchConfig::kBenchmark, BenchConfig::kHash, arg);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue