Browse Source

misc: Replace many (but not all) instances of 'cgminer' with 'sgminer'.

Just ran a `sed -i 's/cgminer/sgminer/'` on several files.
nfactor-troky
Noel Maersk 11 years ago
parent
commit
5b977125fa
  1. 4
      AUTHORS.md
  2. 38
      Makefile.am
  3. 50
      README.md
  4. 4
      api.c
  5. 32
      configure.ac
  6. 194
      doc/API
  7. 44
      doc/FAQ
  8. 126
      doc/GPU
  9. 28
      doc/SCRYPT
  10. 30
      doc/windows-build.txt
  11. 0
      sgminer.c

4
AUTHORS.md

@ -5,17 +5,17 @@ @@ -5,17 +5,17 @@
* Scrypt-only refactor and maintenance: Noel Maersk <veox at wemakethings dot net> LfxRFgXzA13TSTxgFGUFEtumv5ShGzAmLw
* Core code: Con Kolivas <kernel@kolivas.org> 15qSxP1SQcUX3o4nhkfdbgyoWEFMomJ4rZ
* Improvements to core: Martin Danielsen <kalroth@gmail.com>
* API: Andrew Smith <kan0i {at} kano-kun [dot] net> 1Jjk2LmktEQKnv8r2cZ9MvLiZwZ9gxabKm
## Bug fixes
Too many to list. See:
* [veox/cgminer](https://github.com/veox/cgminer/graphs/contributors)
* [veox/sgminer](https://github.com/veox/sgminer/graphs/contributors)
* [ckolivas/cgminer](https://github.com/ckolivas/cgminer/graphs/contributors)
## Legacy
* API: Andrew Smith <kan0i {at} kano-kun [dot] net> 1Jjk2LmktEQKnv8r2cZ9MvLiZwZ9gxabKm
* Original CPU mining software: Jeff Garzik <jgarzik@pobox.com>

38
Makefile.am

@ -12,33 +12,33 @@ SUBDIRS = lib compat ccan @@ -12,33 +12,33 @@ SUBDIRS = lib compat ccan
INCLUDES = $(PTHREAD_FLAGS) -fno-strict-aliasing $(JANSSON_CPPFLAGS)
bin_PROGRAMS = cgminer
bin_PROGRAMS = sgminer
cgminer_LDFLAGS = $(PTHREAD_FLAGS)
cgminer_LDADD = $(DLOPEN_FLAGS) @LIBCURL_LIBS@ @JANSSON_LIBS@ @PTHREAD_LIBS@ \
sgminer_LDFLAGS = $(PTHREAD_FLAGS)
sgminer_LDADD = $(DLOPEN_FLAGS) @LIBCURL_LIBS@ @JANSSON_LIBS@ @PTHREAD_LIBS@ \
@OPENCL_LIBS@ @NCURSES_LIBS@ @PDCURSES_LIBS@ @WS2_LIBS@ \
@MM_LIBS@ @RT_LIBS@ @MATH_LIBS@ lib/libgnu.a ccan/libccan.a
cgminer_CPPFLAGS += -I$(top_builddir)/lib -I$(top_srcdir)/lib @OPENCL_FLAGS@
sgminer_CPPFLAGS += -I$(top_builddir)/lib -I$(top_srcdir)/lib @OPENCL_FLAGS@
if !HAVE_WINDOWS
cgminer_CPPFLAGS += @LIBCURL_CFLAGS@
sgminer_CPPFLAGS += @LIBCURL_CFLAGS@
endif
cgminer_CPPFLAGS += $(ADL_CPPFLAGS)
cgminer_SOURCES := cgminer.c
cgminer_SOURCES += api.c
cgminer_SOURCES += elist.h miner.h compat.h bench_block.h
cgminer_SOURCES += util.c util.h uthash.h
cgminer_SOURCES += sha2.c sha2.h
cgminer_SOURCES += logging.c logging.h
cgminer_SOURCES += driver-opencl.c driver-opencl.h
cgminer_SOURCES += ocl.c ocl.h
cgminer_SOURCES += findnonce.c findnonce.h
cgminer_SOURCES += adl.c adl.h adl_functions.h
cgminer_SOURCES += scrypt.c scrypt.h
cgminer_SOURCES += *.cl
sgminer_CPPFLAGS += $(ADL_CPPFLAGS)
sgminer_SOURCES := sgminer.c
sgminer_SOURCES += api.c
sgminer_SOURCES += elist.h miner.h compat.h bench_block.h
sgminer_SOURCES += util.c util.h uthash.h
sgminer_SOURCES += sha2.c sha2.h
sgminer_SOURCES += logging.c logging.h
sgminer_SOURCES += driver-opencl.c driver-opencl.h
sgminer_SOURCES += ocl.c ocl.h
sgminer_SOURCES += findnonce.c findnonce.h
sgminer_SOURCES += adl.c adl.h adl_functions.h
sgminer_SOURCES += scrypt.c scrypt.h
sgminer_SOURCES += *.cl
bin_SCRIPTS = $(top_srcdir)/*.cl

50
README.md

@ -1,8 +1,4 @@ @@ -1,8 +1,4 @@
# cgminer
**WARNING**: this experimental version of cgminer is only meant to
support Scrypt. It will be renamed appropriately to reflect the fact if
ever ready for general use.
# sgminer
## Introduction
@ -12,7 +8,7 @@ This is a multi-threaded multi-pool GPU miner with ATI GPU monitoring, @@ -12,7 +8,7 @@ This is a multi-threaded multi-pool GPU miner with ATI GPU monitoring,
cgminer by Con Kolivas (ckolivas), which is in turn based on cpuminer by
Jeff Garzik (jgarzik).
GIT TREE: https://github.com/veox/cgminer
GIT TREE: https://github.com/veox/sgminer
License: GPLv3. See `COPYING` for details.
@ -57,27 +53,27 @@ If building from git: @@ -57,27 +53,27 @@ If building from git:
autoconf
automake
CGMiner specific configuration options:
sgminer-specific configuration options:
--disable-adl Override detection and disable building with adl
--without-curses Compile support for curses TUI (default enabled)
--without-curses Do not compile support for curses TUI
### *nix build instructions
If needed, place include headers (`*.h` files) from `ADL_SDK_*<VERSION>*.zip` in `cgminer/ADL_SDK`.
If needed, place include headers (`*.h` files) from `ADL_SDK_*<VERSION>*.zip` in `sgminer/ADL_SDK`.
Then:
autoreconf -i
CFLAGS="-O2 -Wall -march=native" ./configure <options>
Systemwide installation is optional. You may run cgminer from the build
Systemwide installation is optional. You may run `sgminer` from the build
directory directly, or `make install` if you wish to install
cgminer to a system location or location you specified with `--prefix`.
`sgminer` to a system location or a location you specified with `--prefix`.
### Windows build instructions
See `windows-build.txt` (might be outdated).
See `doc/windows-build.txt` (might be outdated).
## Basic Usage
@ -85,7 +81,7 @@ See `windows-build.txt` (might be outdated). @@ -85,7 +81,7 @@ See `windows-build.txt` (might be outdated).
**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 sgminer
any arguments and it will load your configuration.
Any configuration file may also contain a single
@ -99,23 +95,23 @@ output. @@ -99,23 +95,23 @@ output.
Single pool:
cgminer -o http://pool:port -u username -p password
sgminer -o http://pool:port -u username -p password
Multiple pools:
cgminer -o http://pool1:port -u pool1username -p pool1password -o http://pool2:port -u pool2usernmae -p pool2password
sgminer -o http://pool1:port -u pool1username -p pool1password -o http://pool2:port -u pool2usernmae -p pool2password
Single pool with a standard http proxy, regular desktop:
cgminer -o "http:proxy:port|http://pool:port" -u username -p password
sgminer -o "http:proxy:port|http://pool:port" -u username -p password
Single pool with a socks5 proxy, regular desktop:
cgminer -o "socks5:proxy:port|http://pool:port" -u username -p password
sgminer -o "socks5:proxy:port|http://pool:port" -u username -p password
Single pool with stratum protocol support:
cgminer -o stratum+tcp://pool:port -u username -p password
sgminer -o stratum+tcp://pool:port -u username -p password
The list of proxy types are:
http: standard http 1.1 proxy
@ -125,15 +121,15 @@ The list of proxy types are: @@ -125,15 +121,15 @@ The list of proxy types are:
socks4a: socks4a proxy
socks5h: socks5 proxy using a hostname
If you compile cgminer with a version of CURL before 7.19.4 then some of
If you compile sgminer with a version of CURL before 7.19.4 then some of
the above will not be available. All are available since CURL version
7.19.4.
If you specify the --socks-proxy option to cgminer, it will only be
If you specify the --socks-proxy option to sgminer, it will only be
applied to all pools that don't specify their own proxy setting like
above.
For more advanced usage , run `cgminer --help`.
For more advanced usage , run `sgminer --help`.
See `doc/GPU` for more information regarding GPU mining and
`doc/SCRYPT` for more information regarding Scrypt mining.
@ -231,7 +227,7 @@ The total difficulty of rejected shares @@ -231,7 +227,7 @@ The total difficulty of rejected shares
The number of hardware erorrs
The work utility defined as the number of diff1 shares work / minute
The cgminer status line shows:
The sgminer status line shows:
ST: 1 SS: 0 NB: 1 LW: 8 GF: 1 RF: 1
ST is STaged work items (ready to use).
@ -245,7 +241,7 @@ The block display shows: @@ -245,7 +241,7 @@ The block display shows:
Block: 0074c5e482e34a506d2a051a... Started: [17:17:22] Best share: 2.71K
This shows a short stretch of the current block, when the new block started,
and the all time best difficulty share you've found since starting cgminer
and the all time best difficulty share you've found since starting sgminer
this time.
@ -337,7 +333,7 @@ the above quotas in a configuration file they would be specified thus: @@ -337,7 +333,7 @@ the above quotas in a configuration file they would be specified thus:
## Logging
cgminer will log to stderr if it detects stderr is being redirected to a
sgminer will log to stderr if it detects stderr is being redirected to a
file. To enable logging simply append `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.)
@ -366,14 +362,14 @@ usually 0.000 unless there was a problem with submitting the work, @@ -366,14 +362,14 @@ usually 0.000 unless there was a problem with submitting the work,
S:n.nnn is how long it took to submit the completed work and await the reply,
R:hh:mm:ss is the actual time the work submit reply was received
If you start cgminer with the --sharelog option, you can get detailed
If you start sgminer with the --sharelog option, you can get detailed
information for each share found. The argument to the option may be "-" for
standard output (not advisable with the ncurses UI), any valid positive number
for that file descriptor, or a filename.
To log share data to a file named "share.log", you can use either:
./cgminer --sharelog 50 -o xxx -u yyy -p zzz 50>share.log
./cgminer --sharelog share.log -o xxx -u yyy -p zzz
./sgminer --sharelog 50 -o xxx -u yyy -p zzz 50>share.log
./sgminer --sharelog share.log -o xxx -u yyy -p zzz
For every share found, data will be logged in a CSV (Comma Separated Value)
format:

4
api.c

@ -368,7 +368,7 @@ struct CODES { @@ -368,7 +368,7 @@ struct CODES {
{ SEVERITY_ERR, MSG_MISID, PARAM_NONE, "Missing device id parameter" },
{ SEVERITY_SUCC, MSG_GPUDEV, PARAM_GPU, "GPU%d" },
{ SEVERITY_SUCC, MSG_NUMGPU, PARAM_NONE, "GPU count" },
{ SEVERITY_SUCC, MSG_VERSION, PARAM_NONE, "CGMiner versions" },
{ SEVERITY_SUCC, MSG_VERSION, PARAM_NONE, "SGMiner versions" },
{ SEVERITY_ERR, MSG_INVJSON, PARAM_NONE, "Invalid JSON" },
{ SEVERITY_ERR, MSG_MISCMD, PARAM_CMD, "Missing JSON '%s'" },
{ SEVERITY_ERR, MSG_MISPID, PARAM_NONE, "Missing pool id parameter" },
@ -1552,7 +1552,7 @@ static void apiversion(struct io_data *io_data, __maybe_unused SOCKETTYPE c, __m @@ -1552,7 +1552,7 @@ static void apiversion(struct io_data *io_data, __maybe_unused SOCKETTYPE c, __m
message(io_data, MSG_VERSION, 0, NULL, isjson);
io_open = io_add(io_data, isjson ? COMSTR JSON_VERSION : _VERSION COMSTR);
root = api_add_string(root, "CGMiner", VERSION, false);
root = api_add_string(root, "SGMiner", VERSION, false);
root = api_add_const(root, "API", APIVERSION, false);
root = print_data(root, buf, isjson, false);

32
configure.ac

@ -11,12 +11,12 @@ m4_define([lt_age], v_min) @@ -11,12 +11,12 @@ m4_define([lt_age], v_min)
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
AC_INIT([cgminer], [v_ver], [kernel@kolivas.org])
AC_INIT([sgminer], [v_ver], [kernel@kolivas.org])
AC_PREREQ(2.59)
AC_CANONICAL_SYSTEM
AC_CONFIG_MACRO_DIR([m4])
AC_CONFIG_SRCDIR([cgminer.c])
AC_CONFIG_SRCDIR([sgminer.c])
AC_CONFIG_HEADERS([config.h])
AM_INIT_AUTOMAKE([foreign subdir-objects])
@ -27,9 +27,9 @@ AC_USE_SYSTEM_EXTENSIONS @@ -27,9 +27,9 @@ AC_USE_SYSTEM_EXTENSIONS
##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##--##
m4_ifdef([v_rev], , [m4_define([v_rev], [0])])
m4_ifdef([v_rel], , [m4_define([v_rel], [])])
AC_DEFINE_UNQUOTED(CGMINER_MAJOR_VERSION, [v_maj], [Major version])
AC_DEFINE_UNQUOTED(CGMINER_MINOR_VERSION, [v_min], [Minor version])
AC_DEFINE_UNQUOTED(CGMINER_MINOR_SUBVERSION, [v_mic], [Micro version])
AC_DEFINE_UNQUOTED(SGMINER_MAJOR_VERSION, [v_maj], [Major version])
AC_DEFINE_UNQUOTED(SGMINER_MINOR_VERSION, [v_min], [Minor version])
AC_DEFINE_UNQUOTED(SGMINER_MINOR_SUBVERSION, [v_mic], [Micro version])
version_info="lt_rev:lt_cur:lt_age"
release_info="v_rel"
AC_SUBST(version_info)
@ -128,11 +128,11 @@ if test "x$have_win32" != xtrue; then @@ -128,11 +128,11 @@ if test "x$have_win32" != xtrue; then
fi
fi
have_cgminer_sdk=false
if test -n "$CGMINER_SDK"; then
have_cgminer_sdk=true
CPPFLAGS="-I$CGMINER_SDK/include $CPPFLAGS"
LDFLAGS="-L$CGMINER_SDK/lib/$target $LDFLAGS"
have_sgminer_sdk=false
if test -n "$SGMINER_SDK"; then
have_sgminer_sdk=true
CPPFLAGS="-I$SGMINER_SDK/include $CPPFLAGS"
LDFLAGS="-L$SGMINER_SDK/lib/$target $LDFLAGS"
fi
opencl="yes"
@ -194,8 +194,8 @@ if test "$found_opencl" = 1; then @@ -194,8 +194,8 @@ if test "$found_opencl" = 1; then
if test "x$adl" != xno; then
ADL_CPPFLAGS=
AC_CHECK_FILE([$srcdir/ADL_SDK/adl_sdk.h], [have_adl=true; ADL_CPPFLAGS=-I$srcdir], have_adl=false,)
if test x$have_adl+$have_cgminer_sdk = xfalse+true; then
AC_CHECK_FILE([$CGMINER_SDK/include/ADL_SDK/adl_sdk.h], [have_adl=true; ADL_CPPFLAGS=-I$CGMINER_SDK/include], have_adl=false,)
if test x$have_adl+$have_sgminer_sdk = xfalse+true; then
AC_CHECK_FILE([$SGMINER_SDK/include/ADL_SDK/adl_sdk.h], [have_adl=true; ADL_CPPFLAGS=-I$SGMINER_SDK/include], have_adl=false,)
fi
if test x$have_adl = xtrue
then
@ -241,14 +241,14 @@ JANSSON_LIBS="compat/jansson-2.5/src/.libs/libjansson.a" @@ -241,14 +241,14 @@ JANSSON_LIBS="compat/jansson-2.5/src/.libs/libjansson.a"
PKG_PROG_PKG_CONFIG()
if test "x$have_cgminer_sdk" = "xtrue"; then
if test "x$have_sgminer_sdk" = "xtrue"; then
if test "x$have_x86_64" = xtrue; then
ARCH_DIR=x86_64
else
ARCH_DIR=x86
fi
PKG_CONFIG="${PKG_CONFIG:-pkg-config} --define-variable=arch=$ARCH_DIR --define-variable=target=$target --define-variable=cgminersdkdir=$CGMINER_SDK"
PKG_CONFIG_PATH="$CGMINER_SDK/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
PKG_CONFIG="${PKG_CONFIG:-pkg-config} --define-variable=arch=$ARCH_DIR --define-variable=target=$target --define-variable=sgminersdkdir=$SGMINER_SDK"
PKG_CONFIG_PATH="$SGMINER_SDK/lib/pkgconfig${PKG_CONFIG_PATH:+:$PKG_CONFIG_PATH}"
fi
AC_ARG_ENABLE([libcurl],
@ -315,7 +315,7 @@ if test "x$prefix" = xNONE; then @@ -315,7 +315,7 @@ if test "x$prefix" = xNONE; then
prefix=/usr/local
fi
AC_DEFINE_UNQUOTED([CGMINER_PREFIX], ["$prefix/bin"], [Path to cgminer install])
AC_DEFINE_UNQUOTED([SGMINER_PREFIX], ["$prefix/bin"], [Path to sgminer install])
AC_DEFINE_UNQUOTED([SCRYPT_KERNNAME], ["scrypt130511"], [Filename for scrypt kernel])

194
doc/API

@ -1,13 +1,13 @@ @@ -1,13 +1,13 @@
This README contains details about the cgminer RPC API
This README contains details about the sgminer RPC API
It also includes some detailed information at the end,
about using miner.php
If you start cgminer with the "--api-listen" option, it will listen on a
If you start sgminer with the "--api-listen" option, it will listen on a
simple TCP/IP socket for single string API requests from the same machine
running cgminer and reply with a string and then close the socket each time
running sgminer and reply with a string and then close the socket each time
If you add the "--api-network" option, it will accept API requests from any
network attached computer.
@ -22,7 +22,7 @@ IP addresses are automatically padded with extra '.0's as needed @@ -22,7 +22,7 @@ IP addresses are automatically padded with extra '.0's as needed
Without a /prefix is the same as specifying /32
0/0 means all IP addresses.
The 'W:' on the front gives that address/subnet privileged access to commands
that modify cgminer (thus all API commands)
that modify sgminer (thus all API commands)
Without it those commands return an access denied status.
See --api-groups below to define other groups like W:
Privileged access is checked in the order the IP addresses were supplied to
@ -32,7 +32,7 @@ Using the "--api-allow" option overides the "--api-network" option if they @@ -32,7 +32,7 @@ Using the "--api-allow" option overides the "--api-network" option if they
are both specified
With "--api-allow", 127.0.0.1 is not by default given access unless specified
If you start cgminer also with the "--api-mcast" option, it will listen for
If you start sgminer also with the "--api-mcast" option, it will listen for
a multicast message and reply to it with a message containing it's API port
number, but only if the IP address of the sender is allowed API access
@ -106,7 +106,7 @@ The STATUS section is: @@ -106,7 +106,7 @@ The STATUS section is:
Message matching the Code value N
Description=string
This defaults to the cgminer version but is the value of --api-description
This defaults to the sgminer version but is the value of --api-description
if it was specified at runtime.
For API version 1.10 and later:
@ -115,7 +115,7 @@ The list of requests - a (*) means it requires privileged access - and replies: @@ -115,7 +115,7 @@ The list of requests - a (*) means it requires privileged access - and replies:
Request Reply Section Details
------- ------------- -------
version VERSION CGMiner=cgminer, version
version VERSION SGMiner=sgminer, version
API=API| version
config CONFIG Some miner configuration information:
@ -241,13 +241,13 @@ The list of requests - a (*) means it requires privileged access - and replies: @@ -241,13 +241,13 @@ The list of requests - a (*) means it requires privileged access - and replies:
save|filename (*)
none There is no reply section just the STATUS section
stating success or failure saving the cgminer
stating success or failure saving the sgminer
config to filename
The filename is optional and will use the cgminer
The filename is optional and will use the sgminer
default if not specified
quit (*) none There is no status section but just a single "BYE"
reply before cgminer quits
reply before sgminer quits
notify NOTIFY The last status and history count of each devices
problem
@ -260,7 +260,7 @@ The list of requests - a (*) means it requires privileged access - and replies: @@ -260,7 +260,7 @@ The list of requests - a (*) means it requires privileged access - and replies:
stating an error if you do not have privileged
access to the API and success if you do have
privilege
The command doesn't change anything in cgminer
The command doesn't change anything in sgminer
pgaenable|N (*)
none There is no reply section just the STATUS section
@ -298,7 +298,7 @@ The list of requests - a (*) means it requires privileged access - and replies: @@ -298,7 +298,7 @@ The list of requests - a (*) means it requires privileged access - and replies:
e.g. DEVDETAILS=0,Name=GPU,ID=0,Driver=opencl,...|
restart (*) none There is no status section but just a single
"RESTART" reply before cgminer restarts
"RESTART" reply before sgminer restarts
stats STATS Each device or pool that has 1 or more getworks
with a list of stats regarding getwork times
@ -370,14 +370,14 @@ The list of requests - a (*) means it requires privileged access - and replies: @@ -370,14 +370,14 @@ The list of requests - a (*) means it requires privileged access - and replies:
none There is no reply section just the STATUS section
stating that the zero, and optional summary, was
done
If Which='all', all normal cgminer and API
If Which='all', all normal sgminer and API
statistics will be zeroed other than the numbers
displayed by the usbstats and stats commands
If Which='bestshare', only the 'Best Share' values
are zeroed for each pool and the global
'Best Share'
The true/false option determines if a full summary
is shown on the cgminer display like is normally
is shown on the sgminer display like is normally
displayed on exit.
hotplug|N (*) none There is no reply section just the STATUS section
@ -440,11 +440,11 @@ The list of requests - a (*) means it requires privileged access - and replies: @@ -440,11 +440,11 @@ The list of requests - a (*) means it requires privileged access - and replies:
lockstats (*) none There is no reply section just the STATUS section
stating the results of the request
A warning reply means lock stats are not compiled
into cgminer
into sgminer
The API writes all the lock stats to stderr
When you enable, disable or restart a GPU, PGA or ASC, you will also get
Thread messages in the cgminer status window
Thread messages in the sgminer status window
The 'poolpriority' command can be used to reset the priority order of multiple
pools with a single command - 'switchpool' only sets a single pool to first
@ -457,13 +457,13 @@ If the priority change affects the miner's preference for mining, it may switch @@ -457,13 +457,13 @@ If the priority change affects the miner's preference for mining, it may switch
immediately
When you switch to a different pool to the current one (including by priority
change), you will get a 'Switching to URL' message in the cgminer status
change), you will get a 'Switching to URL' message in the sgminer status
windows
Obviously, the JSON format is simply just the names as given before the '='
with the values after the '='
If you enable cgminer debug (-D or --debug) or, when cgminer debug is off,
If you enable sgminer debug (-D or --debug) or, when sgminer debug is off,
turn on debug with the API command 'debug|debug' you will also get messages
showing some details of the requests received and the replies
@ -474,7 +474,7 @@ api-example.php - a php script to access the API @@ -474,7 +474,7 @@ api-example.php - a php script to access the API
by default it sends a 'summary' request to the miner at 127.0.0.1:4028
If you specify a command it will send that request instead
You must modify the line "$socket = getsock('127.0.0.1', 4028);" at the
beginning of "function request($cmd)" to change where it looks for cgminer
beginning of "function request($cmd)" to change where it looks for sgminer
API.java/API.class
a java program to access the API (with source code)
@ -497,24 +497,24 @@ miner.php - an example web page to access the API @@ -497,24 +497,24 @@ miner.php - an example web page to access the API
Feature Changelog for external applications using the API:
API V1.32 (cgminer v3.6.5)
API V1.32 (sgminer v3.6.5)
Modified API commands:
'devs' 'gpu' 'pga' and 'asc' - add 'Device Elapsed'
---------
API V1.31 (cgminer v3.6.3)
API V1.31 (sgminer v3.6.3)
Added API command:
'lockstats' - display cgminer dev lock stats if compiled in
'lockstats' - display sgminer dev lock stats if compiled in
Modified API command:
'summary' - add 'MHS %ds' (where %d is the log interval)
---------
API V1.30 (cgminer v3.4.3)
API V1.30 (sgminer v3.4.3)
Added API command:
'poolquota' - Set pool quota for load-balance strategy.
@ -524,13 +524,13 @@ Modified API command: @@ -524,13 +524,13 @@ Modified API command:
---------
API V1.29 (cgminer v3.4.1)
API V1.29 (sgminer v3.4.1)
Muticast identification added to the API
----------
API V1.28 (cgminer v3.3.4)
API V1.28 (sgminer v3.3.4)
Modified API commands:
'devs', 'pga', 'asc', 'gpu' - add 'Device Hardware%' and 'Device Rejected%'
@ -540,7 +540,7 @@ Modified API commands: @@ -540,7 +540,7 @@ Modified API commands:
----------
API V1.27 (cgminer v3.3.2)
API V1.27 (sgminer v3.3.2)
Added API commands:
'ascset' - with: BTB opt=millivolts val=1000 to 1310 - core voltage
@ -548,9 +548,9 @@ Added API commands: @@ -548,9 +548,9 @@ Added API commands:
----------
API V1.26 (cgminer v3.2.3)
API V1.26 (sgminer v3.2.3)
Remove all CPU support (cgminer v3.0.0)
Remove all CPU support (sgminer v3.0.0)
Added API commands:
'asc'
@ -576,7 +576,7 @@ Modified API commands: @@ -576,7 +576,7 @@ Modified API commands:
----------
API V1.24 (cgminer v2.11.0)
API V1.24 (sgminer v2.11.0)
Added API commands:
'zero'
@ -588,14 +588,14 @@ Modified API commands: @@ -588,14 +588,14 @@ Modified API commands:
----------
API V1.23 (cgminer v2.10.2)
API V1.23 (sgminer v2.10.2)
Added API commands:
'pgaset' - with: MMQ opt=clock val=160 to 230 (and a multiple of 2)
----------
API V1.22 (cgminer v2.10.1)
API V1.22 (sgminer v2.10.1)
Enforced output limitation:
all extra records beyond the output limit of the API (~64k) are ignored
@ -608,7 +608,7 @@ Modified API commands: @@ -608,7 +608,7 @@ Modified API commands:
----------
API V1.21 (cgminer v2.10.0)
API V1.21 (sgminer v2.10.0)
Added API commands:
'usbstats'
@ -621,14 +621,14 @@ Modified output: @@ -621,14 +621,14 @@ Modified output:
----------
API V1.20 (cgminer v2.8.5)
API V1.20 (sgminer v2.8.5)
Modified API commands:
'pools' - add 'Has Stratum', 'Stratum Active', 'Stratum URL'
----------
API V1.19 (cgminer v2.7.6)
API V1.19 (sgminer v2.7.6)
Added API commands:
'debug'
@ -652,7 +652,7 @@ Modified API commands: @@ -652,7 +652,7 @@ Modified API commands:
----------
API V1.18 (cgminer v2.7.4)
API V1.18 (sgminer v2.7.4)
Modified API commands:
'stats' - add 'Work Had Roll Time', 'Work Can Roll', 'Work Had Expire',
@ -661,7 +661,7 @@ Modified API commands: @@ -661,7 +661,7 @@ Modified API commands:
----------
API V1.17 (cgminer v2.7.1)
API V1.17 (sgminer v2.7.1)
Added API commands:
'coin'
@ -672,7 +672,7 @@ Modified API commands: @@ -672,7 +672,7 @@ Modified API commands:
----------
API V1.16 (cgminer v2.6.5)
API V1.16 (sgminer v2.6.5)
Added API commands:
'failover-only'
@ -682,14 +682,14 @@ Modified API commands: @@ -682,14 +682,14 @@ Modified API commands:
----------
API V1.15 (cgminer v2.6.1)
API V1.15 (sgminer v2.6.1)
Added API commands:
'poolpriority'
----------
API V1.14 (cgminer v2.5.0)
API V1.14 (sgminer v2.5.0)
Modified API commands:
'stats' - more icarus timing stats added
@ -700,17 +700,17 @@ Completely backward compatible @@ -700,17 +700,17 @@ Completely backward compatible
----------
API V1.13 (cgminer v2.4.4)
API V1.13 (sgminer v2.4.4)
Added API commands:
'check'
Support was added to cgminer for API access groups with the --api-groups option
Support was added to sgminer for API access groups with the --api-groups option
It's 100% backward compatible with previous --api-access commands
----------
API V1.12 (cgminer v2.4.3)
API V1.12 (sgminer v2.4.3)
Modified API commands:
'stats' - more pool stats added
@ -719,7 +719,7 @@ Support for the ModMinerQuad FPGA was added @@ -719,7 +719,7 @@ Support for the ModMinerQuad FPGA was added
----------
API V1.11 (cgminer v2.4.2)
API V1.11 (sgminer v2.4.2)
Modified API commands:
'save' no longer requires a filename (use default if not specified)
@ -729,7 +729,7 @@ It now correctly returns S (success) @@ -729,7 +729,7 @@ It now correctly returns S (success)
----------
API V1.10 (cgminer v2.4.1)
API V1.10 (sgminer v2.4.1)
Added API commands:
'stats'
@ -737,14 +737,14 @@ Added API commands: @@ -737,14 +737,14 @@ Added API commands:
N.B. the 'stats' command can change at any time so any specific content
present should not be relied upon.
The data content is mainly used for debugging purposes or hidden options
in cgminer and can change as development work requires
in sgminer and can change as development work requires
Modified API commands:
'pools' added "Last Share Time"
----------
API V1.9 (cgminer v2.4.0)
API V1.9 (sgminer v2.4.0)
Added API commands:
'restart'
@ -754,7 +754,7 @@ Modified API commands: @@ -754,7 +754,7 @@ Modified API commands:
----------
API V1.8 (cgminer v2.3.5)
API V1.8 (sgminer v2.3.5)
Added API commands:
'devdetails'
@ -763,7 +763,7 @@ Support for the ZTex FPGA was added @@ -763,7 +763,7 @@ Support for the ZTex FPGA was added
----------
API V1.7 (cgminer v2.3.4)
API V1.7 (sgminer v2.3.4)
Added API commands:
'removepool'
@ -778,7 +778,7 @@ For Text the 4 characters '|' ',' '=' and '\' are escaped the same way @@ -778,7 +778,7 @@ For Text the 4 characters '|' ',' '=' and '\' are escaped the same way
----------
API V1.6 (cgminer v2.3.2)
API V1.6 (sgminer v2.3.2)
Added API commands:
'pga'
@ -799,7 +799,7 @@ API V1.5 was not released @@ -799,7 +799,7 @@ API V1.5 was not released
----------
API V1.4 (Kano's interim release of cgminer v2.3.1)
API V1.4 (Kano's interim release of sgminer v2.3.1)
Added API commands:
'notify'
@ -811,7 +811,7 @@ Added "When" to the STATUS reply section of all commands @@ -811,7 +811,7 @@ Added "When" to the STATUS reply section of all commands
----------
API V1.3 (cgminer v2.3.1-2)
API V1.3 (sgminer v2.3.1-2)
Added API commands:
'addpool'
@ -822,7 +822,7 @@ Modified API commands: @@ -822,7 +822,7 @@ Modified API commands:
----------
API V1.2 (cgminer v2.3.0)
API V1.2 (sgminer v2.3.0)
Added API commands:
'enablepool'
@ -838,15 +838,15 @@ security, will return an "Access denied" Error Status @@ -838,15 +838,15 @@ security, will return an "Access denied" Error Status
----------
API V1.1 (cgminer v2.2.4)
API V1.1 (sgminer v2.2.4)
There were no changes to the API commands in cgminer v2.2.4,
however support was added to cgminer for IP address restrictions
There were no changes to the API commands in sgminer v2.2.4,
however support was added to sgminer for IP address restrictions
with the --api-allow option
----------
API V1.1 (cgminer v2.2.2)
API V1.1 (sgminer v2.2.2)
Prior to V1.1, devs/gpu incorrectly reported GPU0 Intensity for all GPUs
@ -855,7 +855,7 @@ Modified API commands: @@ -855,7 +855,7 @@ Modified API commands:
----------
API V1.0 (cgminer v2.2.0)
API V1.0 (sgminer v2.2.0)
Remove default CPU support
@ -873,9 +873,9 @@ Added API commands: @@ -873,9 +873,9 @@ Added API commands:
----------
API V0.7 (cgminer v2.1.0)
API V0.7 (sgminer v2.1.0)
Initial release of the API in the main cgminer git
Initial release of the API in the main sgminer git
Commands:
'version'
@ -896,18 +896,18 @@ Commands: @@ -896,18 +896,18 @@ Commands:
miner.php
=========
miner.php is a PHP based interface to the cgminer RPC API
miner.php is a PHP based interface to the sgminer RPC API
(referred to simply as the API below)
It can show rig details, summaries and input fields to allow you to change
cgminer
sgminer
You can also create custom summary pages with it
It has two levels to the security:
1) cgminer can be configured to allow or disallow API access and access level
1) sgminer can be configured to allow or disallow API access and access level
security for miner.php
2) miner.php can be configured to allow or disallow privileged cgminer
access, if cgminer is configured to allow privileged access for miner.php
2) miner.php can be configured to allow or disallow privileged sgminer
access, if sgminer is configured to allow privileged access for miner.php
---------
@ -931,40 +931,40 @@ Try one of these (apparently the first one is easiest - thanks jborkl) @@ -931,40 +931,40 @@ Try one of these (apparently the first one is easiest - thanks jborkl)
---------
The basic cgminer option to enable the API is:
The basic sgminer option to enable the API is:
--api-listen
or in your cgminer.conf
or in your sgminer.conf
"api-listen" : true,
(without the ',' on the end if it is the last item)
If the web server is running on the cgminer computer, the above
If the web server is running on the sgminer computer, the above
is the only change required to give miner.php basic access to
the cgminer API
the sgminer API
-
If the web server runs on a different computer to cgminer,
you will also need to tell cgminer to allow the web server
to access cgminer's API and tell miner.php where cgminer is
If the web server runs on a different computer to sgminer,
you will also need to tell sgminer to allow the web server
to access sgminer's API and tell miner.php where sgminer is
Assuming a.b.c.d is the IP address of the web server, you
would add the following to cgminer:
would add the following to sgminer:
--api-listen --api-allow a.b.c.d
or in your cgminer.conf
or in your sgminer.conf
"api-listen" : true,
"api-allow" : "a.b.c.d",
to tell cgminer to give the web server read access to the API
to tell sgminer to give the web server read access to the API
You also need to tell miner.php where cgminer is.
Assuming cgminer is at IP address e.f.g.h, then you would
You also need to tell miner.php where sgminer is.
Assuming sgminer is at IP address e.f.g.h, then you would
edit miner.php and change the line
$rigs = array('127.0.0.1:4028');
@ -976,14 +976,14 @@ to @@ -976,14 +976,14 @@ to
See --api-network or --api-allow for more access details
and how to give write access
You can however, also tell miner.php to find your cgminer rigs automatically
You can however, also tell miner.php to find your sgminer rigs automatically
on the local subnet
Add the following to each cgminer:
Add the following to each sgminer:
--api-mcast
or in your cgminer.conf
or in your sgminer.conf
"api-mcast" : true,
@ -1020,7 +1020,7 @@ Done :) @@ -1020,7 +1020,7 @@ Done :)
The rest of this documentation deals with the more complex
functions of miner.php, using myminer.php, creaing custom
summaries and displaying multiple cgminer rigs
summaries and displaying multiple sgminer rigs
---------
@ -1125,13 +1125,13 @@ Default: @@ -1125,13 +1125,13 @@ Default:
$readonly = false;
Set $readonly to true to force miner.php to be readonly
This means it won't allow you to change cgminer even if the cgminer API
This means it won't allow you to change sgminer even if the sgminer API
options allow it to
If you set $readonly to false then it will check cgminer 'privileged'
If you set $readonly to false then it will check sgminer 'privileged'
and will show input fields and buttons on the single rig page
allowing you to change devices, pools and even quit or restart
cgminer
sgminer
However, if the 'privileged' test fails, the code will set $readonly to
true
@ -1178,7 +1178,7 @@ table of data @@ -1178,7 +1178,7 @@ table of data
Set $notify to true to attempt to display the notify command on
the single rig page
If your older version of cgminer returns an 'Invalid command'
If your older version of sgminer returns an 'Invalid command'
coz it doesn't have notify - it just shows the error status table
---------
@ -1218,7 +1218,7 @@ However, if $readonly is true, it will not display them @@ -1218,7 +1218,7 @@ However, if $readonly is true, it will not display them
Default:
$rigs = array('127.0.0.1:4028');
Set $rigs to an array of your cgminer rigs that are running
Set $rigs to an array of your sgminer rigs that are running
format: 'IP:Port' or 'Host:Port' or 'Host:Port:Name'
If you only have one rig, it will just show the detail of that rig
If you have more than one rig it will show a summary of all the rigs
@ -1247,21 +1247,21 @@ If fewer are found, an error will be included at the top of the page @@ -1247,21 +1247,21 @@ If fewer are found, an error will be included at the top of the page
Default:
$mcastaddr = '224.0.0.75';
API Multicast address all cgminers are listening on
API Multicast address all sgminers are listening on
---------
Default:
$mcastport = 4028;
API Multicast UDP port all cgminers are listening on
API Multicast UDP port all sgminers are listening on
---------
Default:
$mcastcode = 'FTW';
The code all cgminers expect in the Multicast message sent
The code all sgminers expect in the Multicast message sent
The message sent is "cgm-code-listport"
Don't use the '-' character if you change it
@ -1271,7 +1271,7 @@ Default: @@ -1271,7 +1271,7 @@ Default:
$mcastlistport = 4027;
UDP port number that is added to the broadcast message sent
that specifies to the cgminers the port to reply on
that specifies to the sgminers the port to reply on
---------
@ -1292,7 +1292,7 @@ Set $mcastretries to the number of times to retry the multicast @@ -1292,7 +1292,7 @@ Set $mcastretries to the number of times to retry the multicast
If $mcastexpect is 0, this is simply the number of extra times
that it will send the multicast request
N.B. cgminer doesn't listen for multicast requests for 1000ms after
N.B. sgminer doesn't listen for multicast requests for 1000ms after
each one it hears
If $mcastexpect is > 0, it will stop looking for replies once it
@ -1353,9 +1353,9 @@ The numbers are integer seconds @@ -1353,9 +1353,9 @@ The numbers are integer seconds
The defaults should be OK for most cases
However, the longer SND is, the longer you have to wait while
php hangs if the target cgminer isn't runnning or listening
php hangs if the target sgminer isn't runnning or listening
RCV should only ever be relevant if cgminer has hung but the
RCV should only ever be relevant if sgminer has hung but the
API thread is still running, RCV would normally be >= SND
Feel free to increase SND if your network is very slow
@ -1575,10 +1575,10 @@ The example given: @@ -1575,10 +1575,10 @@ The example given:
---------
With cgminer 2.10.2 and later, miner.php includes an extension to
With sgminer 2.10.2 and later, miner.php includes an extension to
the custom pages that allows you to apply SQL style commands to
the data: where, group, and having
cgminer 3.4.2 also includes another option 'gen'
sgminer 3.4.2 also includes another option 'gen'
As an example, miner.php includes a more complex custom page called 'Pools'
this includes the extension:
@ -1655,10 +1655,10 @@ in this case is the average difficulty of each share submitted @@ -1655,10 +1655,10 @@ in this case is the average difficulty of each share submitted
THERE IS A SECURITY RISK WITH HOW GEN WORKS
It simply replaces all the variables with their values and then requests PHP
to execute the formula - thus if a field value returned from a cgminer API
to execute the formula - thus if a field value returned from a sgminer API
request contained PHP code, it could be executed by your web server
Of course cgminer doesn't do this, but if you do not control the cgminer that
returns the data in the API calls, someone could modify cgminer to return a
Of course sgminer doesn't do this, but if you do not control the sgminer that
returns the data in the API calls, someone could modify sgminer to return a
PHP string in a field you use in 'gen'
Thus use 'gen' at your own risk
If someone feels the urge to write a mathematical interpreter in PHP to get

44
doc/FAQ

@ -2,11 +2,11 @@ FAQ @@ -2,11 +2,11 @@ FAQ
Q: Can I mine on servers from different networks (eg smartcoin and bitcoin) at
the same time?
A: No, cgminer keeps a database of the block it's working on to ensure it does
A: No, sgminer keeps a database of the block it's working on to ensure it does
not work on stale blocks, and having different blocks from two networks would
make it invalidate the work from each other.
Q: Can I configure cgminer to mine with different login credentials or pools
Q: Can I configure sgminer to mine with different login credentials or pools
for each separate device?
A: No.
@ -25,18 +25,18 @@ their feature requests implemented. @@ -25,18 +25,18 @@ their feature requests implemented.
Q: Work keeps going to my backup pool even though my primary pool hasn't
failed?
A: Cgminer checks for conditions where the primary pool is lagging and will
A: sgminer checks for conditions where the primary pool is lagging and will
pass some work to the backup servers under those conditions. The reason for
doing this is to try its absolute best to keep the GPUs working on something
useful and not risk idle periods. You can disable this behaviour with the
option --failover-only.
Q: Is this a virus?
A: Cgminer is being packaged with other trojan scripts and some antivirus
software is falsely accusing cgminer.exe as being the actual virus, rather
than whatever it is being packaged with. If you installed cgminer yourself,
A: sgminer is being packaged with other trojan scripts and some antivirus
software is falsely accusing sgminer.exe as being the actual virus, rather
than whatever it is being packaged with. If you installed sgminer yourself,
then you do not have a virus on your computer. Complain to your antivirus
software company. They seem to be flagging even source code now from cgminer
software company. They seem to be flagging even source code now from sgminer
as viruses, even though text source files can't do anything by themself.
Q: Can you modify the display to include more of one thing in the output and
@ -55,10 +55,10 @@ Q: What happened to CPU mining? @@ -55,10 +55,10 @@ Q: What happened to CPU mining?
A: Being increasingly irrelevant for most users, and a maintenance issue, it is
no longer under active development and will not be supported. No binary builds
supporting CPU mining will be released. Virtually all remaining users of CPU
mining are as back ends for illegal botnets. The main reason cgminer is being
mining are as back ends for illegal botnets. The main reason sgminer is being
inappopriately tagged as a virus by antivirus software is due to the trojans
packaging a CPU mining capable version of it. There is no longer ANY CPU mining
code in cgminer. If you are mining bitcoin with CPU today, you are spending
code in sgminer. If you are mining bitcoin with CPU today, you are spending
1000x more in electricity costs than you are earning in bitcoin.
Q: GUI version?
@ -66,7 +66,7 @@ A: No. The RPC interface makes it possible for someone else to write one @@ -66,7 +66,7 @@ A: No. The RPC interface makes it possible for someone else to write one
though.
Q: I'm having an issue. What debugging information should I provide?
A: Start cgminer with your regular commands and add -D -T --verbose and provide
A: Start sgminer with your regular commands and add -D -T --verbose and provide
the full startup output and a summary of your hardware, operating system, ATI
driver version and ATI stream version.
@ -78,17 +78,17 @@ Q: Is it faster to mine on windows or linux? @@ -78,17 +78,17 @@ Q: Is it faster to mine on windows or linux?
A: It makes no difference. It comes down to choice of operating system for
their various features. Linux offers much better long term stability and
remote monitoring and security, while windows offers you overclocking tools
that can achieve much more than cgminer can do on linux.
that can achieve much more than sgminer can do on linux.
Q: Can I mine with cgminer on a MAC?
A: cgminer will compile on OSX, but the performance of GPU mining is
Q: Can I mine with sgminer on a MAC?
A: sgminer will compile on OSX, but the performance of GPU mining is
compromised due to the opencl implementation on OSX, there is no temperature
or fanspeed monitoring, and the cooling design of most MACs, despite having
powerful GPUs, will usually not cope with constant usage leading to a high
risk of thermal damage. It is highly recommended not to mine on a MAC unless
it is to a USB device.
Q: I'm trying to mine litecoin but cgminer shows MH values instead of kH and
Q: I'm trying to mine litecoin but sgminer shows MH values instead of kH and
submits no shares?
A: Add the --scrypt parameter.
@ -107,7 +107,7 @@ with -g 1. It is also recommended to use --failover-only since the work is @@ -107,7 +107,7 @@ with -g 1. It is also recommended to use --failover-only since the work is
effectively like a different block chain. If mining with a minirig, it is worth
adding the --bfl-range option.
Q: Are OpenCL kernels from other mining software useable in cgminer?
Q: Are OpenCL kernels from other mining software useable in sgminer?
A: No, the APIs are slightly different between the different software and they
will not work.
@ -117,13 +117,13 @@ working in the logs? @@ -117,13 +117,13 @@ working in the logs?
A: http://us.php.net/manual/en/sockets.installation.php
Q: What is a PGA?
A: At the moment, cgminer supports 3 FPGAs: BitForce, Icarus and ModMiner.
A: At the moment, sgminer supports 3 FPGAs: BitForce, Icarus and ModMiner.
They are Field-Programmable Gate Arrays that have been programmed to do Bitcoin
mining. Since the acronym needs to be only 3 characters, the "Field-" part has
been skipped.
Q: What is an ASIC?
A: Cgminer currently supports 2 ASICs: Avalon and BitForce SC devices. They
A: sgminer currently supports 2 ASICs: Avalon and BitForce SC devices. They
are Application Specify Integrated Circuit devices and provide the highest
performance per unit power due to being dedicated to only one purpose.
@ -133,14 +133,14 @@ A: No. @@ -133,14 +133,14 @@ A: No.
Q: What is stratum and how do I use it?
A: Stratum is a protocol designed for pooled mining in such a way as to
minimise the amount of network communications, yet scale to hardware of any
speed. With versions of cgminer 2.8.0+, if a pool has stratum support, cgminer
speed. With versions of sgminer 2.8.0+, if a pool has stratum support, sgminer
will automatically detect it and switch to the support as advertised if it can.
If you input the stratum port directly into your configuration, or use the
special prefix "stratum+tcp://" instead of "http://", cgminer will ONLY try to
special prefix "stratum+tcp://" instead of "http://", sgminer will ONLY try to
use stratum protocol mining. The advantages of stratum to the miner are no
delays in getting more work for the miner, less rejects across block changes,
and far less network communications for the same amount of mining hashrate. If
you do NOT wish cgminer to automatically switch to stratum protocol even if it
you do NOT wish sgminer to automatically switch to stratum protocol even if it
is detected, add the --fix-protocol option.
Q: Why don't the statistics add up: Accepted, Rejected, Stale, Hardware Errors,
@ -156,7 +156,7 @@ Q: Why do the scrypt diffs not match with the current difficulty target? @@ -156,7 +156,7 @@ Q: Why do the scrypt diffs not match with the current difficulty target?
A: The current scrypt block difficulty is expressed in terms of how many
multiples of the BTC difficulty it currently is (eg 28) whereas the shares of
"difficulty 1" are actually 65536 times smaller than the BTC ones. The diff
expressed by cgminer is as multiples of difficulty 1 shares.
expressed by sgminer is as multiples of difficulty 1 shares.
Q: Can I make a donation in litecoin?
A: Yes, see SCRYPT-README for the address, but the author prefers bitcoin if
@ -165,7 +165,7 @@ possible. @@ -165,7 +165,7 @@ possible.
Q: My keyboard input momentarily pauses or repeats keys every so often on
windows while mining?
A: The USB implementation on windows can be very flaky on some hardware and
every time cgminer looks for new hardware to hotplug it it can cause these
every time sgminer looks for new hardware to hotplug it it can cause these
sorts of problems. You can disable hotplug with:
--hotplug 0

126
doc/GPU

@ -2,31 +2,31 @@ EXECUTIVE SUMMARY ON GPU USAGE (SEE ALSO SCRYPT-README FOR SCRYPT MINING): @@ -2,31 +2,31 @@ EXECUTIVE SUMMARY ON GPU USAGE (SEE ALSO SCRYPT-README FOR SCRYPT MINING):
Single pool, regular desktop:
cgminer -o http://pool:port -u username -p password
sgminer -o http://pool:port -u username -p password
By default if you have configured your system properly, cgminer will mine on
By default if you have configured your system properly, sgminer will mine on
ALL GPUs, but in "dynamic" mode which is designed to keep your system usable
and sacrifice some mining performance.
Single pool, dedicated miner:
cgminer -o http://pool:port -u username -p password -I 9
sgminer -o http://pool:port -u username -p password -I 9
Single pool, first card regular desktop, 3 other dedicated cards:
cgminer -o http://pool:port -u username -p password -I d,9,9,9
sgminer -o http://pool:port -u username -p password -I d,9,9,9
Multiple pool, dedicated miner:
cgminer -o http://pool1:port -u pool1username -p pool1password -o http://pool2:port -u pool2usernmae -p pool2password -I 9
sgminer -o http://pool1:port -u pool1username -p pool1password -o http://pool2:port -u pool2usernmae -p pool2password -I 9
Add overclocking settings, GPU and fan control for all cards:
cgminer -o http://pool:port -u username -p password -I 9 --auto-fan --auto-gpu --gpu-engine 750-950 --gpu-memclock 300
sgminer -o http://pool:port -u username -p password -I 9 --auto-fan --auto-gpu --gpu-engine 750-950 --gpu-memclock 300
Add overclocking settings, GPU and fan control with different engine settings for 4 cards:
cgminer -o http://pool:port -u username -p password -I 9 --auto-fan --auto-gpu --gpu-engine 750-950,945,700-930,960 --gpu-memclock 300
sgminer -o http://pool:port -u username -p password -I 9 --auto-fan --auto-gpu --gpu-engine 750-950,945,700-930,960 --gpu-memclock 300
READ WARNINGS AND DOCUMENTATION BELOW ABOUT OVERCLOCKING
@ -51,7 +51,7 @@ BUILDING FOR GPU SUPPORT: @@ -51,7 +51,7 @@ BUILDING FOR GPU SUPPORT:
To build with GPU monitoring & clocking support:
Extract the AMD ADL SDK, latest version - there is also no official
place for these files. Copy all the *.h files in the "include"
directory into cgminer's ADL_SDK directory.
directory into sgminer's ADL_SDK directory.
The easiest way to install the ATI AMD SPP sdk on linux is to actually put it
into a system location. Then building will be simpler. Download the correct
@ -115,14 +115,14 @@ MAY CAUSE TO YOUR HARDWARE. OVERCLOCKING CAN INVALIDATE WARRANTIES, DAMAGE @@ -115,14 +115,14 @@ MAY CAUSE TO YOUR HARDWARE. OVERCLOCKING CAN INVALIDATE WARRANTIES, DAMAGE
HARDWARE AND EVEN CAUSE FIRES. THE AUTHOR ASSUMES NO RESPONSIBILITY FOR ANY
DAMAGE YOU MAY CAUSE OR UNPLANNED CHILDREN THAT MAY OCCUR AS A RESULT.
The GPU monitoring, clocking and fanspeed control incorporated into cgminer
The GPU monitoring, clocking and fanspeed control incorporated into sgminer
comes through use of the ATI Display Library. As such, it only supports ATI
GPUs. Even if ADL support is successfully built into cgminer, unless the card
GPUs. Even if ADL support is successfully built into sgminer, unless the card
and driver supports it, no GPU monitoring/settings will be available.
Cgminer supports initial setting of GPU engine clock speed, memory clock
sgminer supports initial setting of GPU engine clock speed, memory clock
speed, voltage, fanspeed, and the undocumented powertune feature of 69x0+ GPUs.
The setting passed to cgminer is used by all GPUs unless separate values are
The setting passed to sgminer is used by all GPUs unless separate values are
specified. All settings can all be changed within the menu on the fly on a
per-GPU basis.
@ -137,7 +137,7 @@ will try to set the engine clock of card 0 to 950, 1 to 945, 2 to 930, 3 to @@ -137,7 +137,7 @@ will try to set the engine clock of card 0 to 950, 1 to 945, 2 to 930, 3 to
960 and all memory clocks to 300.
AUTO MODES:
There are two "auto" modes in cgminer, --auto-fan and --auto-gpu. These can
There are two "auto" modes in sgminer, --auto-fan and --auto-gpu. These can
be used independently of each other and are complementary. Both auto modes
are designed to safely change settings while trying to maintain a target
temperature. By default this is set to 75 degrees C but can be changed with:
@ -186,11 +186,11 @@ the target temperature by the hysteresis amount, which is set to 3 by default @@ -186,11 +186,11 @@ the target temperature by the hysteresis amount, which is set to 3 by default
and can be changed with:
--temp-hysteresis
If the temperature drops below the target temperature, and engine clock speed
is not at the highest level set at startup, cgminer will raise the clock speed.
is not at the highest level set at startup, sgminer will raise the clock speed.
If at any time you manually set an even higher clock speed successfully in
cgminer, it will record this value and use it as its new upper limit (and the
sgminer, it will record this value and use it as its new upper limit (and the
same for low clock speeds and lower limits). If the temperature goes over the
cutoff limit (95 degrees by default), cgminer will completely disable the GPU
cutoff limit (95 degrees by default), sgminer will completely disable the GPU
from mining and it will not be re-enabled unless manually done so. The cutoff
temperature can be changed with:
@ -213,31 +213,31 @@ may report the value was changed successfully, and the new card power profile @@ -213,31 +213,31 @@ may report the value was changed successfully, and the new card power profile
information contains the values you set it to, that the card itself may
refuse to use those settings. As the performance profile changes dynamically,
querying the "current" value on the card can be wrong as well. So when changing
values in cgminer, after a pause of 1 second, it will report to you the current
values in sgminer, after a pause of 1 second, it will report to you the current
values where you should check that your change has taken. An example is that
6970 reference cards will accept low memory values but refuse to actually run
those lower memory values unless they're within 125 of the engine clock speed.
In that scenario, they usually set their real speed back to their default.
Cgminer reports the so-called "safe" range of whatever it is you are modifying
sgminer reports the so-called "safe" range of whatever it is you are modifying
when you ask to modify it on the fly. However, you can change settings to values
outside this range. Despite this, the card can easily refuse to accept your
changes, or worse, to accept your changes and then silently ignore them. So
there is absolutely to know how far to/from where/to it can set things safely or
otherwise, and there is nothing stopping you from at least trying to set them
outside this range. Being very conscious of these possible failures is why
cgminer will report back the current values for you to examine how exactly the
sgminer will report back the current values for you to examine how exactly the
card has responded. Even within the reported range of accepted values by the
card, it is very easy to crash just about any card, so it cannot use those
values to determine what range to set. You have to provide something meaningful
manually for cgminer to work with through experimentation.
manually for sgminer to work with through experimentation.
STARTUP / SHUTDOWN:
When cgminer starts up, it tries to read off the current profile information
for clock and fan speeds and stores these values. When quitting cgminer, it
When sgminer starts up, it tries to read off the current profile information
for clock and fan speeds and stores these values. When quitting sgminer, it
will then try to restore the original values. Changing settings outside of
cgminer while it's running may be reset to the startup cgminer values when
cgminer shuts down because of this.
sgminer while it's running may be reset to the startup sgminer values when
sgminer shuts down because of this.
---
@ -246,10 +246,10 @@ GPU DEVICE ISSUES and use of --gpu-map @@ -246,10 +246,10 @@ GPU DEVICE ISSUES and use of --gpu-map
GPUs mine with OpenCL software via the GPU device driver. This means you need
to have both an OpenCL SDK installed, and the GPU device driver RUNNING (i.e.
Xorg up and running configured for all devices that will mine on linux etc.)
Meanwhile, the hardware monitoring that cgminer offers for AMD devices relies
Meanwhile, the hardware monitoring that sgminer offers for AMD devices relies
on the ATI Display Library (ADL) software to work. OpenCL DOES NOT TALK TO THE
ADL. There is no 100% reliable way to know that OpenCL devices are identical
to the ADL devices, as neither give off the same information. cgminer does its
to the ADL devices, as neither give off the same information. sgminer does its
best to correlate these devices based on the order that OpenCL and ADL numbers
them. It is possible that this will fail for the following reasons:
@ -260,11 +260,11 @@ devices if you have two monitors connected to the one GPU. @@ -260,11 +260,11 @@ devices if you have two monitors connected to the one GPU.
3. There are more ADL devices than OpenCL. ADL devices include any ATI GPUs,
including ones that can't mine, like some older R4xxx cards.
To cope with this, the ADVANCED option for --gpu-map is provided with cgminer.
To cope with this, the ADVANCED option for --gpu-map is provided with sgminer.
DO NOT USE THIS UNLESS YOU KNOW WHAT YOU ARE DOING. The default will work the
vast majority of the time unless you know you have a problem already.
To get useful information, start cgminer with just the -n option. You will get
To get useful information, start sgminer with just the -n option. You will get
output that looks like this:
[2012-04-25 13:17:34] CL Platform 0 vendor: Advanced Micro Devices, Inc.
@ -280,7 +280,7 @@ output that looks like this: @@ -280,7 +280,7 @@ output that looks like this:
[2012-04-25 13:17:34] 3 GPU devices max detected
Note the number of devices here match, and the order is the same. If devices 1
and 2 were different between Tahiti and Cayman, you could run cgminer with:
and 2 were different between Tahiti and Cayman, you could run sgminer with:
--gpu-map 2:1,1:2
And it would swap the monitoring it received from ADL device 1 and put it to
opencl device 2 and vice versa.
@ -322,22 +322,22 @@ A: Yes, pass a list separated by commas such as -I d,4,9,9 @@ -322,22 +322,22 @@ A: Yes, pass a list separated by commas such as -I d,4,9,9
Q: The CPU usage is high.
A: The ATI drivers after 11.6 have a bug that makes them consume 100% of one
CPU core unnecessarily so downgrade to 11.6. Binding cgminer to one CPU core on
CPU core unnecessarily so downgrade to 11.6. Binding sgminer to one CPU core on
windows can minimise it to 100% (instead of more than one core). Driver version
11.11 on linux and 11.12 on windows appear to have fixed this issue. Note that
later drivers may have an apparent return of high CPU usage. Try
'export GPU_USE_SYNC_OBJECTS=1' on Linux before starting cgminer. You can also
'export GPU_USE_SYNC_OBJECTS=1' on Linux before starting sgminer. You can also
set this variable in windows via a batch file or on the command line before
starting cgminer with 'setx GPU_USE_SYNC_OBJECTS 1'
starting sgminer with 'setx GPU_USE_SYNC_OBJECTS 1'
Q: My GPU hangs and I have to reboot it to get it going again?
A: The more aggressively the mining software uses your GPU, the less overclock
you will be able to run. You are more likely to hit your limits with cgminer
you will be able to run. You are more likely to hit your limits with sgminer
and you will find you may need to overclock your GPU less aggressively. The
software cannot be responsible and make your GPU hang directly. If you simply
cannot get it to ever stop hanging, try decreasing the intensity, and if even
that fails, try changing to the poclbm kernel with -k poclbm, though you will
sacrifice performance. cgminer is designed to try and safely restart GPUs as
sacrifice performance. sgminer is designed to try and safely restart GPUs as
much as possible, but NOT if that restart might actually crash the rest of the
GPUs mining, or even the machine. It tries to restart them with a separate
thread and if that separate thread dies, it gives up trying to restart any more
@ -348,21 +348,21 @@ A: The defaults are sane and safe. I'm not interested in changing them @@ -348,21 +348,21 @@ A: The defaults are sane and safe. I'm not interested in changing them
further. The starting fan speed is set to 50% in auto-fan mode as a safety
precaution.
Q: I upgraded cgminer version and my hashrate suddenly dropped!
A: No, you upgraded your SDK version unwittingly between upgrades of cgminer
Q: I upgraded sgminer version and my hashrate suddenly dropped!
A: No, you upgraded your SDK version unwittingly between upgrades of sgminer
and that caused your hashrate to drop. See the next question.
Q: I upgraded my ATI driver/SDK/cgminer and my hashrate suddenly dropped!
A: The hashrate performance in cgminer is tied to the version of the ATI SDK
that is installed only for the very first time cgminer is run. This generates
Q: I upgraded my ATI driver/SDK/sgminer and my hashrate suddenly dropped!
A: The hashrate performance in sgminer is tied to the version of the ATI SDK
that is installed only for the very first time sgminer is run. This generates
binaries that are used by the GPU every time after that. Any upgrades to the
SDK after that time will have no effect on the binaries. However, if you
install a fresh version of cgminer, and have since upgraded your SDK, new
install a fresh version of sgminer, and have since upgraded your SDK, new
binaries will be built. It is known that the 2.6 ATI SDK has a huge hashrate
penalty on generating new binaries. It is recommended to not use this SDK at
this time unless you are using an ATI 7xxx card that needs it.
Q: Which AMD SDK is the best for cgminer?
Q: Which AMD SDK is the best for sgminer?
A: At the moment, versions 2.4 and 2.5 work the best for R5xxx and R6xxx GPUS.
SDK 2.6 or 2.7 works best for R7xxx. SDK 2.8 is known to have many problems.
If you are need to use the 2.6+ SDK or R7xxx or later, the phatk kernel will
@ -377,33 +377,33 @@ some good releases were 11.6, 11.12, 12.4 and 12.8. Note that older cards may @@ -377,33 +377,33 @@ some good releases were 11.6, 11.12, 12.4 and 12.8. Note that older cards may
not work with the newer drivers.
Q: I have multiple SDKs installed, can I choose which one it uses?
A: Run cgminer with the -n option and it will list all the platforms currently
installed. Then you can tell cgminer which platform to use with --gpu-platform.
A: Run sgminer with the -n option and it will list all the platforms currently
installed. Then you can tell sgminer which platform to use with --gpu-platform.
Q: cgminer reports no devices or only one device on startup on Linux although
Q: sgminer reports no devices or only one device on startup on Linux although
I have multiple devices and drivers+SDK installed properly?
A: Try "export DISPLAY=:0" before running cgminer.
A: Try "export DISPLAY=:0" before running sgminer.
Q: cgminer crashes immediately on startup.
Q: sgminer crashes immediately on startup.
A: One of the common reasons for this is that you have mixed files on your
machine for the driver or SDK. Windows has a nasty history of not cleanly
uninstalling files so you may have to use third party tools like driversweeper
to remove old versions. The other common reason for this is windows
antivirus software is disabling one of the DLLs from working. If cgminer
antivirus software is disabling one of the DLLs from working. If sgminer
starts with the -T option but never starts without it, this is a sure fire
sign you have this problem and will have to disable your antivirus or make
exceptions.
Q: Cgminer cannot see any of my GPUs even though I have configured them all
Q: sgminer cannot see any of my GPUs even though I have configured them all
to be enabled and installed OpenCL (+/- Xorg is running and the DISPLAY
variable is exported on linux)?
A: Check the output of 'cgminer -n', it will list what OpenCL devices your
A: Check the output of 'sgminer -n', it will list what OpenCL devices your
installed SDK recognises. If it lists none, you have a problem with your
version or installation of the SDK.
Q: Cgminer is mining on the wrong GPU, I want it on the AMD but it's mining
Q: sgminer is mining on the wrong GPU, I want it on the AMD but it's mining
on my on board GPU?
A: Make sure the AMD OpenCL SDK is installed, check the output of 'cgminer -n'
A: Make sure the AMD OpenCL SDK is installed, check the output of 'sgminer -n'
and use the appropriate parameter with --gpu-platform.
Q: I'm getting much lower hashrates than I should be for my GPU?
@ -420,7 +420,7 @@ A: Yes but their hashrate is very poor and likely you'll be using much more @@ -420,7 +420,7 @@ A: Yes but their hashrate is very poor and likely you'll be using much more
energy than you'll be earning in coins.
Q: Can I mine on both Nvidia and AMD GPUs at the same time?
A: No, you must run one instance of cgminer with the --gpu-platform option for
A: No, you must run one instance of sgminer with the --gpu-platform option for
each.
Q: Can I mine on Linux without running Xorg?
@ -438,7 +438,7 @@ should be getting about .9WU per kHash. If not, then try decreasing your @@ -438,7 +438,7 @@ should be getting about .9WU per kHash. If not, then try decreasing your
intensity, do not increase the number of gpu-threads, and consider adding
system RAM to match your GPU ram. You may also be using a bad combination
of driver and/or SDK. If you are getting a lot more HW errors with the
current version of cgminer but were not on an older version, chances are that
current version of sgminer but were not on an older version, chances are that
the older version simply wasn't reporting them so going back to and older
version is not a real solution.
@ -447,29 +447,29 @@ A: Your parameters are too high. Don't add GPU threads, don't set intensity @@ -447,29 +447,29 @@ A: Your parameters are too high. Don't add GPU threads, don't set intensity
too high, decrease thread concurrency. See the SCRYPT-README for a lot more
help.
Q: Cgminer stops mining (or my GPUs go DEAD) and I can't close it?
A: Once the driver has crashed, there is no way for cgminer to close cleanly.
Q: sgminer stops mining (or my GPUs go DEAD) and I can't close it?
A: Once the driver has crashed, there is no way for sgminer to close cleanly.
You will have to kill it, and depending on how corrupted your driver state
has gotten, you may even need to reboot. Windows is known to reset drivers
when they fail and cgminer will be stuck trying to use the old driver instance.
when they fail and sgminer will be stuck trying to use the old driver instance.
GPUs going SICK or DEAD is a sign of overclocking too much, overheating,
driver or hardware instability.
Q: I can't get any monitoring of temperatures or fanspeed with cgminer when
Q: I can't get any monitoring of temperatures or fanspeed with sgminer when
I start it remotely?
A: With linux, make sure to export the DISPLAY variable. On windows, you
cannot access these monitoring values via RDP. This should work with tightVNC
or teamviewer though.
Q: I change my GPU engine/memory/voltage and cgminer reports back no change?
A: Cgminer asks the GPU using the ATI Display Library to change settings, but
Q: I change my GPU engine/memory/voltage and sgminer reports back no change?
A: sgminer asks the GPU using the ATI Display Library to change settings, but
the driver and hardware are free to do what it wants with that query, including
ignoring it. Some GPUs are locked with one or more of those properties as well.
The most common of these is that many GPUs only allow a fixed difference
between the engine clock speed and the memory clock speed (such as the memory
being no lower than the engine - 150). Other 3rd party tools have unofficial
data on these devices on windows and can get the memory clock speed down
further but cgminer does not have access to these means.
further but sgminer does not have access to these means.
Q: I have multiple GPUs and although many devices show up, it appears to be
working only on one GPU splitting it up.
@ -491,11 +491,11 @@ A: No. The software is unchanged regardless of which driver/SDK/ADL_SDK version @@ -491,11 +491,11 @@ A: No. The software is unchanged regardless of which driver/SDK/ADL_SDK version
you are running. However if you change SDKs you should delete any generated
.bin files for them to be recreated with the new SDK.
Q: I do not want cgminer to modify my engine/clock/fanspeed?
A: Cgminer only modifies values if you tell it to via some parameters.
Q: I do not want sgminer to modify my engine/clock/fanspeed?
A: sgminer only modifies values if you tell it to via some parameters.
Otherwise it will just monitor the values.
Q: Cgminer does not disable my GPU even though it hit the overheat temperature?
Q: sgminer does not disable my GPU even though it hit the overheat temperature?
A: It only disables GPUs if you enable the --auto-gpu option. If you don't give
it parameters for engine clock it will not adjust engine clocks with this
option.

28
doc/SCRYPT

@ -18,7 +18,7 @@ GPU ram. If you have less system ram than your GPU has, it may not be possible @@ -18,7 +18,7 @@ GPU ram. If you have less system ram than your GPU has, it may not be possible
to mine at any reasonable rate.
There are 5 main parameters to tuning scrypt, all of which are optional for
further fine tuning. When you start mining, cgminer may fail IN RANDOM WAYS.
further fine tuning. When you start mining, sgminer may fail IN RANDOM WAYS.
They are all due to parameters being outside what the GPU can cope with.
NOTE that if it does not fail at startup, the presence of hardware errors (HW)
@ -41,7 +41,7 @@ export GPU_USE_SYNC_OBJECTS=1 @@ -41,7 +41,7 @@ export GPU_USE_SYNC_OBJECTS=1
may help CPU usage a little as well.
On windows the same commands can be passed via a batch file if the following
lines are in the .bat before starting cgminer:
lines are in the .bat before starting sgminer:
setx GPU_MAX_ALLOC_PERCENT 100
setx GPU_USE_SYNC_OBJECTS 1
@ -53,20 +53,20 @@ run out of ram. High intensities start writing over the same ram and it @@ -53,20 +53,20 @@ run out of ram. High intensities start writing over the same ram and it
is highly dependent on the GPU, but they can start actually DECREASING
your hashrate, or even worse, start producing garbage with HW errors
skyrocketing, or locking up the system altogether. Note that if you do
NOT specify an intensity, cgminer uses dynamic mode which is designed
NOT specify an intensity, sgminer uses dynamic mode which is designed
to minimise the harm to a running desktop and performance WILL be poor.
The lower limit to intensity with scrypt is usually 8 and cgminer will
The lower limit to intensity with scrypt is usually 8 and sgminer will
prevent it going too low.
SUMMARY: Setting this for reasonable hashrates is mandatory.
--shaders XXX
is an option where you tell cgminer how many shaders your GPU has. This
helps cgminer try to choose some meaningful baseline parameters. Use
is an option where you tell sgminer how many shaders your GPU has. This
helps sgminer try to choose some meaningful baseline parameters. Use
this table below to determine how many shaders your GPU has, and note
that there are some variants of these cards, and nvidia shaders are much
much lower and virtually pointless trying to mine on. If this is not
set, cgminer will query the device for how much memory it supports and
set, sgminer will query the device for how much memory it supports and
will try to set a value based on that.
SUMMARY: This will get you started but fine tuning for optimal performance is
required. Using --thread-concurrency is recommended instead.
@ -99,7 +99,7 @@ GPU Shaders @@ -99,7 +99,7 @@ GPU Shaders
5870 1600
5970 (5870x2)
These are only used as a rough guide for cgminer, and it is rare that this is
These are only used as a rough guide for sgminer, and it is rare that this is
all you will need to set.
@ -108,7 +108,7 @@ Optional parameters to tune: @@ -108,7 +108,7 @@ Optional parameters to tune:
--thread-concurrency:
This tunes the optimal size of work that scrypt can do. It is internally tuned
by cgminer to be the highest reasonable multiple of shaders that it can
by sgminer to be the highest reasonable multiple of shaders that it can
allocate on your GPU. Ideally it should be a multiple of your shader count.
vliw5 architecture (R5XXX) would be best at 5x shaders, while VLIW4 (R6xxx and
R7xxx) are best at 4x. Setting thread concurrency overrides anything you put
@ -118,7 +118,7 @@ and increases hashrate. @@ -118,7 +118,7 @@ and increases hashrate.
-g:
Once you have found the optimal shaders and intensity, you can start increasing
the -g value till cgminer fails to start. This is really only of value if you
the -g value till sgminer fails to start. This is really only of value if you
want to run low intensities as you will be unable to run more than 1.
SUMMARY: Don't touch this.
@ -126,7 +126,7 @@ SUMMARY: Don't touch this. @@ -126,7 +126,7 @@ SUMMARY: Don't touch this.
This tunes a compromise between ram usage and performance. Performance peaks
at a gap of 2, but increasing the gap can save you some GPU ram, but almost
always at the cost of significant loss of hashrate. Setting lookup gap
overrides the default of 2, but cgminer will use the --shaders value to choose
overrides the default of 2, but sgminer will use the --shaders value to choose
a thread-concurrency if you haven't chosen one.
SUMMARY: Don't touch this.
@ -173,7 +173,7 @@ export GPU_MAX_ALLOC_PERCENT=100 @@ -173,7 +173,7 @@ export GPU_MAX_ALLOC_PERCENT=100
or on windows this:
setx GPU_MAX_ALLOC_PERCENT 100
in the same console/bash/dos prompt/bat file/whatever you want to call it,
before running cgminer.
before running sgminer.
First, find the highest thread concurrency that you can start it at. They should
all start at 8192 but some will go up to 3 times that. Don't go too high on the
@ -183,9 +183,9 @@ intensity while testing and don't change gpu threads. If you cannot go above @@ -183,9 +183,9 @@ intensity while testing and don't change gpu threads. If you cannot go above
Delete any .bin files so you're starting from scratch and see what bins get
generated.
First try without any thread concurrency or even shaders, as cgminer will try to
First try without any thread concurrency or even shaders, as sgminer will try to
find an optimal value
cgminer -I 13
sgminer -I 13
If that starts mining, see what bin was generated, it is likely the largest
meaningful TC you can set.

30
doc/windows-build.txt

@ -59,9 +59,9 @@ Ctrl-D or typing "logout" and pressing the enter key should get you out of the @@ -59,9 +59,9 @@ Ctrl-D or typing "logout" and pressing the enter key should get you out of the
window.
**************************************************************************************
* Copy CGMiner source to your MSYS working directory *
* Copy sgminer source to your MSYS working directory *
**************************************************************************************
Copy CGMiner source code directory into:
Copy sgminer source code directory into:
\MinGW\msys\1.0\home\(folder with your user name)
**************************************************************************************
@ -87,7 +87,7 @@ Go to this url ==> http://developer.amd.com/tools/graphics-development/display-l @@ -87,7 +87,7 @@ Go to this url ==> http://developer.amd.com/tools/graphics-development/display-l
Download and unzip the file you downloaded.
Pull adl_defines.h, adl_sdk.h, and adl_structures.h out of the include folder
Put those files into the ADL_SDK folder in your source tree as shown below.
\MinGW\msys\1.0\home\(folder with your user name)\cgminer-x.x.x\ADL_SDK
\MinGW\msys\1.0\home\(folder with your user name)\sgminer-x.x.x\ADL_SDK
**************************************************************************************
* Install GTK-WIN, required for Pkg-config in the next step *
@ -125,12 +125,12 @@ Edit the file \MinGW\lib\pkgconfig\libcurl.pc and change "-lcurl" to @@ -125,12 +125,12 @@ Edit the file \MinGW\lib\pkgconfig\libcurl.pc and change "-lcurl" to
Ref. http://old.nabble.com/gcc-working-with-libcurl-td20506927.html
**************************************************************************************
* Build cgminer.exe *
* Build sgminer.exe *
**************************************************************************************
Run the MinGW MSYS shell
(Start Icon/keyboard key ==> All Programs ==> MinGW ==> MinGW Shell).
Change the working directory to your CGMiner project folder.
Example: cd cgminer-2.1.2 [Enter Key] if you are unsure then type "ls -la"
Change the working directory to your sgminer project folder.
Example: cd sgminer-2.1.2 [Enter Key] if you are unsure then type "ls -la"
Another way is to type "cd cg" and then press the tab key; It will auto fill.
Type the lines below one at a time. Look for problems after each one before going on
to the next.
@ -139,18 +139,18 @@ to the next. @@ -139,18 +139,18 @@ to the next.
autoreconf -fvi
CFLAGS="-O2 -msse2" ./configure (additional config options, see below)
make
strip cgminer.exe <== only do this if you are not compiling for debugging
strip sgminer.exe <== only do this if you are not compiling for debugging
**************************************************************************************
* Copy files to a build directory/folder *
**************************************************************************************
Make a directory and copy the following files into it. This will be your CGMiner
Make a directory and copy the following files into it. This will be your sgminer
Folder that you use for mining. Remember the .cl filenames could change on later
releases. If you installed a different version of libcurl then some of those dll's
may be different as well.
cgminer.exe from \MinGW\msys\1.0\home\(username)\cgminer-x.x.x
*.cl from \MinGW\msys\1.0\home\(username)\cgminer-x.x.x
README from \MinGW\msys\1.0\home\(username)\cgminer-x.x.x
sgminer.exe from \MinGW\msys\1.0\home\(username)\sgminer-x.x.x
*.cl from \MinGW\msys\1.0\home\(username)\sgminer-x.x.x
README from \MinGW\msys\1.0\home\(username)\sgminer-x.x.x
libcurl.dll from \MinGW\bin
libidn-11.dll from \MinGW\bin
libeay32.dll from \MinGW\bin
@ -169,7 +169,7 @@ Extract the share\git-core folder and place it into \MinGW\share. @@ -169,7 +169,7 @@ Extract the share\git-core folder and place it into \MinGW\share.
After the previous step you should have a folder called \MinGW\share\git-core.
To test if it is working, open a MinGW shell and type the following:
git config -–global core.autocrlf false (note: one time run only)
git clone git://github.com/ckolivas/cgminer.git
git clone git://github.com/ckolivas/sgminer.git
If you simply just want to update the source after you have already cloned, type:
git pull
@ -187,7 +187,7 @@ Copy the ADL .h files into that folder/directory. @@ -187,7 +187,7 @@ Copy the ADL .h files into that folder/directory.
Open your favorite text editor and type the following into it.
cp -av ../ADL_SDK/*.h ADL_SDK
Save the file as "adl.sh" and then place the file into "\MinGW\msys\1.0\bin".
From now on when your current working directory is the cgminer source directory
From now on when your current working directory is the sgminer source directory
You can simply type "adl.sh" and it will place the ADL header files into place
For you. Make sure you never remove the ADL_SDK folder from your home folder.
@ -217,7 +217,7 @@ You may now exit the MSYS shell. @@ -217,7 +217,7 @@ You may now exit the MSYS shell.
Ctrl-D or typing "logout" and pressing the enter key should get you out of the
window.
You will have to copy "libusb-1.0.dll" to your working cgminer binary directory.
You will have to copy "libusb-1.0.dll" to your working sgminer binary directory.
You will find "libusb-1.0.dll" in the \MinGW\bin directory/folder.
Use this method if libusb does not work for you on Ztex. Once someone lets us know
@ -235,7 +235,7 @@ Extract the the following from the file and place in where directed. @@ -235,7 +235,7 @@ Extract the the following from the file and place in where directed.
Copy libusb.h from include\libusbx-1.0 to \MinGW\include\libusb-1.0\libusb.h
Copy contents of MinGW32\static \MinGW\lib
Copy contents of MinGW32\dll to \MinGW\lib
You will have to copy "libusb-1.0.dll" to your working cgminer binary directory.
You will have to copy "libusb-1.0.dll" to your working sgminer binary directory.
**************************************************************************************
* Some ./configure options *

0
cgminer.c → sgminer.c

Loading…
Cancel
Save