WRKZ support

This commit is contained in:
wrkzdev 2019-06-06 10:53:11 +07:00
parent dcf9c68334
commit 1a13b3d59b
4 changed files with 37 additions and 1 deletions

View file

@ -94,6 +94,7 @@ static AlgoData const algorithms[] = {
# ifndef XMRIG_NO_ARGON2
{ "chukwa", "trtl-chukwa", xmrig::ARGON2, xmrig::VARIANT_CHUKWA },
{ "chukwa/wrkz", "wrkz-chukwa", xmrig::ARGON2, xmrig::VARIANT_CHUKWA_LITE },
# endif
# ifndef XMRIG_NO_CN_GPU
@ -143,7 +144,8 @@ static const char *variants[] = {
"rwz",
"zls",
"double",
"chukwa"
"chukwa",
"wrkz",
};

View file

@ -81,6 +81,7 @@ enum Variant {
VARIANT_ZLS = 15, // CryptoNight variant 2 with 3/4 iterations (Zelerius)
VARIANT_DOUBLE = 16, // CryptoNight variant 2 with double iterations (X-CASH)
VARIANT_CHUKWA = 17, // Argon2 Chukwa for TurtleCoin
VARIANT_CHUKWA_LITE = 18, // Argon2 Chukwa Lite for WrkzCoin
VARIANT_MAX
};

View file

@ -22,6 +22,11 @@ namespace xmrig
constexpr const size_t ARGON2_MEMORY_CHUKWA = 512;
constexpr const size_t ARGON2_ITERS_CHUKWA = 3;
constexpr const size_t ARGON2_PARALLELISM_CHUKWA = 1;
constexpr const size_t ARGON2_MEMORY_CHUKWA_LITE = 256;
constexpr const size_t ARGON2_ITERS_CHUKWA_LITE = 4;
constexpr const size_t ARGON2_PARALLELISM_CHUKWA_LITE = 1;
constexpr const int ARGON2_ALGO_CHUKWA = Argon2Algo::ID;
inline int argon2_select_algo(Variant variant)
@ -30,6 +35,8 @@ namespace xmrig
{
case VARIANT_CHUKWA:
return ARGON2_ALGO_CHUKWA;
case VARIANT_CHUKWA_LITE:
return ARGON2_ALGO_CHUKWA;
}
return 0;
@ -41,6 +48,8 @@ namespace xmrig
{
case VARIANT_CHUKWA:
return ARGON2_MEMORY_CHUKWA;
case VARIANT_CHUKWA_LITE:
return ARGON2_MEMORY_CHUKWA_LITE;
}
return 0;
@ -52,6 +61,8 @@ namespace xmrig
{
case VARIANT_CHUKWA:
return ARGON2_ITERS_CHUKWA;
case VARIANT_CHUKWA_LITE:
return ARGON2_ITERS_CHUKWA_LITE;
}
return 0;
@ -63,6 +74,8 @@ namespace xmrig
{
case VARIANT_CHUKWA:
return ARGON2_PARALLELISM_CHUKWA;
case VARIANT_CHUKWA_LITE:
return ARGON2_PARALLELISM_CHUKWA_LITE;
}
return 0;

View file

@ -394,6 +394,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
cryptonight_penta_hash<CRYPTONIGHT, true, VARIANT_DOUBLE>,
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# ifndef XMRIG_NO_AEON
cryptonight_single_hash<CRYPTONIGHT_LITE, false, VARIANT_0>,
@ -434,6 +435,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# else
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_0
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_1
@ -453,6 +455,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# endif
# ifndef XMRIG_NO_SUMO
@ -506,6 +509,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# else
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_0
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_1
@ -525,6 +529,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# endif
# ifndef XMRIG_NO_CN_PICO
@ -557,6 +562,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# else
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_0
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_1
@ -576,6 +582,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# endif
# ifndef XMRIG_NO_ARGON2
@ -607,6 +614,18 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
argon2_hash_function<VARIANT_CHUKWA>,
argon2_hash_function<VARIANT_CHUKWA>,
argon2_hash_function<VARIANT_CHUKWA>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
argon2_hash_function<VARIANT_CHUKWA_LITE>,
# else
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_0
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_1
@ -626,6 +645,7 @@ xmrig::CpuThread::cn_hash_fun xmrig::CpuThread::fn(Algo algorithm, AlgoVariant a
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_ZLS
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_DOUBLE
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA
nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, nullptr, // VARIANT_CHUKWA_LITE
# endif
};