diff options
author | psychocrypt <psychocrypt@users.noreply.github.com> | 2017-10-06 22:24:25 +0200 |
---|---|---|
committer | psychocrypt <psychocrypt@users.noreply.github.com> | 2017-10-10 21:04:37 +0200 |
commit | 2c2d05e57abaaf931d693a7e7997037350bcb5e4 (patch) | |
tree | 907b888fb9769ef7438a03ec9d3ef53324c7672e /xmrstak/misc/executor.cpp | |
parent | e79debcfcba699a5aaf3996e18338a2c0183bb0e (diff) | |
download | xmr-stak-2c2d05e57abaaf931d693a7e7997037350bcb5e4.zip xmr-stak-2c2d05e57abaaf931d693a7e7997037350bcb5e4.tar.gz |
remove early returns
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).
Diffstat (limited to 'xmrstak/misc/executor.cpp')
0 files changed, 0 insertions, 0 deletions