1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-10 14:58:01 +00:00
Commit Graph

158 Commits

Author SHA1 Message Date
Con Kolivas
fa9e03f487 Implement pool rotation strategy. 2011-07-20 13:48:23 +10:00
Con Kolivas
521025aa75 Implement load balancing algorithm by rotating requests to each pool. 2011-07-20 13:35:55 +10:00
Con Kolivas
0ba06c69f9 Timeout on failed discarding of staged requests. 2011-07-20 13:15:52 +10:00
Con Kolivas
6305146bea Implement proper flagging of idle pools, test them with the watchdog thread, and failover correctly. 2011-07-20 13:07:41 +10:00
Con Kolivas
7c8919328c Move pool active test to own function. 2011-07-20 11:49:03 +10:00
Con Kolivas
40419f1a78 Allow multiple strategies to be set for multipool management. 2011-07-20 11:39:02 +10:00
Con Kolivas
d518f7cbfd Track pool number. 2011-07-20 11:27:21 +10:00
Con Kolivas
02e0e12529 Don't waste the work items queued on testing the pools at startup. 2011-07-20 10:07:39 +10:00
Con Kolivas
ced0e5ad81 Reinstate the mining thread watchdog restart.
Add a getpoll bool into the thread information and don't restart threads stuck waiting on work.
Rename the idlenet bool for the pool for later use.
2011-07-20 09:31:45 +10:00
Con Kolivas
0afab92cd4 Allow the user/pass userpass urls to be input in any order. 2011-07-19 23:16:30 +10:00
Con Kolivas
0d8b8793b5 Reset the queued count to allow more work to be queued for the new pool on pool switch. 2011-07-19 17:00:56 +10:00
Con Kolivas
012456f3b7 Display per pool summary at the end if multiple pools in use. Fine tune statistics and make localgen fail at 5 mins. 2011-07-19 14:33:52 +10:00
Con Kolivas
85bf965cda Force a mandatory work item on pool switch and determine what to do based on server supporting roll time or not. 2011-07-19 14:09:36 +10:00
Con Kolivas
f91a048ae7 Implement the actual switch logic which changes over after 5 minutes of local work generation. 2011-07-19 13:30:29 +10:00
Con Kolivas
81ff7fb3dc Explicitly probe each pool to see if work can be retrieved from it and what it supports. 2011-07-19 13:01:08 +10:00
Con Kolivas
913e120262 Test for rolltime and save it correctly when testing for longpoll. 2011-07-19 12:29:33 +10:00
Con Kolivas
0ce3df10d2 Store whether each server supports X-Roll-Ntime or not. 2011-07-19 11:45:58 +10:00
Con Kolivas
321c4798d4 Make longpoll switch servers should it not match the current pool. 2011-07-19 10:53:04 +10:00
Con Kolivas
529aa70c38 Set pool on work retrieved from longpoll. 2011-07-19 10:32:24 +10:00
Con Kolivas
048bea201f Set first localgen time to max. 2011-07-19 10:31:05 +10:00
Con Kolivas
ecda75946b Set and get the current pool under lock. 2011-07-19 10:19:59 +10:00
Con Kolivas
b8ba2fd44e Implement a per-pool mutex and use that for locking the internal flags. 2011-07-19 09:54:50 +10:00
Con Kolivas
fd10b993b0 Move add pool to somewhere clean and obvious. 2011-07-19 09:43:15 +10:00
Con Kolivas
7073493911 Merge branch 'cgminer' into pools
Conflicts:
	main.c
2011-07-19 01:46:16 +10:00
Con Kolivas
a46b5d1e0a Make it possible to pass multiple urls/users etc in preparation for multiple pool support but only use pool 0 for now. 2011-07-19 01:27:56 +10:00
Con Kolivas
19b80d6db3 Curl's global init can trample dynamically allocated data so do it before anything else. 2011-07-19 00:14:58 +10:00
Con Kolivas
961c43067b Abstract out the pool data to begin move to multiple pool support. 2011-07-19 00:09:45 +10:00
Con Kolivas
1d27c119b6 Don't let total_queued go below zero. 2011-07-18 22:02:10 +10:00
Con Kolivas
8220af8806 Avoid queueing extra work if there's work staged as well. 2011-07-18 20:22:16 +10:00
Con Kolivas
c3e569ed9b Copied the data to longpoll_block too early so the longpoll message will rarely be received.
Submit longpoll's converted work after we've flushed requests since that will blank the current_block for stage_thread to see.
2011-07-18 13:16:15 +10:00
Con Kolivas
5e7c37aebb Make it clear what the sha algorithm is for. 2011-07-18 12:02:37 +10:00
Con Kolivas
e532ac354a Only clear the longpoll block data if we successfully received a longpoll, and do it before converting the longpoll data to work to avoid the staging thread believing it got the new work before the longpoll. 2011-07-18 11:37:33 +10:00
Con Kolivas
01eb4c599d Minimise impact on GUIs by dropping priority and policy in gpu mining threads if dynamic mode is enabled. 2011-07-18 11:36:54 +10:00
Con Kolivas
0aa9887300 Add an sse4 algorithm to CPU mining. 2011-07-18 11:27:58 +10:00
Con Kolivas
fc184625d2 We now are guaranteed to have one fresh work item after a block change and we should only discard staged requests. 2011-07-18 10:33:31 +10:00
Con Kolivas
d53ee8e71b Don't waste the work we retrieve from a longpoll. 2011-07-18 10:19:22 +10:00
Con Kolivas
0c253734e1 Provide a control lock around global bools to avoid racing on them. 2011-07-18 10:12:38 +10:00
Con Kolivas
b6ac9f185e Revert "Make sure not to try and submit work for nonces higher than already submitted in current work item."
This reverts commit a2dd410e36.

Incorrect fix. Missed real shares that are accepted.
2011-07-17 20:06:43 +10:00
Con Kolivas
1d45b7f475 Revert "Don't miss first work item."
This reverts commit 57f5893f4a.

Start reverting. This fix didn't help.
2011-07-17 20:06:25 +10:00
Con Kolivas
57f5893f4a Don't miss first work item. 2011-07-17 19:36:17 +10:00
Con Kolivas
a2dd410e36 Make sure not to try and submit work for nonces higher than already submitted in current work item.
This reduces rejects substantially.
2011-07-17 19:33:53 +10:00
Con Kolivas
eb91b03e22 Show last 8 characters of the share submitted. 2011-07-16 23:31:32 +10:00
Con Kolivas
96cc141ba2 Display URL connected to and user connected as in status. 2011-07-16 17:43:04 +10:00
Con Kolivas
3e032b8a8d Display current block and when it was started in status line. 2011-07-16 12:48:15 +10:00
Con Kolivas
a1339d723f Only pthread_join the mining threads if they exist as determined by pthread_cancel. 2011-07-16 11:06:58 +10:00
Con Kolivas
3cb7ef2b07 Create a unique get work queue instead of faking it all to thread 0. 2011-07-16 10:46:50 +10:00
Con Kolivas
0a9db84d26 Make it clear the restart message is going to the watchdog thread. 2011-07-16 10:33:01 +10:00
Con Kolivas
8203cc67eb Check the current block description hasn't been blanked pending the real new current block data. 2011-07-16 10:28:59 +10:00
Con Kolivas
18af4e6272 Re-enable signal handlers once the custom sighandler has been hit to make it possible to still kill cgminer. 2011-07-16 10:13:49 +10:00
Con Kolivas
70edd0d36f Disable restarting of CPU mining threads pending further investigation. They may not need it and are easily killed off. 2011-07-16 02:55:43 +10:00