Browse Source

README update.

nfactor-troky
Noel Maersk 11 years ago
parent
commit
82298d6457
  1. 144
      README.md

144
README.md

@ -1,12 +1,11 @@
cgminer # cgminer
=======
WARNING: this experimental version of cgminer is only meant to support Scrypt. **WARNING**: this experimental version of cgminer is only meant to
It will be renamed appropriately to reflect the fact if ever ready for support Scrypt. It will be renamed appropriately to reflect the fact if
general use. ever ready for general use.
Introduction
------------ ## Introduction
This is a multi-threaded multi-pool GPU miner with ATI GPU monitoring, This is a multi-threaded multi-pool GPU miner with ATI GPU monitoring,
(over)clocking and fanspeed support for scrypt-based coins. It is based on (over)clocking and fanspeed support for scrypt-based coins. It is based on
@ -15,56 +14,63 @@ Jeff Garzik (jgarzik).
GIT TREE: https://github.com/veox/cgminer GIT TREE: https://github.com/veox/cgminer
License: GPLv3. See COPYING for details. License: GPLv3. See `COPYING` for details.
See also `API-README`, `GPU-README` and `SCRYPT-README` for more
information on each.
See also API-README, GPU-README and SCRYPT-README for more information on
each.
## Building
Building ### Dependencies
--------
DEPENDENCIES:
Mandatory: Mandatory:
curl dev library http://curl.haxx.se/libcurl/
(libcurl4-openssl-dev)
pkg-config http://www.freedesktop.org/wiki/Software/pkg-config curl dev library http://curl.haxx.se/libcurl/
libtool http://www.gnu.org/software/libtool/ (libcurl4-openssl-dev)
pkg-config http://www.freedesktop.org/wiki/Software/pkg-config
libtool http://www.gnu.org/software/libtool/
AMD APP SDK http://developer.amd.com/sdks/AMDAPPSDK
(This sdk is mandatory for GPU mining)
Optional: Optional:
curses dev library
(libncurses5-dev or libpdcurses on WIN32 for text user interface)
AMD APP SDK http://developer.amd.com/sdks/AMDAPPSDK curses dev library
(This sdk is mandatory for GPU mining) (libncurses5-dev or libpdcurses on WIN32 for text user interface)
AMD ADL SDK http://developer.amd.com/sdks/ADLSDK AMD ADL SDK http://developer.amd.com/sdks/ADLSDK
(This sdk is mandatory for ATI GPU monitoring & clocking) (This sdk is mandatory for ATI GPU monitoring & clocking)
If building from git: If building from git:
autoconf
automake
autoconf
automake
CGMiner specific configuration options: CGMiner specific configuration options:
--disable-adl Override detection and disable building with adl
--without-curses Compile support for curses TUI (default enabled)
Basic *nix build instructions: --disable-adl Override detection and disable building with adl
To actually build: --without-curses Compile support for curses TUI (default enabled)
### *nix build instructions:
./autoreconf -i
CFLAGS="-O2 -Wall -march=native" ./configure <options>
Systemwide installation is optional. You may run cgminer from the build
directory directly, or `make install` if you wish to install
cgminer to a system location or location you specified with `--prefix`.
./autogen.sh # only needed if building from git repo ### Windows build instructions
CFLAGS="-O2 -Wall -march=native" ./configure <options>
No installation is necessary. You may run cgminer from the build See `windows-build.txt` (might be outdated).
directory directly, but you may do make install if you wish to install
cgminer to a system location or location you specified.
Native WIN32 build instructions: see windows-build.txt
## Basic Usage
Basic Usage **WARNING**: documentation below this point has not been updated since the
----------- fork.
After saving configuration from the menu, you do not need to give cgminer After saving configuration from the menu, you do not need to give cgminer
any arguments and it will load your configuration. any arguments and it will load your configuration.
@ -120,8 +126,7 @@ See GPU-README for more information regarding GPU mining and
SCRYPT-README for more information regarding litecoin mining. SCRYPT-README for more information regarding litecoin mining.
Runtime usage ## Runtime usage
-------------
The following options are available while running with a single keypress: The following options are available while running with a single keypress:
@ -189,11 +194,6 @@ The 8 byte hex value are the 2nd 8 bytes of the share being submitted to the
pool. The 2 diff values are the actual difficulty target that share reached pool. The 2 diff values are the actual difficulty target that share reached
followed by the difficulty target the pool is currently asking for. followed by the difficulty target the pool is currently asking for.
---
Also many issues and FAQs are covered in the forum thread
dedicated to this program,
http://forum.bitcoin.org/index.php?topic=28402.0
The output line shows the following: The output line shows the following:
(5s):1713.6 (avg):1707.8 Mh/s | A:729 R:8 HW:0 WU:22.53/m (5s):1713.6 (avg):1707.8 Mh/s | A:729 R:8 HW:0 WU:22.53/m
@ -236,29 +236,33 @@ and the all time best difficulty share you've found since starting cgminer
this time. this time.
--- ## Multipool
MULTIPOOL
### Failover strategies
FAILOVER STRATEGIES WITH MULTIPOOL:
A number of different strategies for dealing with multipool setups are A number of different strategies for dealing with multipool setups are
available. Each has their advantages and disadvantages so multiple strategies available. Each has their advantages and disadvantages so multiple strategies
are available by user choice, as per the following list: are available by user choice, as per the following list:
FAILOVER: #### Failover
The default strategy is failover. This means that if you input a number of The default strategy is failover. This means that if you input a number of
pools, it will try to use them as a priority list, moving away from the 1st pools, it will try to use them as a priority list, moving away from the 1st
to the 2nd, 2nd to 3rd and so on. If any of the earlier pools recover, it will to the 2nd, 2nd to 3rd and so on. If any of the earlier pools recover, it will
move back to the higher priority ones. move back to the higher priority ones.
ROUND ROBIN: #### Round robin
This strategy only moves from one pool to the next when the current one falls This strategy only moves from one pool to the next when the current one falls
idle and makes no attempt to move otherwise. idle and makes no attempt to move otherwise.
ROTATE: #### Rotate
This strategy moves at user-defined intervals from one active pool to the next, This strategy moves at user-defined intervals from one active pool to the next,
skipping pools that are idle. skipping pools that are idle.
LOAD BALANCE: #### Load balance
This strategy sends work to all the pools on a quota basis. By default, all This strategy sends work to all the pools on a quota basis. By default, all
pools are allocated equal quotas unless specified with --quota. This pools are allocated equal quotas unless specified with --quota. This
apportioning of work is based on work handed out, not shares returned so is apportioning of work is based on work handed out, not shares returned so is
@ -273,13 +277,13 @@ mode and it will distribute quota back to priority pool 0 from any pools that
are unable to provide work for any reason so as to maintain quota ratios are unable to provide work for any reason so as to maintain quota ratios
between the rest of the pools. between the rest of the pools.
BALANCE: #### Balance
This strategy monitors the amount of difficulty 1 shares solved for each pool This strategy monitors the amount of difficulty 1 shares solved for each pool
and uses it to try to end up doing the same amount of work for all pools. and uses it to try to end up doing the same amount of work for all pools.
--- ### Quotas
QUOTAS
The load-balance multipool strategy works off a quota based scheduler. The The load-balance multipool strategy works off a quota based scheduler. The
quotas handed out by default are equal, but the user is allowed to specify any quotas handed out by default are equal, but the user is allowed to specify any
@ -301,10 +305,10 @@ For example:
--url poola:porta -u usernamea -p passa --quota "2;poolb:portb" -u usernameb -p passb --url poola:porta -u usernamea -p passa --quota "2;poolb:portb" -u usernameb -p passb
Will give poola 1/3 of the work and poolb 2/3 of the work. Will give poola 1/3 of the work and poolb 2/3 of the work.
Writing configuration files with quotas is likewise supported. To use the above Writing configuration files with quotas is likewise supported. To use
quotas in a configuration file they would be specified thus: the above quotas in a configuration file they would be specified thus:
"pools" : [ "pools" : [
{ {
"url" : "poola:porta", "url" : "poola:porta",
"user" : "usernamea", "user" : "usernamea",
@ -315,24 +319,17 @@ quotas in a configuration file they would be specified thus:
"user" : "usernameb", "user" : "usernameb",
"pass" : "passb" "pass" : "passb"
} }
] ]
---
LOGGING
cgminer will log to stderr if it detects stderr is being redirected to a file. ## Logging
To enable logging simply add 2>logfile.txt to your command line and logfile.txt
will contain the logged output at the log level you specify (normal, verbose,
debug etc.)
In other words if you would normally use: cgminer will log to stderr if it detects stderr is being redirected to a
./cgminer -o xxx -u yyy -p zzz file. To enable logging simply append `2>logfile.txt` to your command line
if you use and `logfile.txt` will contain the logged output at the log level you
./cgminer -o xxx -u yyy -p zzz 2>logfile.txt specify (normal, verbose, debug etc.)
it will log to a file called logfile.txt and otherwise work the same.
There is also the -m option on linux which will spawn a command of your choice There is also the -m option on Linux which will spawn a command of your choice
and pipe the output directly to that command. and pipe the output directly to that command.
The WorkTime details 'debug' option adds details on the end of each line The WorkTime details 'debug' option adds details on the end of each line
@ -379,7 +376,6 @@ For example (this is wrapped, but it's all on one line for real):
0000000000000000000000000000000000000000000000000000000080020000 0000000000000000000000000000000000000000000000000000000080020000
--- ## RPC API
RPC API
For RPC API details see the API-README file See `API-README`.

Loading…
Cancel
Save