1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-01 18:55:36 +00:00
Commit Graph

250 Commits

Author SHA1 Message Date
Noel Maersk
2561295e3d log: do not set poolname in log in incognito mode. 2014-02-28 02:11:26 +02:00
Noel Maersk
f737992f41 core: introduce --incognito + minimal revision of --compact.
`--incognito` is for sharing output without disclosing login
information.

NCurses interface code, as stated before, is pretty lousy.
2014-02-27 23:29:03 +02:00
Zuikkis
2b9a588e25 Update sgminer.c & scrypt.c
Default opt_nfactor was 11 instead of 10, my typo.. :) Sorry.

scrypt_1024_1_1_256_sp renamed to scrypt_n_1_1_256_sp
2014-02-23 14:39:40 -05:00
phm
3e89fb950f Merge branch 'quark'
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	miner.h
	ocl.c
	sgminer.c
2014-02-23 18:56:05 +01:00
Teemu Suikki
73bb1504e9 Scrypt-nfactor support!
Added new configuration parameter "nfactor", which defaults to 10 (normal scrypt).
Use 11 for vertcoin.

Kernels modified accordingly.
2014-02-23 04:44:17 +02:00
phm
d9fc7ccb4e Added support for QubitCoin 2014-02-22 19:21:05 +01:00
phm
c336a8399a Added support for INKcoin. 2014-02-22 16:58:00 +01:00
phm
089bfddc9b Merge branch 'quark' into inkcoin
Conflicts:
	Makefile.am
	configure.ac
	driver-opencl.c
	ocl.c
	sgminer.c
2014-02-22 16:56:59 +01:00
Noel Maersk
44aed3570e Merge branch 'build-msvs2010-upd' into build-msvs2010-merge
Test in separate branch before merging into master.

Conflicts (resolved):
	api.c
	util.c
2014-02-22 17:05:07 +02:00
Noel Maersk
a38f01c9a2 misc: explain gpu-threads comment FIXME. 2014-02-22 16:38:47 +02:00
phm
e92d5ebf6e Added support for InkCoin 2014-02-22 12:46:46 +01:00
phm
60a0e00243 Added support for quarkcoin difficulty calculation. 2014-02-22 11:04:06 +01:00
Spencer Shimko
45a16f1ac2 Fixup --help on intensities.
Current help contains conflict statements regarding intensity
priorities.

Per commit d11df698d1:
- rawintensity overrides both xintensity and intensity
- xintensity overrides intensity
2014-02-21 17:46:10 -05:00
phm
a17ec112f6 Added support for Quark mining. 2014-02-21 15:45:29 +01:00
phm
9585d2a8e6 Added support for DarkCoin kernel. Modified stats display to handle low difficulty values. 2014-02-19 23:06:29 +01:00
Con Kolivas
a825524325 We shouldn't block on no work situations directly from the getwork scheduler itself. 2014-02-17 17:34:50 +02:00
Con Kolivas
b9b3abe264 Make the pthread cond wait in the getwork scheduler a timed wait in case we miss a wakeup. 2014-02-17 17:33:23 +02:00
Con Kolivas
7134cd7050 Add debug output when get_work() is blocked for an extended period and add grace time to the device's last valid work to prevent false positives for device failure. 2014-02-16 15:13:08 +02:00
Con Kolivas
26c4be818a Show device info in noffset nonce share above target message. 2014-02-16 15:12:43 +02:00
Con Kolivas
117c032b92 Slowly remove work even if it's not being used to keep the getwork counter incrementing even if work is not used and as a test that pools are still working. 2014-02-16 15:09:22 +02:00
Con Kolivas
5dad99caf6 Give device info with share above target message. 2014-02-16 15:08:39 +02:00
Con Kolivas
b5abf68938 Always show the stratum share lag time in debug mode. 2014-02-16 14:45:15 +02:00
Con Kolivas
9c59fe2c31 Add stratum share response lag time to verbose output if it's greater than 1 second. 2014-02-16 14:43:53 +02:00
Con Kolivas
7731806417 Add stratum share submission lag time to verbose information if it's over 1 second. 2014-02-16 14:43:31 +02:00
Con Kolivas
95ac0c4356 Export the flush_queue function for use by drivers. 2014-02-16 14:41:02 +02:00
Con Kolivas
ab805ec146 Remove wrong goto 2014-02-16 14:40:42 +02:00
Con Kolivas
d5d34f2168 Remove the unqueued work reference when we discard work from get queued as well. 2014-02-16 14:40:23 +02:00
Con Kolivas
ee7fb11cfb Wake the global work scheduler when we remove a work item from the unqueued work pointer. 2014-02-16 14:39:47 +02:00
Con Kolivas
2cea7ce439 Discard work that is stale in the get_queued() function, returning NULL instead. 2014-02-16 14:39:18 +02:00
ckolivas
8592226ad2 Add a get and queue helper work function. 2014-02-16 14:37:16 +02:00
Con Kolivas
011512561a Add a call to a driver specific zero stats function when zero stats is called to allow each driver to reset its own stats as well if desired. 2014-02-16 14:24:06 +02:00
Con Kolivas
dc767487e2 Fix displayed diff when solo mining at >2^32 diff. 2014-02-16 14:21:29 +02:00
Con Kolivas
c31de2601b Store when the last getwork was retrieved and display it in the API summary. 2014-02-16 14:14:40 +02:00
ckolivas
d1e2bfaf7f Make submit_tested_work return a bool about whether it meets the work target or not. 2014-02-16 14:10:31 +02:00
ckolivas
a58ef1b8c7 Provide a helper function for determining dev runtime and use it in the hashmeters used. 2014-02-16 14:09:51 +02:00
Con Kolivas
3323f9f9bf Generically increase the queue if we are mining on a pool without local work generation each time we run out of work. 2014-02-16 13:59:15 +02:00
Con Kolivas
5167962840 Change new block detection message since longpoll is rarely relevant today. 2014-02-16 13:58:40 +02:00
Con Kolivas
1ad3285f56 Use unused line at the top of the log window which often gets stuck unchanging. 2014-02-16 13:58:09 +02:00
Con Kolivas
cc2aa215a8 Clear pool work on a stratum reconnect message. 2014-02-16 13:57:20 +02:00
Kano
faf63ec036 Modify thread naming to make them easier to identify 2014-02-16 13:56:14 +02:00
Noel Maersk
87102ecd07 pool: additional debug logging for stratum pools.
Might help in trying to resove issue 88.
2014-02-12 21:11:59 +02:00
Noel Maersk
dab1d35efd log: add LOG_INFO message about suspended stratum to stratum_rthread().
Also a minor style/syntax fix while searching for why pools don't
restart if gone "dead". A pool is considered "dead" if pool->idle
is true.
2014-02-11 17:33:28 +02:00
Noel Maersk
c09a5b4406 core: remove num_processors (unused). 2014-02-08 15:41:31 +02:00
Noel Maersk
3f5485ae43 misc: clarify comments in switch_pools(). 2014-02-08 15:37:21 +02:00
unknown
b178ade675 VS2010 build: Added PSW kernel. Version bump to 4.1.0. 2014-02-08 12:40:20 +01:00
Noel Maersk
dff7876b7a Merge branch 'master' into build-msvs2010-upd 2014-02-07 21:45:26 +02:00
Noel Maersk
8043af5ec7 core: write gpu-threads to config when using ncurses menu. 2014-02-07 00:52:49 +02:00
Noel Maersk
b5b20c19f6 core: make errors on reading experimental options from config less scary.
The config file is written poorly: first off, not all available options
are written (they have to be written manually, since there's no struct
enumeration); then, default values are not commented out.
2014-02-07 00:34:56 +02:00
Noel Maersk
8dd1c2d4af core: correctly parse boolean configuration values.
Also, with style.
2014-02-05 22:03:46 +02:00
Noel Maersk
0e8ec8d060 pools: Allow disabling pool even if it's the last one enabled.
Pool state machine is incomplete, and enabled_pools is not increased if
pool state is not explicitly set to "enabled" in config. However,
there is no reason why the user should not be allowed to disable
all pools.

enabled_pools is a bookkeeping variable, and bookkeeping is cumbersome.
Rather than trying to fix this regression, get rid of another place
where enabled_pools is used.

Closes https://github.com/veox/sgminer/issues/75
2014-02-05 16:28:27 +02:00
Noel Maersk
3f34049302 core: change default scantime/expiry to 7/28 (back to 1:4 ratio).
Previous defaults (before 10/30) were optimised for Bitcoin that has
a much higher average block time. Optimise for Litecoin (currently
largest scrypt network.)

Not pushing it further down so as not to scare people with dropping
hashrates.

Thanks to MissedOutOnBTC @ freenode for testing.

Closes https://github.com/veox/sgminer/issues/22
2014-02-04 21:00:26 +02:00
Noel Maersk
f2f2bcedc7 build: use git version if available.
Borrowed from Arch Linux pacman:

https://projects.archlinux.org/pacman.git/tree/
2014-02-04 15:18:27 +02:00
Noel Maersk
52e9df8d78 help: temp-target and temp-overheat had identical descriptions that do not describe what they actually do.
Closes https://github.com/veox/sgminer/issues/65
2014-02-03 13:56:43 +02:00
Brandon Tuomela
bda1070259 kernel: add psw kernel. 2014-02-01 15:51:03 +02:00
troky
b3dbe146ad Fixed le25todouble() casting.
Conflicts (resolved):
	sgminer.c
2014-02-01 00:27:51 +02:00
troky
e0c380a2c9 Fixed missing realloc removed by mistake.
Conflicts (resolved):
	sgminer.c
2014-02-01 00:26:57 +02:00
Noel Maersk
b97a641ed9 Merge branch 'master' into build-msvs2010-upd
Conflicts (resolved):
	sgminer.c
2014-02-01 00:25:56 +02:00
Noel Maersk
c23522036d ui: Don't display pool list N times if N pools are set hidden in config.
Also, add some comments do #endif's.
2014-01-31 21:39:44 +02:00
Noel Maersk
9f99474e69 pools: Revert back to "Pool N" default pool name, and use json_array_index to set it.
Closes https://github.com/veox/sgminer/issues/51

Using j_a_i allows us to get rid of accounting vars like total_poolnames,
and pool names don't get mixed up if they're not specified for some pools.

It would still be desirable to show the URL as a pool name if poolname is not
set.
2014-01-30 15:22:19 +02:00
Noel Maersk
ed61c38ec8 build/mingw: style fixup after tonobitc merge.
Use `#defined(...)` instead of `#defined ...`.

Remove comments about issues - anyone removing those lines can check blame
to see why they were added.

Add tonobitc to AUTHORS.md.
2014-01-29 22:25:38 +02:00
Noel Maersk
241c94cbdd Merge remote-tracking branch 'tonokip/master' 2014-01-29 22:22:52 +02:00
tonobitc
32b13ccb46 fix for mingw-w64 2014-01-28 16:04:19 -08:00
tonobitc
d56d4ced64 include winsock2.h to resolve ws2tcpip.h conflict 2014-01-28 15:31:31 -08:00
Noel Maersk
e123cc20c3 kernel: search in pwd/kernel/ for kernels.
Closes https://github.com/veox/sgminer/issues/49.
2014-01-29 00:48:12 +02:00
Noel Maersk
d203dddabb ui: remove mention of cgminer in "Settings" menu. 2014-01-28 23:59:31 +02:00
Noel Maersk
d9eb547c5a VS2010 build: revert le256todouble() cast/ref/deref change.
Introduced by commit 87e5f35745

The cast/ref/deref is performed wrong and breaks share/best share display.
It is not the value of target that should be increased, but its address.

If all else fails, add an `#ifdef _MSVC_VER`; we should avoid it if possible.

In either case, constructs like `&(*(((uint64_t *)target) + 24))` must be
explained (in a comment).
2014-01-28 20:30:00 +02:00
Noel Maersk
761f100ab9 VS2010 build: fix a segfault from a removed realloc. 2014-01-28 03:29:23 +02:00
Noel Maersk
108ac24e2a core: check for GPU_* environment variables unconditionally. 2014-01-28 02:51:42 +02:00
Sanjin Trošelj
87e5f35745 VS2010 build: commit elist.h and relevant changes in sgminer.c and util.c
Cherry-picked by veox.

Introduces a segfault. Expect a HEAD reset.
2014-01-28 02:42:56 +02:00
Noel Maersk
d7c8d1d300 core: change scantime/expiry to 10/30 from 30/120. 2014-01-27 02:43:52 +02:00
Noel Maersk
64fc8324b8 pools: initial implementation of pool state machines.
moved enable_pool(), disable_pool() and other functions related to
state. These could probably be factored out altogether.

Pool state default is now "enabled" - it was previosly "disabled",
but there was an unconditional function call to enable all pools
in main() previously. It was factored out by joe's earlier commits,
so not visible in this one.
2014-01-27 02:28:58 +02:00
Noel Maersk
1ebcb07302 Merge branch 'master' into pools 2014-01-27 00:54:16 +02:00
Noel Maersk
cae071b837 Merge branch 'kernels' 2014-01-27 00:48:25 +02:00
Noel Maersk
e269656959 Merge branch 'pools-joe' 2014-01-26 23:57:18 +02:00
Noel Maersk
048c82b9b2 pools: rename 'pool->enabled' to 'pool->state'. 2014-01-26 20:02:00 +02:00
Noel Maersk
22b78e91f6 tui: Refactor status line printing.
Default pool name is now URL and port instead of "Pool N" (which
is confusing).

Status line displays user-defined name.
2014-01-26 19:44:39 +02:00
Noel Maersk
6417bcce61 Merge remote-tracking branch 'joe/pool_options' into pools 2014-01-26 16:51:38 +02:00
Joe4782
b1eb2ab8f8 Implemented the 'remove-pool' config option for json file pools 2014-01-26 01:26:00 +00:00
Joe4782
817ed55b6a Pool management option now shows pool name when available 2014-01-26 00:56:58 +00:00
Joe4782
1d81196238 Added a 'disable-pool' option to the json configuration, to allow pools to be started up disabled 2014-01-25 20:33:45 +00:00
gacheson
1eacb3f1c2 Fixes for "--pools" flag and fatal JSON error 2014-01-25 10:50:18 -06:00
Joe4782
712385160b Added the stratum port to the status print 2014-01-23 21:54:40 +00:00
Noel Maersk
de08e71ea2 core: write xintensity and rawintensity to config, add vectors back as a hidden option; a little whitespace for readability. 2014-01-23 21:43:22 +02:00
Noel Maersk
dda62843fd core: Add -v as an shorthand for --verbose. 2014-01-23 20:42:14 +02:00
Noel Maersk
5f795be64a core: use kernel name defines now that version date is not in the filenames.
Ideally, even this should not be needed, and specifying a kernel name string
should search for the appropriate file in kernel-path.
2014-01-23 11:46:47 +02:00
Martin Danielsen
d11df698d1 --rawintensity option, by request of Dead2.
This setting allows to set the GPU intensity value directly without any modifiers, it does not
get any more raw than this! Look at the xintensity description raw for examples of regular
intensity values. You can also set this value through the ncurses interface by pressing:
G -> A -> select device id -> enter value.

Minor xintensity code cleanup as well.

Conflicts:
	driver-opencl.c
	miner.h
	sgminer.c
2014-01-22 18:24:43 +02:00
Martin Danielsen
967c757cdf Cleaned a few messages up after pool naming feature. 2014-01-22 17:42:09 +02:00
Martin Danielsen
cb174d433a Failover pool switching back delay is now configurable.
--failover-switch-delay sets the delay in seconds before switching back to a failed pool,
default is 60 seconds.
2014-01-22 12:06:04 +02:00
Noel Maersk
5f326d64f5 kernel: allow choosing Alexey Karimov's kernels.
Am I the only one who gets a segfault?..
2014-01-21 10:36:55 +02:00
Noel Maersk
7950c10374 kernel: integrate Zuikkis' kernel, selectable with --kernel=zuikkis.
Kernel ckolivas is still the default. Needs documentation, too.

https://github.com/veox/sgminer/issues/4
2014-01-20 23:38:39 +02:00
Noel Maersk
9d1db95a28 misc: move scrypt130511.cl kernel file to kernel/ckolivas.cl
Prepare for more kernels. :)

Get rid of the kernel date, since this fudges up commit history.

Named after Con Kolivas, the most recent committer.
2014-01-20 16:04:43 +02:00
Luke Dashjr
3faf4dd4a6 Use lround instead of llround, since it has better compatibility with older MingW and Cygwin versions 2014-01-19 01:46:09 +02:00
Martin Danielsen
7aeae40af2 EXPERIMENTAL: A new way of setting intensity; introducing xintensity!
All of this is credited to ArGee of RGMiner, he did the initial ground work for this setting.

This new setting allows for a much finer grained intensity setting and also opens up for dual gpu threads on devices not previously able to. Note: make sure to use lower thread-concurrency values when you increase cpu threads.

Intensity is currently used to spawn GPU threads as a simple 2^value setting.
  I:13 =    8192 threads
  I:15 =   32768 threads
  I:17 =  131072 threads
  I:18 =  262144 threads
  I:19 =  524288 threads
  I:20 = 1048576 threads
Notice how the higher settings increase thread count tremendously.

Now enter the xintensity setting (Yes, I am a genius with my naming convention!).
It is simply a shader multiplier, obviously based on the amount of shaders you got on a card, this should allow the same value to scale with different card models.
   6970 with 1536 shaders: xI:64 = 98304 threads
R9 280X with 2048 shaders: xI:64 = 131072 threads
 R9 290 with 2560 shaders: xI:64 = 180224 threads
R9 290X with 2816 shaders: xI:64 = 163840 threads

   6970 with 1536 shaders: xI:300 = 460800 threads
R9 280X with 2048 shaders: xI:300 = 614400 threads
 R9 290 with 2560 shaders: xI:300 = 768000 threads
R9 290X with 2816 shaders: xI:300 = 844800 threads

It's now much easier to control thread intensity and it potentially allows for a uniform way of setting the intensity on your system. I'm very interested in constructive feedback, as I do not have access to a lot of different card models.

This change has been tested on 6970, R9 290, R9 290X - all with equal or a little better speeds than regular intensity setting after a little tuning, but your mileage may vary. Don't fret it, if this doesn't work for you, the regular intensity setting is still available.

Conflicts:
	driver-opencl.c
	sgminer.c
2014-01-18 21:11:31 +02:00
Martin Danielsen
d7e469bd76 Stratum servers can now be named.
The names will be used throughout the display in the program, when not set "Pool 1" will
simply be used instead. The names are not exposed through API yet, it's on my TODO list.

Use "poolname" like this:

	{
		"poolname" : "Example pool",
		"url" : "stratum+tcp://example.com:8080",
		"user" : "y",
		"pass" : "x"
	},

Conflicts:
	sgminer.c
	util.c
2014-01-18 21:05:26 +02:00
Noel Maersk
11920081ec ui: Don't pad most displayed strings with spaces. 2014-01-15 17:20:54 +02:00
Noel Maersk
e46581dea1 Remove --vectors (current kernel only supports 1 vector).
The functionality to set the number of vectors still remains, though.
2014-01-15 17:03:50 +02:00
Noel Maersk
e6b5fb7aa8 core: remove deprecated --scrypt option. 2014-01-15 16:45:04 +02:00
Noel Maersk
50066cf3c7 misc: Replace all remaining instances of 'cgminer' with 'sgminer'.
sed again.
2014-01-15 16:36:48 +02:00
Noel Maersk
6ea3b93809 core: fix build error due to CGMINER_PREFIX reference. 2014-01-15 16:03:24 +02:00
Noel Maersk
5b977125fa misc: Replace many (but not all) instances of 'cgminer' with 'sgminer'.
Just ran a `sed -i 's/cgminer/sgminer/'` on several files.
2014-01-15 15:36:19 +02:00