1228 Commits (eed0afcd0426824598770c46b3cc44ebe7d92748)

Author SHA1 Message Date
Con Kolivas 0fbd60ae37 Keep track of staged rollable work item counts to speed up clone_available. 12 years ago
Con Kolivas 83b9ddfea4 Make expiry on should_roll to 2/3 time instead of share duration since some hardware will have very fast share times. 12 years ago
Con Kolivas 8697d6a2ce Do the cheaper comparison first. 12 years ago
Con Kolivas 381c56f811 Check that we'll get 1 shares' worth of work time by rolling before saying we should roll the work. 12 years ago
Con Kolivas afcfea15a7 Simplify all those total_secs usages by initialising it to 1 second. 12 years ago
Con Kolivas 5fadfdb219 Overlap queued decrementing with staged incrementing. 12 years ago
Con Kolivas 9f1d9ce3b7 Artificially set the pool lagging flag on pool switch in failover only mode as well. 12 years ago
Con Kolivas a6b97327e1 Artificially set the pool lagging flag on work restart to avoid messages about slow pools after every longpoll. 12 years ago
Con Kolivas 44e81218fd Factor in opt_queue value into enough work queued or staged. 12 years ago
Con Kolivas 611f1cec7c Roll work whenever we can on getwork. 12 years ago
Con Kolivas fd0be1bb51 Queue requests for getwork regardless and test whether we should send for a getwork from the getwork thread itself. 12 years ago
Con Kolivas 7d77c01619 Get rid of age_work(). 12 years ago
Kano 95dff7363e API allow display/change failover-only setting 12 years ago
Con Kolivas 8e20456bc0 Check we are not lagging as well as there is enough work in getwork. 12 years ago
Con Kolivas d66742a8c1 Minimise locking and unlocking when getting counts by reusing shared mutex lock functions. 12 years ago
Con Kolivas c91a95459b Avoid getting more work if by the time the getwork thread is spawned we find ourselves with enough work. 12 years ago
Con Kolivas f27bcb8ee5 Going back to e68ecf5eb2 12 years ago
Con Kolivas c892ded6e0 Make sure there are true pending staged work items as well in failover only mode. 12 years ago
Con Kolivas 61003df49f In failover-only mode we need to queue enough work for the local pool and ignore the total queued count. 12 years ago
Con Kolivas 8aa61f6626 Make sure we have work from the current pool somewhere in the queue in case the queue is full of requests from a pool that has just died. 12 years ago
Con Kolivas c0aaf56a8d Since all the counts use the same mutex, grab it only once. 12 years ago
Con Kolivas 4f9394be81 When popping work, grab cloned work first if possible since original work can be reused to make further clones. 12 years ago
Con Kolivas 8085ae6854 Further simplify the queue request mechanism. 12 years ago
Con Kolivas f83863a996 Keep total queued count as a fake pending staged count to account for the period a queue is in flight before it is staged. 12 years ago
Con Kolivas e47dc87355 Clone work at the time of requesting it if an existing work item can be rolled. 12 years ago
Con Kolivas e68ecf5eb2 Queue one request for each staged request removed, keeping the staged request count optimal at all times. 12 years ago
Paul Sheppard f98970f674 Revert "roundl fix" 12 years ago
Paul Sheppard 523d177b96 roundl fix 12 years ago
Kano 52e5524d7f Escape " and \ when writing json config file 12 years ago
ckolivas 3dd1658e1f We may as well leave one curl still available per pool instead of reaping the last one. 12 years ago
ckolivas c7bcad653b Need to recheck the pool->curls count on regaining the pool lock after the pthread conditional wait returns. 12 years ago
ckolivas ad8c4b7755 Revert "Only add to the pool curlring and increment the counter under mutex lock." 12 years ago
ckolivas 145f04ccc7 Display reaped debug message outside mutex lock to avoid recursive locking. 12 years ago
ckolivas 8897e06575 Only add to the pool curlring and increment the counter under mutex lock. 12 years ago
Con Kolivas 25fd6cd0fd Correct writing of scrypt parameters to config file based on command line parameters only. 12 years ago
Con Kolivas 7611499b11 Queue a request on pool switch in case we have no work from the new pool yet. 12 years ago
Con Kolivas 4efa31d2e7 Display failover only mode in pool menu and allow it to be toggled live. 12 years ago
Con Kolivas 1a041668a5 Reinstate check for system queueing lag when the current pool's queue is maxed out, there is no staged work, and the work is needed now. 12 years ago
Con Kolivas 499c594cba There is no need for pool active testing to be mandatory any more with queue request changes. 12 years ago
Con Kolivas e4326e3ca2 Fix harmless warnings. 12 years ago
Con Kolivas 9a45a6d993 Check the current staged and global queued as well before queueing requests. 12 years ago
Con Kolivas bf9c324752 The queueing mechanism has become a complex state machine that is no longer predictable. Rewrite it from scratch watching only current queues in flight and staged work available on a pool by pool basis. 12 years ago
Con Kolivas b66e0241f7 Queue an extra request whenever staged work drops below mining thread count in hash_pop. 12 years ago
Con Kolivas 15dc4bb320 Scrypt mining does not support block testing yet so don't try to print it. 12 years ago
Con Kolivas 2953aa2502 We dropped the temporary stopping of curl recruiting on submit_fail by mistake, reinstate it. 12 years ago
Con Kolivas 9410875e2f Make threads report in either side of the scanhash function in case we miss reporting in when restarting work. 12 years ago
ckolivas d5dffa6aad Don't make mandatory work and its clones last forever. 12 years ago
Con Kolivas aa52db4539 Make test work for pool_active mandatory work items to smooth out staged work counts when in failover-only mode. 12 years ago
Kano e067be421a ICA support 57600 baud rate, up to 8 FPGA and partial working FPGA boards 12 years ago
Con Kolivas 8414a9a7e2 Add debugging output when work is found stale as to why. 12 years ago