cgminer.c


Log

Author Commit Date CI Message
Paul Sheppard 75a651c1 2012-06-28T16:08:10 Revert "Check for submit_stale before checking for work_restart" Makes no sense to continue working on the old block whether submit_stale is enabled or not.
Paul Sheppard baa480c1 2012-06-28T08:22:55 Merge branch 'master' of git://github.com/ckolivas/cgminer.git Conflicts: cgminer.c
Paul Sheppard f2253929 2012-06-28T08:20:45 Add low hash threshold in sick/dead processing Add check for fd in comms procedures
Con Kolivas 3267b534 2012-06-28T10:43:52 Implement rudimentary X-Mining-Hashrate support.
Con Kolivas 4c5d41a8 2012-06-27T16:03:46 Merge pull request #243 from kanoi/master define, implement and document API option --api-groups
Paul Sheppard 862a362b 2012-06-27T14:55:44 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Con Kolivas 24316fc7 2012-06-28T07:27:57 Revert "Work is checked if it's stale elsewhere outside of can_roll so there is no need to check it again." This reverts commit 5ad58f9a5ce1a6b99f3011e1811fa01040d12aa2.
Paul Sheppard 62c3c66f 2012-06-27T08:18:12 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Con Kolivas 5ad58f9a 2012-06-27T23:36:48 Work is checked if it's stale elsewhere outside of can_roll so there is no need to check it again.
Con Kolivas eddd02fe 2012-06-27T23:32:50 Put upper bounds to under 2 hours that work can be rolled into the future for bitcoind will deem it invalid beyond that.
Con Kolivas bcec5f51 2012-06-27T23:30:50 Revert "Check we don't exhaust the entire unsigned 32 bit ntime range when rolling time to cope with extremely high hashrates." This reverts commit 522f620c89b5f152f86a2916b0dca7b71b2a5005. Unrealistic. Limits are bitcoind related to 2 hours in the future.
Con Kolivas 383d35b2 2012-06-27T22:35:38 Merge branch 'master' of github.com:ckolivas/cgminer
Con Kolivas 522f620c 2012-06-27T22:34:46 Check we don't exhaust the entire unsigned 32 bit ntime range when rolling time to cope with extremely high hashrates.
Kano c21fc065 2012-06-27T21:28:18 define API option --api-groups
ckolivas 794b6558 2012-06-27T10:55:50 Merge branch 'master' of https://github.com/ckolivas/cgminer
ckolivas 21a23a45 2012-06-27T10:15:57 Work around pools that advertise very low expire= time inappropriately as this leads to many false positives for stale shares detected.
Paul Sheppard d3e2b62c 2012-06-26T14:45:48 Change sick/dead processing to use device pointer, not gpu array. Change BFL timing to adjust only when hashing complete (not error/idle etc.).
Paul Sheppard 78d5a81d 2012-06-26T12:32:09 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Con Kolivas 68a3a9ad 2012-06-26T22:37:24 There is no need for work to be a union in struct workio_cmd
ckolivas b198423d 2012-06-26T16:01:06 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.
ckolivas 6e80b63b 2012-06-26T15:43:03 Revert "Increase the getwork delay factored in to determine if work vs share is stale to avoid too tight timing." This reverts commit d8de1bbc5baa416148f50938cfde28a5261cb0e1. Wrong fix.
ckolivas d8de1bbc 2012-06-26T13:07:08 Increase the getwork delay factored in to determine if work vs share is stale to avoid too tight timing.
Paul Sheppard 1ef52e0b 2012-06-25T19:23:10 Check for submit_stale before checking for work_restart (to keep Kano happy)
Paul Sheppard df9e76bd 2012-06-25T10:56:04 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Paul Sheppard 90d82aa6 2012-06-25T10:27:08 Revert to pre pool merge
Con Kolivas c027492f 2012-06-25T17:06:26 Make the pools array a dynamically allocated array to allow unlimited pools to be added.
Con Kolivas 5cf4b7c4 2012-06-25T16:59:29 Make the devices array a dynamically allocated array of pointers to allow unlimited devices.
Con Kolivas 17ba2dca 2012-06-25T10:51:45 Logic fail on queueing multiple requests at once. Just queue one at a time.
Con Kolivas 42ea29ca 2012-06-25T00:58:18 Use a queueing bool set under control_lock to prevent multiple calls to queue_request racing.
Con Kolivas 63dd598e 2012-06-25T00:42:51 Queue multiple requests at once when levels are low.
Con Kolivas 757922e4 2012-06-25T00:33:47 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.
Con Kolivas 49dd8fb5 2012-06-25T00:25:38 Don't decrement staged extras count from longpoll work.
Con Kolivas d93e5f71 2012-06-25T00:23:58 Count longpoll's contribution to the queue.
Con Kolivas 05bc638d 2012-06-25T00:08:50 Increase queued count before pushing message.
Con Kolivas 32f52721 2012-06-25T00:03:37 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." This reverts commit 5d90c50fc08644c9b0c3fb7d508b2bc84e9a4163.
Con Kolivas 5d90c50f 2012-06-24T23:38:24 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.
Con Kolivas 47f66405 2012-06-24T23:10:02 Alternatively check staged work count for rolltime capable pools when deciding to queue requests.
Con Kolivas efa9569b 2012-06-24T22:59:56 Test we have enough work queued for pools with and without rolltime capability.
Con Kolivas 1bbc860a 2012-06-24T22:47:51 Don't count longpoll work as a staged extra work.
Con Kolivas ebaa615f 2012-06-24T22:16:04 Count extra cloned work in the total queued count.
Con Kolivas 74cd6548 2012-06-24T22:00:37 Use a static base measurement difference of how many items to clone since requests_staged may not climb while rolling.
Con Kolivas 7b57df11 2012-06-24T21:58:52 Allow 1/3 extra buffer of staged work when ageing it.
Con Kolivas 53269a97 2012-06-24T21:57:49 Revert "Simplify the total_queued count to those staged not cloned and remove the locking since it's no longer a critical value." This reverts commit 9f811c528f6eefbca5f16c92181783f756e3a68f.
Con Kolivas a05c8e3f 2012-06-24T21:57:18 Revert "Take into account total_queued as well when deciding whether to queue a fresh request or not." This reverts commit b20089fdb70a52ec029375beecebfd47efaee218.
Con Kolivas 750474bc 2012-06-24T21:56:53 Revert "Further simplify the total_queued counting mechanism and do all dec_queued from the one location." This reverts commit 790acad9f9223e4d532d8d38e00737c79b8e40fb.
Con Kolivas d2c1a6bd 2012-06-24T21:56:36 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." This reverts commit c8601722752bcc6d3db7efd0063f7f2d7f2f7d2a.
Con Kolivas c8601722 2012-06-24T21:52:07 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.
Con Kolivas 790acad9 2012-06-24T21:42:34 Further simplify the total_queued counting mechanism and do all dec_queued from the one location.
Con Kolivas b20089fd 2012-06-24T20:59:55 Take into account total_queued as well when deciding whether to queue a fresh request or not.
Con Kolivas ded16838 2012-06-24T20:48:02 Add the getwork delay time instead of subtracting it when determining if a share is stale.
Con Kolivas b5757d12 2012-06-24T20:45:47 Don't count getwork delay when determining if shares are stale.
Con Kolivas 9f811c52 2012-06-24T20:38:40 Simplify the total_queued count to those staged not cloned and remove the locking since it's no longer a critical value. Clone only anticipated difference sicne there will be a lag from the value returned by requests_staged(). Keep 1/3 buffer of extra work items when ageing them.
Con Kolivas 411784a9 2012-06-24T19:53:31 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.
Con Kolivas 359635a8 2012-06-24T18:44:09 Only roll enough work to have one staged work for each mining thread.
Con Kolivas 0c970bbd 2012-06-24T18:22:20 Roll work again after duplicating it to prevent duplicates on return to the clone function.
Con Kolivas 610302af 2012-06-24T18:10:17 Abstract out work cloning and clone $mining_threads copies whenever a rollable work item is found and return a clone instead.
Con Kolivas a8ae1a43 2012-06-24T14:38:31 Rolltime should be used as the cutoff time for primary work as well as the rolled work, if present.
Con Kolivas c20a89d9 2012-06-24T14:20:29 Take into account average getwork delay as a marker of pool communications when considering work stale.
Con Kolivas f32ffb87 2012-06-24T13:20:17 Work out a rolling average getwork delay stored in pool_stats.
Con Kolivas 4e60a62a 2012-06-24T12:55:56 Getwork delay in stats should include retries for each getwork call.
ckolivas 6a45cbbd 2012-06-23T23:45:08 Merge branch 'master' of https://github.com/ckolivas/cgminer
ckolivas c5a21fab 2012-06-23T23:43:22 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.
Paul Sheppard 6ce4871b 2012-06-20T15:49:51 Merge branch 'conf_pools'
Paul Sheppard 0bcdc2ca 2012-06-20T15:49:07 Add ability to disable pools in config file. Also fix pool writing in priorty order.
Paul Sheppard 57fa2be1 2012-06-20T11:40:28 Write pools in priority order
Paul Sheppard e0370281 2012-06-19T10:40:00 Merge branch 'master' of https://github.com/ckolivas/cgminer.git Conflicts: driver-bitforce.c
Con Kolivas f70577b0 2012-06-19T04:38:49 Merge pull request #229 from luke-jr/modminer_primary modminer: Don't delay 2nd+ FPGAs during work restart
Luke Dashjr 1215da39 2012-06-18T05:51:09 modminer: Don't delay 2nd+ FPGAs during work restart Add primary_thread boolean to threads to identify a single one as the "primary" thread for shared-resource multithreading. This is needed since ModMiners use multiple threads to interface with independent hashing components.
Paul Sheppard af27b40e 2012-06-17T09:47:02 Merge branch 'master' of https://github.com/pshep/cgminer.git
Paul Sheppard fe4c0869 2012-06-17T09:44:42 Merge branch 'master' of git://github.com/ckolivas/cgminer.git Conflicts: cgminer.c
Paul Sheppard 7ae22e21 2012-06-16T20:24:40 Disable OpenCL code when not available.
Con Kolivas 8faf3c90 2012-06-16T09:22:11 Fix openwrt crashing on regeneratehash() by making check_solve a noop.
Paul Sheppard 6ed75c96 2012-06-15T12:11:28 Remove nDev limit in watchdog_thread Can't work out why it was even there... so there could still be a reason for it!
Paul Sheppard fa3f357f 2012-06-14T17:36:59 Sick/dead handling for non-gpus
Paul Sheppard bc4a259a 2012-06-14T08:13:07 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Con Kolivas bf3e1583 2012-06-14T21:36:23 Fix sign warning.
Con Kolivas 83bf9f43 2012-06-14T20:53:07 can_roll and should_roll should have no bearing on the cycle period within the miner_thread so remove it.
Con Kolivas ceec3f83 2012-06-14T20:36:17 Check for strategy being changed to load balance when enabling LPs.
Con Kolivas b0de3ede 2012-06-14T17:28:24 Check that all threads on the device that called get_work are waiting on getwork before considering the pool lagging.
Con Kolivas 44f5d55d 2012-06-14T17:16:37 Iterate over each thread belonging to each device in the hashmeter instead of searching for them now that they're a list.
Paul Sheppard 2d1f9610 2012-06-14T00:05:31 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Con Kolivas 6e2c12ee 2012-06-14T16:11:29 When using rotate pool strategy, ensure we only select from alive enabled pools.
Con Kolivas 79f4b570 2012-06-14T15:58:18 Start longpoll from every pool when load balance strategy is in use.
Con Kolivas dbe9056d 2012-06-14T15:42:43 Add mandatory and block fields to the work struct. Flag any shares that are detected as blocks as mandatory to submit, along with longpoll work from a previously rejecting pool.
Paul Sheppard b94e1996 2012-06-13T17:31:20 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Paul Sheppard eff2d04d 2012-06-13T12:31:33 Merge branch 'master' of https://github.com/ckolivas/cgminer.git Conflicts: cgminer.c
Luke Dashjr 4eb23c7e 2012-06-13T16:56:31 Bugfix: slay a variety of warnings
Paul Sheppard 2384d0fb 2012-06-12T18:20:18 Removed idle mode... again!? Changed work_reset rate to every 100ms & use defines rather than numerics. Change total sleep time to 4300ms after performance testing/measurement (now good to 916MH/s). Changed timeout to 15s - Throttle time is 15s. Added support for 'Busy' when submitting work. Improved logging text to include device identifier. Added a thread_enable api function, called when a thread is re-enabled. ... and removed useless re-init inside scanhash. Use modminer introduced mutex.
Luke Dashjr a78d616b 2012-06-12T16:31:17 modminer: Temperature sensor improvements Display the temperature of each of the (up to) 4 FPGAs
Paul Sheppard 861388f9 2012-06-12T09:04:42 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Luke Dashjr 76f96f47 2012-06-11T03:02:10 New driver: BTCFPGA ModMiner
Luke Dashjr d3fa59d7 2012-06-05T02:17:09 Abstract generally useful FPGA code into fpgautils.c
Paul Sheppard bf4d6c34 2012-06-11T13:36:35 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Paul Sheppard 4889d7ec 2012-06-11T13:09:27 Merge branch 'master' of git@github.com:pshep/cgminer.git Conflicts: driver-bitforce.c
Paul Sheppard 3347f806 2012-06-10T23:14:51 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Paul Sheppard 820d662c 2012-06-10T23:11:59 Removed idle mode. Added watchdog thread BFL temperature monitoring.
Paul Sheppard ebeaf15f 2012-06-09T19:30:32 Added idle mode Idle is only set by pgadisable, so GPU/CPU is unaffected. For Icarus/Ztex, in scanhash the thread is immediately set disabled then returns.
Kano fdcd72b9 2012-06-10T11:19:21 API add stats for pool getworks
Paul Sheppard 7f54adb4 2012-06-08T19:48:42 Merge remote-tracking branch 'upstream/master'
Kano 3cb3f09a 2012-05-31T23:18:55 API save default config file if none specified