-
Notifications
You must be signed in to change notification settings - Fork 229
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Cryptonight variant 2 support #160
Conversation
- Added new per-thread parameter "unroll_factor" which can be set to 1, 2, 4, 8, 16, 32 or 64, default is 8. - CNv2 OpenCL code is in a separate kernel because it uses 1KB more local memory which can hurt other variants performance - Fixed a bug with "comp_mode"=1 no matter what was set in config.json Sample thread setting for Radeon RX 560 which gave me the best performance: "threads": [ { "index": 0, "intensity": 1024, "worksize": 32, "strided_index": 0, "mem_chunk": 2, "unroll_factor": 16, "comp_mode": false, "affine_to_cpu": false } ],
It turned out to be easier than I thought - it took only a few hours to port my OpenCL code. I only tested it on Windows with my RX 560. Command-line parameter setting was not tested, I don't know xmrig well enough to test that. |
What about About command-line parameter don't worry, I will fix it. |
Ah, I see. I need to think how to rewrite it properly then. |
Wow, I've added strided index support to V2 and got better performance with strided_index = 2 and mem_chunk = 2 (64 bytes), but strided_index = 1 kills V2 performance because 16 bytes is too small granularity for V2. I'll test it some more and then submit. |
Best setting is strided_index=2 and mem_chunk=2.
@SChernykh Attempting to run CNv2 with dual threads and Therefore, I would recommend Additionally, if the default |
@SChernykh Merged, thank you, about default options/better autoconfig new PR welcome. |
Sample thread setting for Radeon RX 560 which gave me the best performance:
Performance was the same as in my previous GPU tests.