Wolf's XMR/BCN/DSH CPUMiner - 2x speed compared to
LucasJones' -
The other thread was too haphazard
and confusing, so I started a new one. I modified CPUMiner-Multi to give 2x the
speed or more when mining CryptoNote coins. It is slower on Windows, but still
far faster than Lucas' miner.I ran a test, LucasJones' repo against mine. Each
had the exact same CFLAGS (-Ofast -flto
-fuse-linker-plugin -funroll-loops
-fsplit-ivs-in-unroller -fvariable-expansion-in-unroller -falign-loops=16
-falign-functions=16 -falign-jumps=16 -falign-labels=16). Each were run with 21
threads for a period of time over 20min. I can't be more accurate than that,
because I didn't sit and time it. They were run at seperate times on the same
machine - a 32 core Amazon EC2 instance with 58GB of RAM. The results? Lucas'
cpuminer reported 627.58H/s - but only pulled 600 at the pool. My miner
reported 1021.73 and pulled an impressive 1.25KH/s at the pool. Now, even with
vardiff causing high share difficulties and luck contributing to inaccuracy,
this shows a clear 100% increase. I have screenshots to prove it, but before I
post them, I have to warn - I was too lazy to crop out my wallpapers, so they
are NSFW.
Lucas' miner (NSFW):
https://ottrbutt.com/tmp/lucasminer-proof.png
My miner (NSFW):
https://ottrbutt.com/tmp/wolfminer-proof.png
So... get the source here:
https://github.com/wolf9466/cpuminer-multi
Win64 binaries exist but require
AES-NI. How do you know if you have it? If the binary crashes, you don't.
They're here:
I made some new ones that should
provide an improvement. It's based off some new code I just pushed to my github
minutes ago:
https://ottrbutt.com/cpuminer-multi/cpuminer-multi-wolf-05-30-2014.zip.sig
For the GPG sigs, my key ID and
fingerprint is in my signature.
For best performance - play with the
number of threads. Often, less is more - there's a reason I used only 21
threads on the 32 core AWS instance in the official test - it resulted in the
highest hashrate.
If you see this hosted anywhere else
- be wary of it. Check the GPG sig. If you don't know how to, then just know
that ottrbutt.com is the ONLY official place to find them, and copies elsewhere
may be laced with malware.
Since there has been trouble
reproducing my first test, I did another one, this time on a Digital Ocean
16-core. To reduce inaccuracy caused by luck, I used a port the owner of
moneropool.com opened for me - it has a share diff of 1000 and no vardiff. The results
are roughly the same. These screenshots are NSFW, as well. Why? Well, since
hardly anyone ever donates, I may as well get to have some fun for my work
Tongue
NEW -- 06/08/2014
Up to a 25% speedup if you're lucky
- but only for Linux. First, do a "sysctl vm.nr_hugepages" - it'll
probably say 0. Set it with "sudo sysctl -w vm.nr_hugepages=num"
where "num" is the number of threads you're running times three. You
may want to play with the threads again to get the best performance. Once set,
use "sysctl vm.nr_hugepages" again to make sure it's set. If it's not
- reboot and try again, your memory is too fragmented, and the kernel cannot
allocate enough contiguous memory for the hugepages. Once done, compile the
miner from git as usual and try it out.
Before this, I had maybe 200H/s on
my i7-4770K - clocked to 4.5Ghz and underwater. Peak at around 220H/s.
With this new miner:
https://ottrbutt.com/tmp/newminer-06082014.png
This will do almost nothing in virtualized
environments like AWS.
No comments:
Post a Comment