- Sep 22, 2018
-
-
Tony Butler authored
-
- Sep 19, 2018
-
-
psychocrypt authored
- fix that shared memory for fast div is always used even if an algorithm is not using it - optimize fast div algo - store `division_result` (64_bit) per thread instead of shuffle around and store it as 32bit
-
psychocrypt authored
- use optimzed div and sqrt - reduce memory footprint
-
SChernykh authored
Add fast version for div and sqrt for the cuda backend
-
psychocrypt authored
- fix code style issues - fix spelling issue - fix asm to support newer clang versions
-
psychocrypt authored
-
psychocrypt authored
- reintroduce monero7 until the POW is final - update docs (add cryptonigh_v8)
-
psychocrypt authored
-
psychocrypt authored
- add special asm version for win64 and linux - add cmake path for MSVC and other systems
-
psychocrypt authored
- fix assembler code to pass the clang compiler - CMake: set asm file language - fix icc with gcc-7 compile issue with `_addcarry_u64`
-
psychocrypt authored
Remove the asm option `auto` by `off`
-
psychocrypt authored
If single hash is used the type of the variable to hold the intermediat sqrt value is changed from `__m128i` to `uint64_t` as suggested by @SChernykh
-
psychocrypt authored
- add new option to `cpu.txt` named `asm` to select the asm code version - extent function selection method to choose assembler code for `cryptonight_v8` - update auto adjustment to add default value for option `asm`
-
psychocrypt authored
Add @SChernykh assembler version for ryzen and intel processors. Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
add option `unroll` for OpenCL to allow better tuning the main POW kernel.
-
psychocrypt authored
Create a special pass for NVIDIA GPUs to load memory chunks first into the shared memory. Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
- use shared memory to exchange
-
psychocrypt authored
implement `cryptonight_v8`
-
psychocrypt authored
- implement cryptonight_v8 - update auto adjust to fit the special requirements of `cryptonight_v8` - add fast math integer implementation for `sqrt`, `reciprocal` and `division` Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
Add support for single hash cryptonight_v8. Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
- rmeove currency `monero7` - introduce `cryptonight_v8` and `monero8`
-
psychocrypt authored
During the initialization of the compile parameter for OpenCL it could be that the fixed size buffer is to small. To avoid this we are now using `std::string`. There is no problem by using `std::string` because this part of code is not perfromance critical.
-
psychocrypt authored
If the first bit of the nonce is `1` (this is very often if we use a nicehash pool) than it could be that some OpenCL implementations handle the 64bit representation of the 32bit nonce on the device side as signed integer. During a right bitshift we pull wrong ones from the wrong higher part of the 64bit nonce representation into the 32bit part of the nonce. The result will be that the computed share is invalid. - explicit cast the nonce on the device to `uint` to avoid any side effects
-
- Sep 17, 2018
-
-
psychocrypt authored
Avoid that a OpenCL binary from the cache is used if the driver or xmr-stak version has changed.
-
- Sep 16, 2018
-
-
psychocrypt authored
There is a copy past mistake tha tthe type of the variable `memChunk` is not tested.
-
- Sep 13, 2018
-
-
psychocrypt authored
xmr-stak has several implementations for multi hash per thread. The results into 3 intepedent implementations. Each time the algorithm must be changed the possibility to introduce errors is very large. - unify the different cryptonight CPU implementations - simplify the function selection array to find the specilized cryptonight implementation - add a intermediat pointer to access the large state (similar to the old multi hash implementation) As side effect this change increases the speed of the single and multi hash algorithm.
-
- Aug 28, 2018
-
-
psychocrypt authored
The most algorithm currently are not checked in the cpu self test function. - add hash for each algorithm
-
- Aug 08, 2018
-
-
Tony Butler authored
-
- Jul 17, 2018
-
-
psychocrypt authored
OpenCl 1.2.is not allowing the subscript operator on buildin vector types. fix: use `.sX` to access vector components
-
- Jul 16, 2018
-
-
psychocrypt authored
5% more hash per second
-
- Jul 14, 2018
-
-
psychocrypt authored
- add cryptonight_heavy derivate cryptonight_bittube2 - add coin bittube - remove coin ipbc because this coin is now called bittube
-
- Jul 11, 2018
-
-
psychocrypt authored
fix #1708 The extension of the job result contains the wrong algorithm used to create the nonce. The fix provide now the correct used algorithm even if the coin is forking to a new algorithm. - forward the used algorithm from the miner
-
- Jul 08, 2018
-
-
psychocrypt authored
- explicit loop unrolling based on changes in @imperdin fork https://github.com/imperdin/xmr-stak/blob/master/xmrstak/backend/amd/amd_gpu/opencl/cryptonight.cl
-
- Jun 10, 2018
-
-
havenprotocol authored
- update pools.txt - add new algorithm `cryptonight_haven` - update all backends
-
- Jun 07, 2018
-
-
psychocrypt authored
- rename cryptonight_fast to cryptonight_masari - set dev pool to cryptonight_monero
-
- Jun 05, 2018
-
-
gnock authored
-
- May 30, 2018
-
-
psychocrypt authored
The define of `_mm256_set_m128i` is not needed and avoid intel compiler throws a warning about it.
-
- May 22, 2018
-
-
psychocrypt authored
- avoid that a nonce which not fits to the current job is used (check jobId after start nonce is consumed) - move jobId check into the if condition to get a new bunch of nonces - CPU: add jobId validation after the start nonce is consumed
-
- May 16, 2018
-
-
psychocrypt authored
If CUDA 9.X is used and the miner is compiled for `sm_70` and used with Volta GPUs than the miner deadlocks if `threads` is not a multiple of `32`. - use `__activemask()` to get all active lanes
-
- May 12, 2018
-
-
psychocrypt authored
- reformat `read_write_lock.h` - fix spelling issue - move job id increase of the write to the buttom
-