Skip to content

Commit

Permalink
lyra2: improve cuda implementation (part 1, SM5+)
Browse files Browse the repository at this point in the history
based on the new djm34 method, 2x faster than first version

cleaned and tuned for the GTX 750/960 (linux / cuda 6.5)
  • Loading branch information
tpruvot committed Oct 12, 2015
1 parent 9dfa757 commit fc84c71
Show file tree
Hide file tree
Showing 7 changed files with 239 additions and 202 deletions.
4 changes: 2 additions & 2 deletions Algo256/cuda_groestl256.cu
Original file line number Diff line number Diff line change
Expand Up @@ -176,7 +176,7 @@ void groestl256_perm_Q(uint32_t thread, uint32_t *a, char *mixtabs)
}

__global__ __launch_bounds__(256,1)
void groestl256_gpu_hash32(uint32_t threads, uint32_t startNounce, uint64_t *outputHash, uint32_t *resNonces)
void groestl256_gpu_hash_32(uint32_t threads, uint32_t startNounce, uint64_t *outputHash, uint32_t *resNonces)
{
#if USE_SHARED
extern __shared__ char mixtabs[];
Expand Down Expand Up @@ -315,7 +315,7 @@ uint32_t groestl256_cpu_hash_32(int thr_id, uint32_t threads, uint32_t startNoun
#else
size_t shared_size = 0;
#endif
groestl256_gpu_hash32<<<grid, block, shared_size>>>(threads, startNounce, d_outputHash, d_GNonces[thr_id]);
groestl256_gpu_hash_32<<<grid, block, shared_size>>>(threads, startNounce, d_outputHash, d_GNonces[thr_id]);

MyStreamSynchronize(NULL, order, thr_id);

Expand Down
3 changes: 2 additions & 1 deletion README.txt
Original file line number Diff line number Diff line change
Expand Up @@ -229,9 +229,10 @@ features.
>>> RELEASE HISTORY <<<

Under Dev... v1.7
Improve lyra2 (v1) cuda implementation
Restore whirlpool algo (and whirlcoin variant)
Prepare algo switch ability
Add --benchmark -a all to run a benchmark for all algos
Add --benchmark alone to run a benchmark for all algos
Add --cuda-schedule parameter
Add --show-diff parameter, which display shares diff,
and is able to detect real solved blocks on pools.
Expand Down
1 change: 0 additions & 1 deletion bench.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,6 @@ bool bench_algo_switch_next(int thr_id)
if (algo == ALGO_DMD_GR) algo++; // same as groestl
if (algo == ALGO_WHIRLCOIN) algo++; // same as whirlpool
// and unwanted ones...
if (algo == ALGO_LYRA2) algo++; // weird memory leak to fix (uint2 Matrix[96][8] too big)
if (algo == ALGO_SCRYPT) algo++;
if (algo == ALGO_SCRYPT_JANE) algo++;

Expand Down
1 change: 1 addition & 0 deletions configure.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# possible additional CUDA_CFLAGS
#-gencode=arch=compute_52,code=\"sm_52,compute_52\"
#-gencode=arch=compute_50,code=\"sm_50,compute_50\"
#-gencode=arch=compute_35,code=\"sm_35,compute_35\"
#-gencode=arch=compute_30,code=\"sm_30,compute_30\"
Expand Down
Loading

0 comments on commit fc84c71

Please sign in to comment.