Tip of the dayObservations using Windows 7 64 bit, AMD 3100 quad-core processor as a testing rig.
magi.conf
addnode=66.55.90.58
addnode=107.107.52.31
addnode=162.243.219.192
daemon=1
server=1
rpcport=8232
rpcallowip=127.0.0.1
rpcuser=spexx
rpcpassword=stratocaster
Wallet mining solo with 4 threads generates approx 21 Kh/s or 5.25 Kh/s per thread.
Using any one of the 32 bit minerd.exe compilations for Windows that are currently available.
Solo mining using a batch file mineit.bat to start miner thus:-
start /min /low minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 4
This configuration generates approx 22 Kh/s or 5.5 Kh/s per thread.
Only 4.8 percent improvement on wallet mining.
Now, using the 64 bit minerd.exe from
https://drive.google.com/file/d/0B9cvOfoOekSdQktZN1I2SVhnNUk/edit?usp=sharing Using a batch file mineit.bat to start miner thus:-
start /min /low minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 4
This configuration generates approx 28 Kh/s or 7 Kh/s per thread.
Not bad with a
33 percent improvement on wallet mining.
OK so here is the clever bitUsing either the wallet mining or the 32 bit minerd.exe ensured that CPU time used was 100%
but the 64 bit minerd.exe only used 87 percent CPU time despite generating 33 percent more hashes.
Funny that.
The CPU also seemed to be spending a lot of time in Kernel mode. So after a lot
of mucking about I found that starting minerd.exe with only 1 thread
four times made a
big difference.
start /min /low minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
This configuration generates approx 38 Kh/s or 9.25 Kh/s per thread.
An impressive
81 percent improvement on wallet mining. CPU time now up to around 98 percent
with very little time spent in Kernel mode. Result. How can we tweak the last 2 percent out now?
OK so here is the second clever bitNow assign each minerd process to a fixed subset of three processors. On a four-core machine thus:-
start /min /low /affinity 0x7 minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xb minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xd minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xe minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
This configuration generates approx 41 Kh/s or 10.25 Kh/s per thread.
An impressive
95 percent improvement on wallet mining. CPU time now up to around 100 percent.
There is something here in the way a single minerd process handles multiple threads using this M7M algo.
Having multiple minerd processes running a single thread each uses processor time more efficiently.
On a 8-core machine you would need this batch file:-
start /min /low /affinity 0x7 minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xb minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xd minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xe minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0x70 minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xb0 minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xd0 minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
start /min /low /affinity 0xe0 minerd --url
http://127.0.0.1:8232 --user spexx --pass stratocaster --threads 1
Hope this helps. Any kind donations for the tip here to XMG 9EQ342ssXSxmpDURs6XNxAajB14DQzJDNX please.