Skip to content

Commit

Permalink
implement x11evo algo
Browse files Browse the repository at this point in the history
Signed-off-by: Tanguy Pruvot <[email protected]>
  • Loading branch information
tpruvot committed May 31, 2016
1 parent f85e377 commit 85c212e
Show file tree
Hide file tree
Showing 12 changed files with 441 additions and 5 deletions.
2 changes: 1 addition & 1 deletion Makefile.am
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ ccminer_SOURCES = elist.h miner.h compat.h \
qubit/qubit.cu qubit/qubit_luffa512.cu qubit/deep.cu qubit/luffa.cu \
x11/x11.cu x11/fresh.cu x11/cuda_x11_luffa512.cu x11/cuda_x11_cubehash512.cu \
x11/cuda_x11_shavite512.cu x11/cuda_x11_simd512.cu x11/cuda_x11_echo.cu \
x11/cuda_x11_luffa512_Cubehash.cu \
x11/cuda_x11_luffa512_Cubehash.cu x11/x11evo.cu \
x13/x13.cu x13/cuda_x13_hamsi512.cu x13/cuda_x13_fugue512.cu \
x15/x14.cu x15/x15.cu x15/cuda_x14_shabal512.cu x15/cuda_x15_whirlpool.cu \
x15/whirlpool.cu \
Expand Down
7 changes: 6 additions & 1 deletion README.txt
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@

ccMiner release 1.7.6 (May 2016) "DCR vote & pool device stats"
ccMiner preview 1.8-dev (May 2016) "Pascal and x11evo algo"
---------------------------------------------------------------

***************************************************************
Expand Down Expand Up @@ -98,6 +98,7 @@ its command line interface and options.
sib use to mine Sibcoin
skein use to mine Skeincoin
skein2 use to mine Woodcoin
x11evo use to mine Revolver
x11 use to mine DarkCoin
x14 use to mine X14Coin
x15 use to mine Halcyon
Expand Down Expand Up @@ -239,6 +240,10 @@ features.

>>> RELEASE HISTORY <<<

June 2016 v1.8.0
Pascal support with cuda 8
x11evo algo (XRE)

May 18th 2016 v1.7.6
Decred vote support
X17 cleanup and improvement
Expand Down
2 changes: 2 additions & 0 deletions algos.h
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ enum sha_algos {
ALGO_SKEIN,
ALGO_SKEIN2,
ALGO_S3,
ALGO_X11EVO,
ALGO_X11,
ALGO_X13,
ALGO_X14,
Expand Down Expand Up @@ -82,6 +83,7 @@ static const char *algo_names[] = {
"skein",
"skein2",
"s3",
"x11evo",
"x11",
"x13",
"x14",
Expand Down
1 change: 1 addition & 0 deletions bench.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@ void algo_free_all(int thr_id)
free_s3(thr_id);
free_vanilla(thr_id);
free_whirl(thr_id);
free_x11evo(thr_id);
free_x11(thr_id);
free_x13(thr_id);
free_x14(thr_id);
Expand Down
5 changes: 5 additions & 0 deletions ccminer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ Options:\n\
skein Skein SHA2 (Skeincoin)\n\
skein2 Double Skein (Woodcoin)\n\
s3 S3 (1Coin)\n\
x11evo Permuted x11 (Revolver)\n\
x11 X11 (DarkCoin)\n\
x13 X13 (MaruCoin)\n\
x14 X14\n\
Expand Down Expand Up @@ -1901,6 +1902,7 @@ static void *miner_thread(void *userdata)
case ALGO_HEAVY:
case ALGO_LYRA2v2:
case ALGO_S3:
case ALGO_X11EVO:
case ALGO_X11:
case ALGO_X13:
case ALGO_WHIRLCOIN:
Expand Down Expand Up @@ -2066,6 +2068,9 @@ static void *miner_thread(void *userdata)
//case ALGO_WHIRLPOOLX:
// rc = scanhash_whirlx(thr_id, &work, max_nonce, &hashes_done);
// break;
case ALGO_X11EVO:
rc = scanhash_x11evo(thr_id, &work, max_nonce, &hashes_done);
break;
case ALGO_X11:
rc = scanhash_x11(thr_id, &work, max_nonce, &hashes_done);
break;
Expand Down
1 change: 1 addition & 0 deletions ccminer.vcxproj
Original file line number Diff line number Diff line change
Expand Up @@ -494,6 +494,7 @@
<CudaCompile Include="x11\sib.cu" />
<CudaCompile Include="x11\s3.cu" />
<CudaCompile Include="x11\x11.cu" />
<CudaCompile Include="x11\x11evo.cu" />
<CudaCompile Include="x13\cuda_x13_hamsi512.cu">
<MaxRegCount>72</MaxRegCount>
</CudaCompile>
Expand Down
5 changes: 4 additions & 1 deletion ccminer.vcxproj.filters
Original file line number Diff line number Diff line change
Expand Up @@ -571,6 +571,9 @@
<CudaCompile Include="x11\x11.cu">
<Filter>Source Files\CUDA\x11</Filter>
</CudaCompile>
<CudaCompile Include="x11\x11evo.cu">
<Filter>Source Files\CUDA\x11</Filter>
</CudaCompile>
<CudaCompile Include="x13\cuda_x13_fugue512.cu">
<Filter>Source Files\CUDA\x13</Filter>
</CudaCompile>
Expand Down Expand Up @@ -731,4 +734,4 @@
<Filter>Ressources</Filter>
</Text>
</ItemGroup>
</Project>
</Project>
3 changes: 3 additions & 0 deletions miner.h
Original file line number Diff line number Diff line change
Expand Up @@ -288,6 +288,7 @@ extern int scanhash_skein2(int thr_id, struct work* work, uint32_t max_nonce, un
extern int scanhash_s3(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done);
extern int scanhash_vanilla(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done, int8_t blake_rounds);
extern int scanhash_whirl(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done);
extern int scanhash_x11evo(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done);
extern int scanhash_x11(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done);
extern int scanhash_x13(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done);
extern int scanhash_x14(int thr_id, struct work* work, uint32_t max_nonce, unsigned long *hashes_done);
Expand Down Expand Up @@ -331,6 +332,7 @@ extern void free_skein2(int thr_id);
extern void free_s3(int thr_id);
extern void free_vanilla(int thr_id);
extern void free_whirl(int thr_id);
extern void free_x11evo(int thr_id);
extern void free_x11(int thr_id);
extern void free_x13(int thr_id);
extern void free_x14(int thr_id);
Expand Down Expand Up @@ -807,6 +809,7 @@ void skein2hash(void *output, const void *input);
void s3hash(void *output, const void *input);
void wcoinhash(void *state, const void *input);
void whirlxHash(void *state, const void *input);
void x11evo_hash(void *output, const void *input);
void x11hash(void *output, const void *input);
void x13hash(void *output, const void *input);
void x14hash(void *output, const void *input);
Expand Down
2 changes: 0 additions & 2 deletions skein2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,6 @@

static uint32_t *d_hash[MAX_GPUS];

extern void quark_skein512_cpu_init(int thr_id, uint32_t threads);

extern void skein512_cpu_setBlock_80(void *pdata);
extern void skein512_cpu_hash_80(int thr_id, uint32_t threads, uint32_t startNounce, uint32_t *d_hash, int swap);

Expand Down
3 changes: 3 additions & 0 deletions util.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -2192,6 +2192,9 @@ void print_hash_tests(void)
//whirlxHash(&hash[0], &buf[0]);
//printpfx("whirlpoolx", hash);

x11evo_hash(&hash[0], &buf[0]);
printpfx("x11evo", hash);

x11hash(&hash[0], &buf[0]);
printpfx("X11", hash);

Expand Down
3 changes: 3 additions & 0 deletions x11/cuda_x11.h
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
extern void x11_luffaCubehash512_cpu_init(int thr_id, uint32_t threads);
extern void x11_luffaCubehash512_cpu_hash_64(int thr_id, uint32_t threads, uint32_t *d_hash, int order);

extern void x11_luffa512_cpu_init(int thr_id, uint32_t threads);
extern void x11_luffa512_cpu_hash_64(int thr_id, uint32_t threads, uint32_t startNounce, uint32_t *d_nonceVector, uint32_t *d_hash, int order);

extern void x11_cubehash512_cpu_init(int thr_id, uint32_t threads);
extern void x11_cubehash512_cpu_hash_64(int thr_id, uint32_t threads, uint32_t startNounce, uint32_t *d_nonceVector, uint32_t *d_hash, int order);

Expand Down
Loading

0 comments on commit 85c212e

Please sign in to comment.