cgminer.c


Log

Author Commit Date CI Message
Con Kolivas 4987958e 2012-05-04T20:10:38 Add a temporarily disabled state for enabled pools called POOL_REJECTING and use the work from each longpoll to help determine when a rejecting pool has started working again. Switch pools based on the multipool strategy once a pool is re-enabled.
Con Kolivas d5eb6650 2012-05-04T02:43:56 Merge pull request #193 from kanoi/master API add last share time to each pool + Correct Icarus U: & MH/s
ckolivas 376fcd3c 2012-05-04T13:10:18 Fix the benchmark feature by bypassing the new networking code.
ckolivas 4d090a58 2012-05-04T12:51:32 Reset sequential reject counter after a pool is disabled for when it is re-enabled.
Kano 44fc6987 2012-05-04T00:13:42 API add last share time to each pool
Con Kolivas 852f6a0e 2012-05-03T22:39:12 Don't try to reap curls if benchmarking is enabled.
Con Kolivas f0985f99 2012-05-03T16:25:07 Only show longpoll warning once when it has failed.
Con Kolivas 41d5813d 2012-05-03T15:37:29 Convert hashes to an unsigned long long as well.
Con Kolivas a4f1af17 2012-05-03T15:35:13 Detect pools that have issues represented by endless rejected shares and disable them, with a parameter to optionally disable this feature.
Luke Dashjr 06801822 2012-05-02T23:09:39 Bugfix: Use a 64-bit type for hashes_done (miner_thread) since it can overflow 32-bit on some FPGAs
ckolivas 5cf4e188 2012-05-02T11:17:06 Increase pool watch interval to 30 seconds.
Con Kolivas 5081c182 2012-05-03T09:24:25 Limit the number of curls we recruit on communication failures and with delaynet enabled to 5 by maintaining a per-pool curl count, and using a pthread conditional that wakes up when one is returned to the ring buffer.
Con Kolivas d4405de7 2012-05-03T08:56:42 Generalise add_pool() functions since they're repeated in add_pool_details.
Luke Dashjr 4ba9006d 2012-05-02T10:28:09 Disable failing devices such that the user can attempt to re-enable them
ckolivas 85008a78 2012-05-02T10:12:07 Reap curls that are unused for over a minute. This allows connections to be closed, thereby allowing the number of curl handles to always be the minimum necessary to not delay networking.
Con Kolivas ec3d0570 2012-05-01T21:07:16 Use the ringbuffer of curls from the same pool for submit as well as getwork threads. Since the curl handles were already connected to the same pool and are immediately available, share submission will not be delayed by getworks.
Con Kolivas 7d288eac 2012-05-01T19:59:37 Implement a scaleable networking framework designed to cope with any sized network requirements, yet minimise the number of connections being reoped. Do this by create a ring buffer linked list of curl handles to be used by getwork, recruiting extra handles when none is immediately available.
Con Kolivas 89053c78 2012-05-01T19:12:37 There is no need for the submit and getwork curls to be tied to the pool struct.
ckolivas adda6e66 2012-05-01T17:48:23 Do not recruit extra connection threads if there have been connection errors to the pool in question.
ckolivas 76385112 2012-05-01T09:54:34 We should not retry submitting shares indefinitely or we may end up with a huge backlog during network outages, so discard stale shares if we failed to submit them and they've become stale in the interim.
Con Kolivas b015348d 2012-04-29T10:08:12 Shorten stale share messages slightly.
Con Kolivas 7233890d 2012-04-29T10:03:01 Protect the freeing of current_hash under mutex_lock to prevent racing on it when set_curblock is hit concurrently.
Con Kolivas 53c22551 2012-04-29T09:12:23 Change default behaviour to submitting stale, removing the --submit-stale option and adding a --no-submit-stale option.
Con Kolivas f9123f05 2012-04-29T08:55:59 Make sure to start the getwork and submit threads when a pool is added on the fly.
Con Kolivas 5ad942d1 2012-04-29T00:56:23 Faster hardware can easily outstrip the speed we can get work and submit shares when using only one connection per pool. Test the queued list to see if any get/submits are already queued and if they are, start recruiting extra connections by generating new threads. This allows us to reuse network connections at low loads but recuit new open connections as they're needed, so that cgminer can scale to hardware of any size.
Con Kolivas 628ac199 2012-04-28T14:00:34 Get rid of confusing "waiting on fresh work" part of longpoll message to minimise log width and add pool number to longpoll work restart message.
Con Kolivas 972860c0 2012-04-28T13:36:27 Remove unused variable.
Con Kolivas 3362a2a4 2012-04-28T13:31:27 Give a longpoll message for any longpoll that detects a block change, primary or backup, and also display which pool it was.
Con Kolivas e1cf5029 2012-04-28T12:22:23 Decrease utility display to one decimal place.
Con Kolivas 7b370bb2 2012-04-28T09:19:32 Small cosmetic output alignment.
Con Kolivas 669b0ded 2012-04-28T08:39:06 Add pool number to stale share message.
Con Kolivas 03fab3f4 2012-04-28T00:16:34 Remove thread id display from rejected shares as well.
Con Kolivas 86e94edb 2012-04-27T15:47:21 Set have_longpoll to true when there is at least one pool with longpoll.
Con Kolivas 0365878a 2012-04-27T15:30:42 Don't display the thread ID since it adds no useful information over the device number.
Con Kolivas 08c72108 2012-04-27T15:29:31 Don't display the first 8 bytes of a share since they will always be zero at >= 1 difficulty.
Con Kolivas 501e35a0 2012-04-27T14:02:29 work->longpoll is reset across test_work_current so we need to recheck what pool it belongs to.
Con Kolivas 03abb704 2012-04-27T13:59:43 Use longpolls from backup pools with failover-only enabled just to check for block changes, but don't use them as work.
Con Kolivas 1ab318d0 2012-04-27T13:11:19 Start longpoll only after we have tried to extract the longpoll URL.
Con Kolivas b1c273e7 2012-04-27T12:54:29 Check for submitold flag on resubmit of shares, and give different message for stale shares on retry.
Con Kolivas 5ece966f 2012-04-27T12:47:13 Check for submitold before submitstale.
Con Kolivas ed718b2b 2012-04-27T12:28:51 Don't force fresh curl connections on anything but longpoll threads.
Con Kolivas eda38299 2012-04-27T11:58:47 Create one longpoll thread per pool, using backup pools for those pools that don't have longpoll. Use the work created from the longpoll return only if we don't have failover-enabled, and only flag the work as a longpoll if it is the current pool. This will work around the problem of trying to restart the single longpoll thread on pool changes that was leading to race conditions. It will also have less work restarts from the multiple longpolls received from different pools.
Con Kolivas e502fde5 2012-04-27T11:13:52 Remove the ability to disable longpoll. It is not a useful feature and will conflict with planned changes to longpoll code.
Con Kolivas 8e84abfc 2012-04-26T17:36:19 Merge pull request #184 from luke-jr/bugfix_const_warning Bugfix: Make initial_args a const char** to satisfy exec argument type warning (MinGW)
Con Kolivas 8d8f4ff8 2012-04-26T16:38:17 Merge pull request #182 from kanoi/master api.c 'devdetails' list static details of devices + ZTex ++
Luke Dashjr 90c5ef1f 2012-04-26T14:55:03 Bugfix: Make initial_args a const char** to satisfy exec argument type warning (on Windows only)
Con Kolivas 4cd97326 2012-04-26T23:29:21 Create discrete persistent submit and get work threads per pool, thus allowing all submitworks belonging to the same pool to reuse the same curl handle, and all getworks to reuse their own handle. Use separate handles for submission to not make getwork potentially delay share submission which is time critical. This will allow much more reusing of persistent connections instead of opening new ones which can flood routers. This mandated a rework of the extra longpoll support (for when pools are switched) and this is managed by restarting longpoll cleanly and waiting for a thread join.
Kano b3ac249e 2012-04-26T00:20:16 cgminer.c sharelog code consistency and compile warning fix
Luke Dashjr 4648330c 2012-04-24T21:46:48 Support for share logging
Con Kolivas f5f089f5 2012-04-23T17:40:47 Add a --gpu-map option which will allow arbitrarily mapping ADL devices to OpenCL devices for instances where association by enumeration alone fails.
Con Kolivas 99331991 2012-04-23T09:53:40 Increase upper limit on number of extra items to queue as some FPGA code can't yet reliably keep many devices busy.
Con Kolivas d6edd07c 2012-04-22T21:09:36 Display configuration file information when -c option is passed and only when file exists on loading default config file.
Con Kolivas 6ffdbc3a 2012-04-22T20:50:50 Display configuration file loaded, if any, and debug output if configuration file parsing failed.
Con Kolivas cfe3eb0b 2012-04-22T10:43:31 Merge branch 'master' into ztex Conflicts: configure.ac
Luke Dashjr 0d920697 2012-04-21T03:32:57 Merge branch 'master' into align_temps Conflicts: cgminer.c
Luke Dashjr 657716e5 2012-04-21T02:52:20 Merge branch 'master' into ztex
Con Kolivas 7b947882 2012-04-20T23:41:46 Merge pull request #157 from luke-jr/unify_drivers Unify drivers as driver-*.c and add driver name to API
Con Kolivas 86671f80 2012-04-21T16:39:14 Make the status window and log window as large as can fit on startup, rechecking to see if it can be enlarged after the fact. This allows any number of devices to be displayed provided the window is made long enough without corrupting the output.
Luke Dashjr b8778839 2012-04-21T02:36:19 Merge branch 'master' into unify_drivers Conflicts: cgminer.c
Con Kolivas c7cc2e42 2012-04-21T14:03:41 Merge branch 'master' into ztex
Con Kolivas e08936c3 2012-04-20T15:00:39 Merge pull request #166 from kanoi/master api.c escape required characters in return strings + pools returns the username
Kano 2e1d2017 2012-04-21T03:15:41 API add removepool like the screen interface
Con Kolivas 46faefbe 2012-04-20T21:20:03 Merge branch 'ztex-master' of https://github.com/nelisky/cgminer into ztex
ckolivas b80d22b9 2012-04-20T14:24:58 Increase maximum number of displayed devices to 14, beyond which the screen becomes corrupted.
nelisky 7fe7d18d 2012-04-16T14:14:52 removing unused libusb_context pointer
nelisky 608a5205 2012-03-31T13:13:53 Tweaks to make ztex work on a tp-link router with openwrt
nelisky c3bda2b7 2012-03-14T10:34:29 adding path to libusb include
nelisky 99a188f9 2012-03-11T00:49:25 initial commit with some support for ztex 1.15x board. This version is just a rough draft, but it does alredy mine. Conflicts: cgminer.c configure.ac
Con Kolivas 7c6090fb 2012-04-14T15:48:31 Cache the initial arguments passed to cgminer and implement an attempted restart option from the settings menu.
Con Kolivas f3e43056 2012-04-14T14:11:58 Disable per-device status lines when there are more than 8 devices since screen output will be corrupted, enumerating them to the log output instead at startup.
Con Kolivas dceaa71a 2012-04-14T00:56:31 Make sure to disable devices with any status not being DEV_ENABLED to ensure that thermal cutoff code works as it was setting the status to DEV_RECOVER.
Con Kolivas 0a4a2d9d 2012-03-31T14:39:40 Damping small changes in hashrate so dramatically has the tendency to always make the hashrate underread so go back to gentle damping instead.
Con Kolivas c99c09d3 2012-03-30T06:25:38 Merge pull request #161 from kanoi/master When using '-m' on linux, send the forked process a SIGTERM on exit
Con Kolivas 7f64adc4 2012-03-30T06:25:07 Merge pull request #160 from luke-jr/bugfix_realquiet_2 Bugfix: Skip enabling curses, if --real-quiet or listing devices
Kano f9af5acf 2012-03-30T14:57:18 When using '-m' on linux, send the forked process a SIGTERM on exit
Con Kolivas 88ff55e7 2012-03-29T21:02:42 Use a time constant 0.63 for when large changes in hashrate are detected to damp change in case the large change is an aliasing artefact instead of a real change.
Con Kolivas a1879c80 2012-03-29T20:53:16 Only increment stale counter if the detected stales are discarded.
ckolivas 35de9d1e 2012-03-29T09:35:48 Use slightly more damping on the decay time function in the never-ending quest to smooth off the hashmeter.
Con Kolivas eb4233d5 2012-03-28T04:26:20 Merge pull request #156 from luke-jr/ignore_redundant Ignore redundant-with-build options
Con Kolivas 7458927f 2012-03-28T04:25:54 Merge pull request #155 from luke-jr/no_curses Make curses TUI support optional at compile-time.
Con Kolivas 2beb3500 2012-03-28T04:24:41 Merge pull request #153 from kanoi/master Add API support for Icarus and Bitforce + Icarus fixes ++
Con Kolivas ef1eafa4 2012-03-28T21:58:04 Provide locking around updates of cgpu hashrates as well to prevent multiple threads accessing data fields on the same device.
Con Kolivas fa5e0675 2012-03-28T20:32:49 Display the beginning of the new block in verbose mode in the logs.
Kano eeec9809 2012-03-23T01:50:45 code changes for supporting a simple device history
Luke Dashjr f05a319e 2012-03-18T21:06:47 CGPU API for device names
Luke Dashjr 303dbf46 2012-03-18T20:09:03 Abstract add_cgpu function, to handle device id numbering and devices array
Luke Dashjr c739d0dc 2012-03-13T13:11:55 Merge branch 'bugfix_realquiet' into bugfix_realquiet_2 Conflicts: cgminer.c
Luke Dashjr 03c94c02 2012-03-13T13:10:31 Bugfix: Skip enabling curses, if --real-quiet or listing devices
Luke Dashjr e131dfab 2012-03-13T12:18:23 Unify drivers as driver-*.c and add driver name to API
Luke Dashjr b6ae200d 2012-03-13T09:11:23 Ignore reduntant-with-build options --disable-gpu, --no-adl, and --no-restart
Luke Dashjr ed8382c8 2012-03-12T14:56:05 Make curses TUI support optional at compile-time.
Luke Dashjr 3a003b9a 2012-02-25T14:43:28 Bugfix: Allow enabling CPU even without OpenCL support
Con Kolivas daf1eff1 2012-02-26T00:46:19 Change failed-to-mine number of requested shares messge to avoid segfault on recursive calling of quit().
Con Kolivas 0412ac7c 2012-02-24T14:03:04 Only send out extra longpoll requests if we want longpolls.
Con Kolivas dbb04a69 2012-02-24T13:34:00 Increase the speed of hashrate adaptation.
Con Kolivas de944dfd 2012-02-24T14:03:04 Only send out extra longpoll requests if we want longpolls.
Con Kolivas 50a33aa6 2012-02-23T20:43:18 Consider extra longpoll work items as staged_extra so as to make sure we queue more work if queueing regular work items as longpolls.
Con Kolivas 553d53fc 2012-02-23T17:58:06 Reset all hash counters at the same time as resetting start times to get accurate hashrates on exiting which is mandatory for benchmarking.
Con Kolivas 88a9d83e 2012-02-23T17:54:27 Report thread in during getting of work in benchmark mode.
Con Kolivas 49ba3962 2012-02-23T17:52:01 Report thread out before it starts to avoid being flagged as sick when waiting for the first work item.