Skip to content

Instantly share code, notes, and snippets.

@lexruee
Last active February 15, 2018 23:14
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save lexruee/dd4b58d9ef857dfa0a5fa5330f8a36e0 to your computer and use it in GitHub Desktop.
Save lexruee/dd4b58d9ef857dfa0a5fa5330f8a36e0 to your computer and use it in GitHub Desktop.
ethminer-help.md

Ethminer 0.14.0.dev1

Installation on GNU/Linux

git clone https://github.com/ethereum-mining/ethminer
cd ethminer; mkdir build; cd build
cmake ..
cmake --build .
sudo make install

Usage

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.

Usage Examples

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}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment