|
|
@ -58,7 +58,11 @@ extern void quark_compactTest_cpu_init(int thr_id, int threads); |
|
|
|
extern void quark_compactTest_cpu_hash_64(int thr_id, int threads, uint32_t startNounce, uint32_t *inpHashes, |
|
|
|
extern void quark_compactTest_cpu_hash_64(int thr_id, int threads, uint32_t startNounce, uint32_t *inpHashes, |
|
|
|
uint32_t *d_noncesTrue, size_t *nrmTrue, uint32_t *d_noncesFalse, size_t *nrmFalse, int order); |
|
|
|
uint32_t *d_noncesTrue, size_t *nrmTrue, uint32_t *d_noncesFalse, size_t *nrmFalse, int order); |
|
|
|
|
|
|
|
|
|
|
|
// X11 Hashfunktion |
|
|
|
// to check... new sp method |
|
|
|
|
|
|
|
//extern void x11_echo512_cpu_setTarget(const void *ptarget); |
|
|
|
|
|
|
|
//extern uint32_t x11_echo512_cpu_hash_64_final(int thr_id, int threads, uint32_t startNounce, uint32_t *d_nonceVector, uint32_t *d_hash, int order); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// X11 CPU Hash |
|
|
|
extern "C" void x11hash(void *output, const void *input) |
|
|
|
extern "C" void x11hash(void *output, const void *input) |
|
|
|
{ |
|
|
|
{ |
|
|
|
// blake1-bmw2-grs3-skein4-jh5-keccak6-luffa7-cubehash8-shavite9-simd10-echo11 |
|
|
|
// blake1-bmw2-grs3-skein4-jh5-keccak6-luffa7-cubehash8-shavite9-simd10-echo11 |
|
|
@ -146,7 +150,7 @@ extern "C" int scanhash_x11(int thr_id, uint32_t *pdata, |
|
|
|
throughput = min(throughput, (int)(max_nonce - first_nonce)); |
|
|
|
throughput = min(throughput, (int)(max_nonce - first_nonce)); |
|
|
|
|
|
|
|
|
|
|
|
if (opt_benchmark) |
|
|
|
if (opt_benchmark) |
|
|
|
((uint32_t*)ptarget)[7] = 0x000f; |
|
|
|
((uint32_t*)ptarget)[7] = 0x5; |
|
|
|
|
|
|
|
|
|
|
|
if (!init[thr_id]) |
|
|
|
if (!init[thr_id]) |
|
|
|
{ |
|
|
|
{ |
|
|
@ -176,6 +180,8 @@ extern "C" int scanhash_x11(int thr_id, uint32_t *pdata, |
|
|
|
be32enc(&endiandata[k], ((uint32_t*)pdata)[k]); |
|
|
|
be32enc(&endiandata[k], ((uint32_t*)pdata)[k]); |
|
|
|
|
|
|
|
|
|
|
|
quark_blake512_cpu_setBlock_80((void*)endiandata); |
|
|
|
quark_blake512_cpu_setBlock_80((void*)endiandata); |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
//x11_echo512_cpu_setTarget(ptarget); |
|
|
|
cuda_check_cpu_setTarget(ptarget); |
|
|
|
cuda_check_cpu_setTarget(ptarget); |
|
|
|
|
|
|
|
|
|
|
|
do { |
|
|
|
do { |
|
|
@ -196,8 +202,10 @@ extern "C" int scanhash_x11(int thr_id, uint32_t *pdata, |
|
|
|
x11_simd512_cpu_hash_64(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
x11_simd512_cpu_hash_64(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
x11_echo512_cpu_hash_64(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
x11_echo512_cpu_hash_64(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
|
|
|
|
|
|
|
|
// Scan nach Gewinner Hashes auf der GPU |
|
|
|
// todo... |
|
|
|
|
|
|
|
//foundNonce = x11_echo512_cpu_hash_64_final(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
//foundNonce = cuda_check_hash_fast(thr_id, throughput, pdata[19], d_hash[thr_id], order++); |
|
|
|
//foundNonce = cuda_check_hash_fast(thr_id, throughput, pdata[19], d_hash[thr_id], order++); |
|
|
|
|
|
|
|
|
|
|
|
foundNonce = cuda_check_cpu_hash_64(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
foundNonce = cuda_check_cpu_hash_64(thr_id, throughput, pdata[19], NULL, d_hash[thr_id], order++); |
|
|
|
if (foundNonce != 0xffffffff) |
|
|
|
if (foundNonce != 0xffffffff) |
|
|
|
{ |
|
|
|
{ |
|
|
|