git clone https://github.com/ethereum-mining/ethminer
cd ethminer; mkdir build; cd build
cmake ..
cmake --build .
sudo make install
ethminer --help
Usage ethminer [OPTIONS]
Options:
Work farming mode:
-F,--farm <url> Put into mining farm mode with the work server at URL (default: http://127.0.0.1:8545)
-FF,-FO, --farm-failover, --stratum-failover <url> Failover getwork/stratum URL (default: disabled)
--farm-retries <n> Number of retries until switch to failover (default: 3)
-S, --stratum <host:port> Put into stratum mode with the stratum server at host:port
-SF, --stratum-failover <host:port> Failover stratum server at host:port
-O, --userpass <username.workername:password> Stratum login credentials
-FO, --failover-userpass <username.workername:password> Failover stratum login credentials (optional, will use normal credentials when omitted)
--work-timeout <n> reconnect/failover after n seconds of working on the same (stratum) job. Defaults to 180. Don't set lower than max. avg. block time
-SC, --stratum-client <n> Stratum client version. Version 1 support only.
-SP, --stratum-protocol <n> Choose which stratum protocol to use:
0: official stratum spec: ethpool, ethermine, coinotron, mph, nanopool (default)
1: eth-proxy compatible: dwarfpool, f2pool, nanopool (required for hashrate reporting to work with nanopool)
2: EthereumStratum/1.0.0: nicehash
-RH, --report-hashrate Report current hashrate to pool (please only enable on pools supporting this)
-HWMON Displays gpu temp and fan percent.
-SE, --stratum-email <s> Email address used in eth-proxy (optional)
--farm-recheck <n> Leave n ms between checks for changed work (default: 500). When using stratum, use a high value (i.e. 2000) to get more stable hashrate output
Benchmarking mode:
-M [<n>],--benchmark [<n>] Benchmark for mining and exit; Optionally specify block number to benchmark against specific DAG.
--benchmark-warmup <seconds> Set the duration of warmup for the benchmark tests (default: 3).
--benchmark-trial <seconds> Set the duration for each trial for the benchmark tests (default: 3).
--benchmark-trials <n> Set the number of benchmark trials to run (default: 5).
Simulation mode:
-Z [<n>],--simulation [<n>] Mining test mode. Used to validate kernel optimizations. Optionally specify block number.
Mining configuration:
-G,--opencl When mining use the GPU via OpenCL.
-U,--cuda When mining use the GPU via CUDA.
-X,--cuda-opencl Use OpenCL + CUDA in a system with mixed AMD/Nvidia cards. May require setting --opencl-platform 1
--opencl-platform <n> When mining using -G/--opencl use OpenCL platform n (default: 0).
--opencl-device <n> When mining using -G/--opencl use OpenCL device n (default: 0).
--opencl-devices <0 1 ..n> Select which OpenCL devices to mine on. Default is to use all
-t, --mining-threads <n> Limit number of CPU/GPU miners to n (default: use everything available on selected platform)
--list-devices List the detected OpenCL/CUDA devices and exit. Should be combined with -G or -U flag
-L, --dag-load-mode <mode> DAG generation mode.
parallel - load DAG on all GPUs at the same time (default)
sequential - load DAG on GPUs one after another. Use this when the miner crashes during DAG generation
single <n> - generate DAG on device n, then copy to other devices
OpenCL configuration:
--cl-kernel <n> Use a different OpenCL kernel (default: use stable kernel)
0: stable kernel
1: experimental kernel
--cl-local-work Set the OpenCL local work size. Default is 128
--cl-global-work Set the OpenCL global work size as a multiple of the local work size. Default is 8192 * 128
--cl-parallel-hash <1 2 ..8> Define how many threads to associate per hash. Default=8
API core configuration:
--api-port Set the api port, the miner should listen to. Use 0 to disable. Default=0, use negative numbers to run in readonly mode. for example -3333.
General Options:
-v,--verbosity <0 - 9> Set the log verbosity from 0 to 9 (default: 8).
-V,--version Show the version and exit.
-h,--help Show this help message and exit.
Envionment variables:
NO_COLOR - set to any value to disable color output. Unset to re-enable color output.
Example Bash script for mining Ella
#/usr/bin/env bash
ADDRESS="0x..."
WORKER="rig"
#MAIN_POOL="eu.ellapool.eu:8002"
#MAIN_POOL="ellaismpool.com:8008"
#MAIN_POOL="pool.ellaism.io:8002"
#MAIN_POOL="cryptobitpool.eu:8002"
MAIN_POOL="beta-ella.pool.sexy:10082"
#MAIN_POOL="ella.minerpool.net:8002"
#MAIN_POOL="ella.pool.sexy:7007"
FAILOVER_POOL="ella.minerpool.net:8002"
#FAILOVER_POOL="beta-ella.pool.sexy:10082"
#FAILOVER_POOL="ella.pool.sexy:7007"
#FAILOVER_POOL="cryptobitpool.eu:8002"
#FAILOVER_POOL="pool.ellaism.io:8002"
PROTOCOL=1
OPENCL_DEVICES="0 1 2"
CL_KERNEL=0
RECHECK=2000
ethminer -HWMON --report-hashrate --farm-recheck $RECHECK \
--opencl --opencl-devices $OPENCL_DEVICES --cl-kernel $CL_KERNEL \
-SP $PROTOCOL -S $MAIN_POOL -SF $FAILOVER_POOL -O ${ADDRESS}.${WORKER}