summaryrefslogtreecommitdiffstats
path: root/xmrstak/backend/amd/amd_gpu
Commit message (Collapse)AuthorAgeFilesLines
* OpenCL precompiled code messagepsychocrypt2018-03-251-3/+3
| | | | change warning when precompiled OpenCL code is not found
* XMR-Stak 2.3.0 RCxmr-stak-devs2018-03-253-44/+334
| | | | | | | Co-authored-by: psychocrypt <psychocryptHPC@gmail.com> Co-authored-by: fireice-uk <fireice-uk@users.noreply.github.com> Co-authored-by: Lee Clagett <code@leeclagett.com> Co-authored-by: curie-kief <curie-kief@users.noreply.github.com>
* fix shadowed variablepsychocrypt2018-03-131-1/+1
| | | | A redefinition of a variable in a local scope avoid that the intensity is rounded to a multiple of the work size.
* add OpenCL compiler cachepsychocrypt2018-03-031-29/+182
| | | | | | | Reduce OpenCL start time by using a self made compiler cache. - store compiled OpenCL binary - load OpenCl binary if available
* fix broken memchunk featurepsychocrypt2018-02-212-2/+2
| | | | fix double definition of define `MEM_CHUNK`
* Merge pull request #1102 from psychocrypt/topic-opencl_1_1fireice-uk2018-02-211-0/+4
|\ | | | | fix compile with OpenCL 1.1
| * fix compile with OpenCL 1.1psychocrypt2018-02-191-0/+4
| | | | | | | | guard error types those are only defined in OpenCL >1.1
* | Merge pull request #1101 from psychocrypt/topic-mesaSupportfireice-uk2018-02-212-3/+26
|\ \ | | | | | | add Mesa OpenCL support
| * | add Mesa OpenCL supportpsychocrypt2018-02-192-3/+26
| |/ | | | | | | allow usage of Mesa OpenCl
* | add OpenCL compatibility modepsychocrypt2018-02-193-9/+28
|/ | | | | - add new option `comp_mode` to the amd config - disable `if guards` within opencl kernel if `comp_mode : false`
* Merge pull request #1087 from psychocrypt/topic-blockedStride3fireice-uk2018-02-193-11/+36
|\ | | | | AMD: option `mem_chunk`and new `strided_index`
| * AMD: `mem_chunk`and new `strided_index`psychocrypt2018-02-173-11/+36
| | | | | | | | | | - add new option for `strided_index` - add additional option if `strided_index == 2` to controll the memory chunk with
* | AMD: reduce register usagepsychocrypt2018-02-141-4/+4
|/ | | | reduce usage of registers: based on the suggestion of @enerc77
* fix output of gpu namepsychocrypt2018-01-301-1/+1
| | | | fix that the GPU name is printed before the name is querried from OpenCL
* remove usage of `rotate`psychocrypt2018-01-241-1/+10
| | | | revert the change that the OpenCl function `rotate` is used instead of `SKEIN_ROT`
* author updateGrant Galitz2018-01-241-0/+1
|
* Optimize SkeinGrant Galitz2018-01-241-30/+48
| | | | | - Eliminate modulus math (It runs slow inside microcode). - Convert whatever the hell was going on into a rotate op. Like... Someone kinda reinvented the wheel in order to do a simple rotate.
* differgence in OpenCL codepsychocrypt2017-12-301-56/+48
| | | | | | remove branch differgences in AMD OpenCl code based on #454 a Please enter the commit message for your changes. Lines starting
* Make k unsigned.Unknown2017-12-061-1/+1
|
* Clean up the x-mas treeUnknown2017-12-061-52/+69
|
* Merge pull request #332 from psychocrypt/topic-tuneAMDfireice-uk2017-12-041-8/+22
|\ | | | | optimize aes round command queue
| * optimize aes round command queuepsychocrypt2017-12-031-8/+22
| | | | | | | | unroll AES round by hand to help the compiler to optimize the command queue
* | add AMD scratchpad indexing optionpsychocrypt2017-12-023-2/+21
|/ | | | | | Allow to change the indexing used to address the hash scratchpad memory. - add option `strided_index` for each gpu
* Update gpu.cppExceptionallyGreat2017-11-211-2/+2
| | | | Fix for AMD GPU detection on MacOS X On MacOS X the platform is reported as Apple, and the vendor is reported as AMD.
* Update gpu.hppExceptionallyGreat2017-11-211-0/+1
| | | Fixing the compile error on MacOS X
* Merge pull request #138 from psychocrypt/fix-amdMaxWorkSizefireice-uk2017-11-181-0/+4
|\ | | | | fix max work size shown to user
| * fix max work size shown to userpsychocrypt2017-11-181-0/+4
| | | | | | | | The max work size shown to the user was the hardware maximum but not take in account thet some kernel spwning 8 times more threads per work group than configured by the user.
* | Merge pull request #137 from psychocrypt/topic-handleOpenClErrorsfireice-uk2017-11-181-64/+82
|\ \ | | | | | | handle OpenCL errors
| * | handle OpenCL errorspsychocrypt2017-11-181-64/+82
| |/ | | | | | | | | - handle opencl errors to avoid unexpected behaviors - remove code duplicatio nwithin the some method
* | fix OpenCL compatibilitypsychocrypt2017-11-181-2/+2
|/ | | | | | - enforce that only host side OpenCl 1.2 functions are used if the miner is compiled with `XMR-STAK_COMPILE=generic` - update documentation - add CMake option `XMR-STAK_COMPILE` to windows
* Remove whitespace linesUnknown2017-11-161-3/+3
|
* remove space indention with tabspsychocrypt2017-11-161-31/+31
| | | | - removed all space indention in `*.hpp` and `*.cpp` files
* rename `xmr` to `monero`psychocrypt2017-10-271-6/+6
| | | | | | - rename all `xmr` to `monero` - be insensitive while check for set currency - add function to compate two strings insensitive
* add eon support to amd backendpsychocrypt2017-10-272-14/+34
| | | | | - add compile parameter to support aeon and xmr - update auto suggestion to handle aeon
* amd: use 64bit targetpsychocrypt2017-10-243-11/+20
| | | | | - remove 32bit target value - use always 64bit target for amd backend
* move nicehash check into nonce calcfireice-uk2017-10-222-3/+5
|
* fix assert in AMD backendpsychocrypt2017-10-201-1/+1
| | | | | | fix bug announced in #52 If the miner is compiled in debug mode the assert condition results in a compile time error.
* remove early returnspsychocrypt2017-10-101-335/+376
| | | | | | | | | | | | Early returns within a kernel can have unexpected behavior, this strongly depends on the opencl runtime compiler. To avoid errors all early returns are removed. There is no negative effect(e.g.performance) if the threads stay alive up to the end of the kernel. One source for the early return is: http://al-key-opencl.blogspot.de/2014/09/be-careful-not-to-mix-early-return-and.html This pull request also fix a race condition where all fill the shared memory. Also a bug introduced with #16 is fixed, because of the early return not was possible that the last block works with an wrong initilized shared memory (result should be a wrong hash if the result target size is valid).
* avoid possible illegal memory accesspsychocrypt2017-10-062-8/+31
| | | | | Is is possible that the number of results are greater than the result output array, in this case invalid memory can be access within the device and on the host side.
* add assert to validate number of global threadspsychocrypt2017-10-051-0/+5
| | | | check that the number of global threads is a multiple of the workgroup size
* fix invalid kernel call parameterpsychocrypt2017-10-052-24/+59
| | | | | The number of threads within a kernel must be a multiple of the worksize. If not it can crash on some systems.
* fix windows compilepsychocrypt2017-09-301-1/+2
| | | | - string literal can only be 16kbyte
* cleanup includespsychocrypt2017-09-302-4/+3
|
* group filespsychocrypt2017-09-308-0/+2664
- move source code to `src` - categorize files and move to group folder - change upper case class files to lower case - change C++ header to `*.hpp`
OpenPOWER on IntegriCloud