- Nov 30, 2018
-
-
psychocrypt authored
Disable compatibility mode if intensity is a multiple of worksize. In that case enabled compaibility mode will only slow down the miner.
-
- Nov 27, 2018
-
-
psychocrypt authored
If two threads are using the same GPU device the start time of each hash round is optimized based on the average time needed to calculate a bunch of hashes. This way to optimize the hash rate was first introduced by @SChernykh. This implementation based on the implementation in xmrig but differen in the details. - introduce a new config option `interleave` - implement thread interleaving
-
- Nov 21, 2018
-
-
psychocrypt authored
Use `mul24` to speedup the scratchpad index calculation. Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
Add new striding index where the memory is chunked by the size of the work group (worksize). Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
small optimization for non cryptonight_v8 algorithms
-
- Nov 20, 2018
-
-
SChernykh authored
- optimize division
-
SChernykh authored
optimize cryptonight_heavy diff
-
psychocrypt authored
- change a few 64bit variables into 32bit. - provide defines type quallified
-
- Nov 19, 2018
-
-
psychocrypt authored
- remove useless `clFinish` - avoid download num threads for skein&co and start always as much threads as in all other kernel (terminate useless threads)
-
psychocrypt authored
Reduce local memory foot print to increase the occupancy. Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
port optimizations from OpenCL. Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
psychocrypt authored
Use only the half AES matrix and compute the other half in place. This PR increases the possible occupancy.
-
psychocrypt authored
port OpenCl optimized division to CUDA Co-authored-by:
SChernykh <sergey.v.chernykh@gmail.com>
-
- Nov 17, 2018
-
-
psychocrypt authored
If CUDA is loaded before AMD but no CUDA is available it can be happen that the embadded OpenCL code is empty. This is only an issue if the binary is builded static on a different system.
-
- Nov 16, 2018
-
-
psychocrypt authored
define shared memory in the outer scope
-
SChernykh authored
x-ref: https://github.com/xmrig/xmrig-amd/pull/192
-
SChernykh authored
- optimize kernel cn0 and cn2 - optimize vast int math - use more 32bit variables Co-authored-by:
psychocrypt <psychocryptHPC@gmail.com>
-
- Nov 06, 2018
-
-
SChernykh authored
optimize the devision in cryptonight_heavy and cryptonight_haven import of https://github.com/xmrig/xmrig-amd/pull/185/commits/5d9b9334654df25cea7707f667990fd1577ed290
-
- Oct 24, 2018
-
-
psychocrypt authored
In the cuda backend for monero we start always twice as much threads as needed. Those threads are than removed after the AES matrix is copied to the shared memory. Never the less it is the result of an copy past bug. - start correct number of threads for `monero`
-
- Oct 16, 2018
-
-
psychocrypt authored
Fix the fix from #1945. The initial fix produces invalid results.
-
Hans Kristian Rosbach authored
-
Hans Kristian Rosbach authored
-
- Oct 15, 2018
-
-
psychocrypt authored
The AMD compiler for OpenCL shipped with the driver 14XX is broken and can not compile xmr-stak since the monero v8 changes are introduced. - workaround a simple compare. - add new device define `OPENCL_DRIVER_MAJOR`
-
- Oct 11, 2018
-
-
psychocrypt authored
Allow to ship the miner with multiple cuda backends those depends on different driver versions. This will allow to support Turing/Volta and old Fermi GPU within one release. - add support to search for the first working CUDA backend - add some more messages to support better debugging (if a user has some issues)
-
- Oct 10, 2018
-
-
SChernykh authored
- remove helper array to perform division - tweak `get_reciprocal`
-
psychocrypt authored
The name `comp_mode` for a memoy load pattern if a bad choosen name. Therefore I changed it to `mem_mode` which also gives use the possibility to add new mode later if needed. - rename `comp_mode` to `mem_mode` - fix documentation
-
psychocrypt authored
In the current implementation the bit align is using signed integer which results in pulling in ones in the case the sign bit is set. - cast to unsigned integer before using bitshift
-
psychocrypt authored
If `comp_mode` is false the results on a windows platform will be invalid. The reason for that is that `ulong4` is in windows 16byte and in linux 32byte. thx @xmrig for finding and solving the issue fix #1873
-
- Oct 08, 2018
-
-
psychocrypt authored
Add a suggestion to an common line which is shown in the event of an crash under windows.
-
psychocrypt authored
Add compatibility mode for CUDA to avoid invalid shares.
-
psychocrypt authored
Use an array instead of a if cascade to select the hasing function for CUDA.
-
psychocrypt authored
- add more descriptive messages if memory allocation fails - add gnu compiler flags: `noexecstack` to support systemd - handle cases where memroy allocation fails Co-authored-by:
Tony Butler <spudz76@gmail.com>
-
psychocrypt authored
Use volatile pointer to be sure that the compiler is not caching the values.
-
psychocrypt authored
Fix wrong warning about unknown ASM type
-
- Oct 07, 2018
-
-
psychocrypt authored
Strided index 1 is not allowed for cryptonight_v8 and monero. In the case the dev pool is set to monero and the user tuned there settings for an other currency the miner will crash if strided index or memChunk is not fitting the requirement to mine monero. This PR detects wrong configurations and will set strided index and memChunk to a valid value but only for cryptonight_v8. The user pool settings will only be changed if monero or cryptonight_v8 is selected.
-
psychocrypt authored
fix #1870 - remove zero from the valod definition range for the loop unroll option
-
- Oct 06, 2018
-
-
Tony Butler authored
-
- Oct 05, 2018
-
-
psychocrypt authored
With rocm we fighted very long with invalid shares. This is now solved with rocm 1.9 and this tiny fix. It is not fully clear where a memory optimization is kicking in and break the kernel `Groestl` if the variables `M` and `H` are not `volatile`. The performance ill not change with this fix. The fix is tested with rocm 1.9 with a VEGA64 and a RX570
-
psychocrypt authored
Read memory in bigger chunks per thread to increase the used memory bandwith. Use for Kepla and Fermi GPUs the old autosuggestion instead of the new settings for cryptonight_v8.
-
psychocrypt authored
Helper functions to select the asm version based on the number of used hashes per threads and the family name of the cpu. - use the noew cpu type functions to fix the wrong AMD family detection in `autoAdjust.hpp` - allow to set the asm version to `auto` - rename asm option `intel` to `intel_avx` - rename asm option `ryzen` to `amd_avx` Co-authored-by:
fireice-uk <fireice-uk@users.noreply.github.com>
-