#########################################
dstm's ZCash Cuda miner
####################################### ##
I've written it initially for my own purpose. It performs pretty well - so here it is.
Compatible with devices having Compute Capability 5.0 and higher ie it should run fine on Maxwell / Pascal GPUs.
Supports every server using the stratum protocol. If you have issues with certain pools pls. report them here.
Contains 2% devfee.
Suggestions are welcome.
Performance:
1080Ti 725-740 Sol / s
1070 440-450 Sol / s
stock settings
UI:
Sample output mining on a rig with 8 GPUs.
GPU0-7: 1070Ti
Code:
GPU0 65C 75% | 507.9 Sol / s 504.9 Avg 269.8 I / s | 4.52 S / W 112 W | 3.74 100 39 ++++++++
GPU1 64C 70% | 508.4 Sol / s 509.1 Avg 273.0 I / s | 4.57 S / W 111 W | 4.11 100 38 +++++++++
GPU2 62C 70% | 512.9 Sol / s 514.0 Avg 274.0 I / s | 4.60 S / W 110 W | 2.62 100 37 +++++
GPU3 61C 70% | 502.4 Sol / s 500.8 Avg 266.9 I / s | 4.48 S / W 113 W | 2.24 100 38 ++++++++ *
GPU4 64C 70% | 508.6 Sol / s 508.2 Avg 272.9 I / s | 4.53 S / W 111 W | 1.49 100 38 ++++++++
GPU5 57C 70% | 506.7 Sol / s 504.7 Avg 270.0 I / s | 4.53 S / W 110 W | 1.94 100 38 ++++++++
GPU6 59C 70% | 514.5 Sol / s 506.3 Avg 270.4 I / s | 4.55 S / W 112 W | 2.36 100 38 ++++++
GPU7 64C 75% | 511.1 Sol / s 515.1 Avg 275.2 I / s | 4.62 S / W 109 W | 1.12 100 37 ++++++++
4072.6 Sol / s 4063.3 Avg 2172.1 I / s | 4.55 S / W 891 W | ++++++++++ 37 100 19.63
Salt / s: per second solutions
Avg: average solutions per second
I / s: iterations per second GPU done by the
S / W efficiency - average salt / s per Watt
W : power consuption in Watt
last 3 colums
:: indicates that a new job was received
Linux:
openssl 1.0 (for versions <= 0.5.7)
Windows:
Visual C ++ Redistributable for Visual Studio 2015 (VCRUNTIME140.dll)
Version 0.6.2
Download For Linux x64
Win x64:
Download For Win x64
Version 0.6.1
with: add support for protocol v.01000020
link openssl statically
Version 0.5.7
reduce cpu load
minor performance improvements
with: use single pool connection
with: ssl: clear session data before reconnect
nvml: handle invalid values
Version 0.5.6
reduce cpu load less
performance improvements
Version 0.5.5
with: handle failure of dev share pool
with: disable reconnect limit
logfile: disable buffering
Version 0.5.4
fix: device selection
fix: latency reporting
add logfile support
add option to disable auto reconnect
handle disconnect periods in web / json stats
add basic GPU responsiveness infrastructure
ui: change timestamps to ISO 8601 format
webui: report: uptime contime server user port
json: report: uptime contime server user port version
Version 0.5.3
cpu: reduce cpu load
with: fix recon loop
with: network latency measurement
ui: add accepted / rejected shares ratio
ui: add network latency
ui: add information about selected devices
Version 0.5.2
fix a race that may have corrupted shares
net: tcp: disable the Nagle algorithm
which reduces network latency in some circumstances
net: lower keepalive for nat-networks
Version 0.5.1
with: fix reconnection could have give up too early
with: enable TCP Keepalive to prevent nat-routers from
dropping the connection.
rec: output rejected shares
rec: optional output of timestamps
telemetry: make the web ui mobile friendly + add share stats
telemetry: json: add sea GPU stats
Version 0.5
con: support set_extranonce rpc
zones: improve handling of temporary slow network conditions
con: add monitoring support using web browser
con: add monitoring support using JSON-RPC
mp: rebalance queue sizes - this improves the solution rate as
seen by the pools, especially on pools that submit new jobs often
Version 0.4.5
fix: bad miner performance when using - -temp-target
on systems with many GPUs
reduce temperature controller cpu usage
Version 0.4.4
fix: Sol / W could have produced incorrect values
fix: Sum not shown if --dev was used
fix: memory leak on reconnection
improve stability
Version 0.4.3 strum
: support more pools
ui: flush stdout stream
with: improve reconnections
performance improvements 0.3-0.5%
Version 0.4.2
mp: more accurate time measurements
ui: calculate efficiency
Version 0.4.1
improve performance
Version 0.4.0
controller temperature added
CPU: reduce CPU usage
with: improve pool support
minor performance improvement
Version 0.3.2
mp: improve stability
with: support more pools
with: more robust reconnection support for unreliable
servers that often drop the connection
ui: Report GPU temperature
Version 0.3.1
cpu: reduce CPU usage
Version 0.3
with: support encrypted connections
Version 0.2.2
with: Miner reconnects automatically on connection loss now,
eg on DSL-disconnects / public IP-changes
UI: Report Submitted devfee-shares
Version 0.2.1
Performance improvements:
dstm's ZCash Cuda miner
####################################### ##
I've written it initially for my own purpose. It performs pretty well - so here it is.
Compatible with devices having Compute Capability 5.0 and higher ie it should run fine on Maxwell / Pascal GPUs.
Supports every server using the stratum protocol. If you have issues with certain pools pls. report them here.
Contains 2% devfee.
Suggestions are welcome.
Performance:
1080Ti 725-740 Sol / s
1070 440-450 Sol / s
stock settings
UI:
Sample output mining on a rig with 8 GPUs.
GPU0-7: 1070Ti
Code:
GPU0 65C 75% | 507.9 Sol / s 504.9 Avg 269.8 I / s | 4.52 S / W 112 W | 3.74 100 39 ++++++++
GPU1 64C 70% | 508.4 Sol / s 509.1 Avg 273.0 I / s | 4.57 S / W 111 W | 4.11 100 38 +++++++++
GPU2 62C 70% | 512.9 Sol / s 514.0 Avg 274.0 I / s | 4.60 S / W 110 W | 2.62 100 37 +++++
GPU3 61C 70% | 502.4 Sol / s 500.8 Avg 266.9 I / s | 4.48 S / W 113 W | 2.24 100 38 ++++++++ *
GPU4 64C 70% | 508.6 Sol / s 508.2 Avg 272.9 I / s | 4.53 S / W 111 W | 1.49 100 38 ++++++++
GPU5 57C 70% | 506.7 Sol / s 504.7 Avg 270.0 I / s | 4.53 S / W 110 W | 1.94 100 38 ++++++++
GPU6 59C 70% | 514.5 Sol / s 506.3 Avg 270.4 I / s | 4.55 S / W 112 W | 2.36 100 38 ++++++
GPU7 64C 75% | 511.1 Sol / s 515.1 Avg 275.2 I / s | 4.62 S / W 109 W | 1.12 100 37 ++++++++
4072.6 Sol / s 4063.3 Avg 2172.1 I / s | 4.55 S / W 891 W | ++++++++++ 37 100 19.63
Salt / s: per second solutions
Avg: average solutions per second
I / s: iterations per second GPU done by the
S / W efficiency - average salt / s per Watt
W : power consuption in Watt
last 3 colums
:: indicates that a new job was received
- : indicates one submitted share
- : indicates one submitted dev fee share
=: sum / average if mining on multiple GPUs
Linux:
openssl 1.0 (for versions <= 0.5.7)
Windows:
Visual C ++ Redistributable for Visual Studio 2015 (VCRUNTIME140.dll)
Version 0.6.2
- fixed ssl handshake failures
- fixed device selection bug introduced in 0.6.1
- make linux performance improvements introduced in 0.6.1 optional
via 'mq-solver' parameter (due to issues on some systems) - improve device initialization on large systems
Download For Linux x64
Win x64:
Download For Win x64
Version 0.6.1
- fix failover-pool not switching back on ssl errors
- fixed failover-pool not switching back on some servers
- add support for stratum's client.reconnect rpc
- support configuration of 'temp-target', 'intensity', 'pool' via cmd-line parameters
- report current problem and target on term-ui
- sort output by gpu_id is term-ui
- colorize temperature above 70 ° C is term
- report intended fan speed on term, web, json-rpc
- report power consumption on term-ui
- improve performance on linux systems by ~ 2%
- failover pool support
- introduce configuration file
- introduce intensity option
- support per gpu temp-target via cfg-file
- support per gpu intensity via cfg-file
- json-rpc report gpu_name, pci_bus_id, pci_device_id
gpu_uuid - improve error reporting
- improve handling of invalid server resposes
- improve reconnection in cases where servers
become reachable but respond with malformed data - ui: add colorized output
- web-ui: use dark colors
with: add support for protocol v.01000020
link openssl statically
Version 0.5.7
reduce cpu load
minor performance improvements
with: use single pool connection
with: ssl: clear session data before reconnect
nvml: handle invalid values
Version 0.5.6
reduce cpu load less
performance improvements
Version 0.5.5
with: handle failure of dev share pool
with: disable reconnect limit
logfile: disable buffering
Version 0.5.4
fix: device selection
fix: latency reporting
add logfile support
add option to disable auto reconnect
handle disconnect periods in web / json stats
add basic GPU responsiveness infrastructure
ui: change timestamps to ISO 8601 format
webui: report: uptime contime server user port
json: report: uptime contime server user port version
Version 0.5.3
cpu: reduce cpu load
with: fix recon loop
with: network latency measurement
ui: add accepted / rejected shares ratio
ui: add network latency
ui: add information about selected devices
Version 0.5.2
fix a race that may have corrupted shares
net: tcp: disable the Nagle algorithm
which reduces network latency in some circumstances
net: lower keepalive for nat-networks
Version 0.5.1
with: fix reconnection could have give up too early
with: enable TCP Keepalive to prevent nat-routers from
dropping the connection.
rec: output rejected shares
rec: optional output of timestamps
telemetry: make the web ui mobile friendly + add share stats
telemetry: json: add sea GPU stats
Version 0.5
con: support set_extranonce rpc
zones: improve handling of temporary slow network conditions
con: add monitoring support using web browser
con: add monitoring support using JSON-RPC
mp: rebalance queue sizes - this improves the solution rate as
seen by the pools, especially on pools that submit new jobs often
Version 0.4.5
fix: bad miner performance when using - -temp-target
on systems with many GPUs
reduce temperature controller cpu usage
Version 0.4.4
fix: Sol / W could have produced incorrect values
fix: Sum not shown if --dev was used
fix: memory leak on reconnection
improve stability
Version 0.4.3 strum
: support more pools
ui: flush stdout stream
with: improve reconnections
performance improvements 0.3-0.5%
Version 0.4.2
mp: more accurate time measurements
ui: calculate efficiency
Version 0.4.1
improve performance
Version 0.4.0
controller temperature added
CPU: reduce CPU usage
with: improve pool support
minor performance improvement
Version 0.3.2
mp: improve stability
with: support more pools
with: more robust reconnection support for unreliable
servers that often drop the connection
ui: Report GPU temperature
Version 0.3.1
cpu: reduce CPU usage
Version 0.3
with: support encrypted connections
Version 0.2.2
with: Miner reconnects automatically on connection loss now,
eg on DSL-disconnects / public IP-changes
UI: Report Submitted devfee-shares
Version 0.2.1
Performance improvements:
- about 4% is Maxwell
- about 1% is Pascal
- Improved pascal perfromance.
- Added support for concurrent mining on multiple GPUs.
- Be asynchronous where possible.
- Security work