423 Commits (611f1cec7c17f65071f85ff621ea6e9dcfbf7e3a)

Author SHA1 Message Date
Con Kolivas 24316fc7fc Revert "Work is checked if it's stale elsewhere outside of can_roll so there is no need to check it again." 13 years ago
Con Kolivas 5ad58f9a5c Work is checked if it's stale elsewhere outside of can_roll so there is no need to check it again. 13 years ago
Con Kolivas eddd02fea1 Put upper bounds to under 2 hours that work can be rolled into the future for bitcoind will deem it invalid beyond that. 13 years ago
Con Kolivas bcec5f5102 Revert "Check we don't exhaust the entire unsigned 32 bit ntime range when rolling time to cope with extremely high hashrates." 13 years ago
Con Kolivas 522f620c89 Check we don't exhaust the entire unsigned 32 bit ntime range when rolling time to cope with extremely high hashrates. 13 years ago
Kano c21fc06560 define API option --api-groups 13 years ago
ckolivas 21a23a45d7 Work around pools that advertise very low expire= time inappropriately as this leads to many false positives for stale shares detected. 13 years ago
Paul Sheppard d3e2b62c54 Change sick/dead processing to use device pointer, not gpu array. 13 years ago
Con Kolivas 68a3a9ad10 There is no need for work to be a union in struct workio_cmd 13 years ago
ckolivas b198423d17 Don't keep rolling work right up to the expire= cut off. Use 2/3 of the time between the scantime and the expiry as cutoff for reusing work. 13 years ago
ckolivas 6e80b63bb8 Revert "Increase the getwork delay factored in to determine if work vs share is stale to avoid too tight timing." 13 years ago
ckolivas d8de1bbc5b Increase the getwork delay factored in to determine if work vs share is stale to avoid too tight timing. 13 years ago
Paul Sheppard 1ef52e0bac Check for submit_stale before checking for work_restart 13 years ago
Paul Sheppard 90d82aa61d Revert to pre pool merge 13 years ago
Con Kolivas c027492fa4 Make the pools array a dynamically allocated array to allow unlimited pools to be added. 13 years ago
Con Kolivas 5cf4b7c432 Make the devices array a dynamically allocated array of pointers to allow unlimited devices. 13 years ago
Con Kolivas 17ba2dca63 Logic fail on queueing multiple requests at once. Just queue one at a time. 13 years ago
Con Kolivas 42ea29ca4e Use a queueing bool set under control_lock to prevent multiple calls to queue_request racing. 13 years ago
Con Kolivas 63dd598e2a Queue multiple requests at once when levels are low. 13 years ago
Con Kolivas 757922e4ce Use the work clone flag to determine if we should subtract it from the total queued variable and provide a subtract queued function to prevent looping over locked code. 13 years ago
Con Kolivas 49dd8fb548 Don't decrement staged extras count from longpoll work. 13 years ago
Con Kolivas d93e5f710d Count longpoll's contribution to the queue. 13 years ago
Con Kolivas 05bc638d97 Increase queued count before pushing message. 13 years ago
Con Kolivas 32f5272123 Revert "With better bounds on the amount of work cloned, there is no need to age work and ageing it was picking off master work items that could be further rolled." 13 years ago
Con Kolivas 5d90c50fc0 With better bounds on the amount of work cloned, there is no need to age work and ageing it was picking off master work items that could be further rolled. 13 years ago
Con Kolivas 47f66405c0 Alternatively check staged work count for rolltime capable pools when deciding to queue requests. 13 years ago
Con Kolivas efa9569b66 Test we have enough work queued for pools with and without rolltime capability. 13 years ago
Con Kolivas 1bbc860a15 Don't count longpoll work as a staged extra work. 13 years ago
Con Kolivas ebaa615f6d Count extra cloned work in the total queued count. 13 years ago
Con Kolivas 74cd6548a9 Use a static base measurement difference of how many items to clone since requests_staged may not climb while rolling. 13 years ago
Con Kolivas 7b57df1171 Allow 1/3 extra buffer of staged work when ageing it. 13 years ago
Con Kolivas 53269a97f3 Revert "Simplify the total_queued count to those staged not cloned and remove the locking since it's no longer a critical value." 13 years ago
Con Kolivas a05c8e3fd9 Revert "Take into account total_queued as well when deciding whether to queue a fresh request or not." 13 years ago
Con Kolivas 750474bcfb Revert "Further simplify the total_queued counting mechanism and do all dec_queued from the one location." 13 years ago
Con Kolivas d2c1a6bd6b Revert "Make sure to have at least one staged work item when deciding whether to queue another request or not and dec queued in free work not discard work." 13 years ago
Con Kolivas c860172275 Make sure to have at least one staged work item when deciding whether to queue another request or not and dec queued in free work not discard work. 13 years ago
Con Kolivas 790acad9f9 Further simplify the total_queued counting mechanism and do all dec_queued from the one location. 13 years ago
Con Kolivas b20089fdb7 Take into account total_queued as well when deciding whether to queue a fresh request or not. 13 years ago
Con Kolivas ded16838db Add the getwork delay time instead of subtracting it when determining if a share is stale. 13 years ago
Con Kolivas b5757d124b Don't count getwork delay when determining if shares are stale. 13 years ago
Con Kolivas 9f811c528f Simplify the total_queued count to those staged not cloned and remove the locking since it's no longer a critical value. 13 years ago
Con Kolivas 411784a99d As work is sorted by age, we can discard the oldest work at regular intervals to keep only 1 of the newest work items per mining thread. 13 years ago
Con Kolivas 359635a8cf Only roll enough work to have one staged work for each mining thread. 13 years ago
Con Kolivas 0c970bbd1c Roll work again after duplicating it to prevent duplicates on return to the clone function. 13 years ago
Con Kolivas 610302afcb Abstract out work cloning and clone $mining_threads copies whenever a rollable work item is found and return a clone instead. 13 years ago
Con Kolivas a8ae1a43ea Rolltime should be used as the cutoff time for primary work as well as the rolled work, if present. 13 years ago
Con Kolivas c20a89d998 Take into account average getwork delay as a marker of pool communications when considering work stale. 13 years ago
Con Kolivas f32ffb8718 Work out a rolling average getwork delay stored in pool_stats. 13 years ago
Con Kolivas 4e60a62ae2 Getwork delay in stats should include retries for each getwork call. 13 years ago
ckolivas c5a21fabf0 Extend nrolltime to support the expiry= parameter. Do this by turning the rolltime bool into an integer set to the expiry time. If the pool supports rolltime but not expiry= then set the expiry time to the standard scantime. 13 years ago