|
|
|
@ -8,8 +8,15 @@ typedef unsigned char BitSequence;
@@ -8,8 +8,15 @@ typedef unsigned char BitSequence;
|
|
|
|
|
#define CUBEHASH_ROUNDS 16 /* this is r for CubeHashr/b */ |
|
|
|
|
#define CUBEHASH_BLOCKBYTES 32 /* this is b for CubeHashr/b */ |
|
|
|
|
|
|
|
|
|
#define ROTATEUPWARDS7(a) (((a) << 7) | ((a) >> 25)) |
|
|
|
|
#define ROTATEUPWARDS11(a) (((a) << 11) | ((a) >> 21)) |
|
|
|
|
#if __CUDA_ARCH__ < 350 |
|
|
|
|
#define LROT(x,bits) ((x << bits) | (x >> (32 - bits))) |
|
|
|
|
#else |
|
|
|
|
#define LROT(x, bits) __funnelshift_l(x, x, bits) |
|
|
|
|
#endif |
|
|
|
|
|
|
|
|
|
#define ROTATEUPWARDS7(a) LROT(a,7) |
|
|
|
|
#define ROTATEUPWARDS11(a) LROT(a,11) |
|
|
|
|
|
|
|
|
|
#define SWAP(a,b) { uint32_t u = a; a = b; b = u; } |
|
|
|
|
|
|
|
|
|
__device__ __constant__ |
|
|
|
@ -278,11 +285,13 @@ __global__ void x11_cubehash512_gpu_hash_64(int threads, uint32_t startNounce, u
@@ -278,11 +285,13 @@ __global__ void x11_cubehash512_gpu_hash_64(int threads, uint32_t startNounce, u
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// Setup-Funktionen |
|
|
|
|
__host__ void x11_cubehash512_cpu_init(int thr_id, int threads) |
|
|
|
|
__host__ |
|
|
|
|
void x11_cubehash512_cpu_init(int thr_id, int threads) |
|
|
|
|
{ |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
__host__ void x11_cubehash512_cpu_hash_64(int thr_id, int threads, uint32_t startNounce, uint32_t *d_nonceVector, uint32_t *d_hash, int order) |
|
|
|
|
__host__ |
|
|
|
|
void x11_cubehash512_cpu_hash_64(int thr_id, int threads, uint32_t startNounce, uint32_t *d_nonceVector, uint32_t *d_hash, int order) |
|
|
|
|
{ |
|
|
|
|
const int threadsperblock = 256; |
|
|
|
|
|
|
|
|
|