main.c


Log

Author Commit Date CI Message
ckolivas 9eb3ac42 2012-01-18T09:42:57 Merge branch 'device_refactor' of https://github.com/luke-jr/cgminer into fpga
Luke Dashjr b9d197de 2012-01-17T16:29:01 Refactor the CPU scanhash_* functions to use a common API. Fixes bugs. - Before, some returned bool, and others returned int (which was then turned into a bool with a comparison); now, everything returns a bool - Before, some set hashes_done to nonce - 1 when a share was found and others set it to nonce + 1 or 2. This caused some algorithms to scan/submit shares twice with the new cpu_scanhash function. Now, it has all been replaced with last_nonce, which is set to the final nonce checked by the scanhash_* func. - VIA needs the full data, and cannot use midstate. All the others were expecting midstate and data+64 for their parameters. Now, we pass midstate and the full data pointer, and let the scanhash_* function choose which to use.
Con Kolivas 5d6159f5 2012-01-17T18:26:35 Don't consider a pool lagging if a request has only just been filed. This should decrease the false positives for "pool not providing work fast enough".
Con Kolivas 12afb479 2012-01-17T17:38:59 Invalidating work after longpoll made hash_pop return no work giving a false positive for dead pool. Rework hash_pop to retry while finds no staged work until the abstime timeout really expires.
Luke Dashjr a4d1fe1e 2012-01-07T02:56:27 Refactor miner_thread to be common code for any kind of device This expands on the device API, by taking the actual main thread out of the device's code, and calling the API only for specific tasks. This brings various changes that were made to the GPU thread code into the CPU miner. It also fixes a bug where shares found on old GPU work were discarded when it switched to a new work.
Luke Dashjr 845961af 2012-01-05T19:26:01 Refactor to abstract device-specific code
Con Kolivas 95522262 2012-01-05T14:32:11 Merge pull request #66 from kanoi/master If api-description is specified, save it when writing the config file
Con Kolivas 17e8d60b 2012-01-06T09:21:11 Adjust utility width to be constant maximum as well.
Steve Brecher 52d134ce 2012-01-05T11:44:26 Add percent signs to reject ratio outputs
Con Kolivas ec8501a7 2012-01-05T21:45:46 Should the donation pool fail, don't make the fallover pool behave as though the primary pool is lagging.
ckolivas 59c29fc6 2012-01-05T09:37:51 Use an alternative pool should the donation getwork fail.
Kano 7187dfa0 2012-01-01T23:55:23 If api-description is specified, save it when writing the config file
Con Kolivas 743d81b3 2012-01-01T20:25:04 Adjust column width of A/R/HW to be the maximum of any device and align them.
Kano 9bf0ad18 2012-01-01T16:07:48 Display pool in summary if only 1 pool
Con Kolivas d56e5ae6 2012-01-01T14:40:31 Force fresh curl connections on any detected rpc failure in case of dead persistent connections..
Con Kolivas 40ea56ee 2012-01-01T09:03:18 Continue attempting to restart every minute whether a GPU is considered sick or dead.
Con Kolivas c0775734 2012-01-01T08:47:07 Again do not attempt to restart a hung device with the every minute attempted restart.
Con Kolivas c7c838d7 2011-12-30T11:30:14 Give warning with donor pool so as to explain why there may be a slow startup.
Con Kolivas d656c14e 2011-12-29T13:42:49 Don't give pool slow warning if it is the donation pool.
Kano 5033dcd3 2011-12-27T18:33:49 fix test/set of thr->pth to also work in windows
Con Kolivas 9f41f2f3 2011-12-27T14:53:14 Try to align device outputs in curses output.
Con Kolivas 2257b502 2011-12-27T11:37:30 Simplify longpoll changeover to just check which pool it should grab its next longpoll from. This should prevent locking hangs and thread cancellation crashes.
Con Kolivas 5e2e2f28 2011-12-27T10:35:53 Only use GPU management menu item if GPU threads exist.
Con Kolivas a51514d9 2011-12-27T10:30:04 White space cleanup.
Con Kolivas eee66589 2011-12-27T10:24:09 Save config options for GPUs only if there are GPU devices.
Con Kolivas 291f1749 2011-12-27T09:38:57 Ensure the correct pool information goes with the longpoll work item.
Con Kolivas ae786202 2011-12-27T09:31:21 Show which pool is unresponsive on startup.
Con Kolivas c786ac3b 2011-12-26T12:54:06 Prevent crash from statline dereference if cgminer is quit before setting up fully.
Con Kolivas acf88e0d 2011-12-24T23:36:41 Kill off the longpoll thread in kill_work only if have_longpoll is true.
Con Kolivas 8c066c42 2011-12-24T23:26:41 If have_longpoll is enabled, then make it mandatory the longpoll thread is killed from the outside, avoiding the race of trying to kill off a longpoll thread that has potentially exited already.
Con Kolivas 19d5a197 2011-12-23T15:50:00 Merge pull request #62 from kanoi/master Cleanup API thread if it exits early
Kano d80e0ef4 2011-12-24T10:45:45 Cleanup API thread if it exits early
Con Kolivas 9d36ee9b 2011-12-24T09:33:30 Do not add blank lines when there are less cpu threads enabled than processors.
Con Kolivas 78c89dc7 2011-12-24T09:22:55 Move longpoll with changes to current active pool, selecting most suitable source for longpoll, or using any backup pool that has longpoll. Actively stop longpoll if we already have longpoll running and have initiated a longpoll restart. Make the longpoll activation notification warning level to make the switch visible. Change lp_url to alloca to not lose malloced ram.
Con Kolivas e75c8ec8 2011-12-24T08:50:07 Fix for non-adl configuration files.
Kano f32a0725 2011-12-20T16:22:18 DOC related updates
Kano 50a08922 2011-12-04T00:24:26 2.0.8x Full GPU stats, descriptive field names and --api-description
Kano 45ebf2c5 2011-11-24T20:41:31 Fix threading issues and bugs
Kano d234b857 2011-11-24T12:59:30 API v0.2 Added GPU commands and improved messages
Kano df3fad3d 2011-11-23T22:22:10 Add API options for port and listen mode
Kano 49532277 2011-11-23T17:01:45 Add summary command
Kano 23580566 2011-11-23T14:35:49 API v0.1
Con Kolivas 0638155c 2011-11-11T19:39:36 Don't load the default config if a config file is specified on the command line.
Con Kolivas a70629a7 2011-11-01T15:19:26 Make longpoll do a mandatory flushing of all work even if the block hasn't changed, thus supporting longpoll initiated work change of any sort and merged mining.
Forrest Voight e01d6941 2011-10-23T23:55:17 Byteswap computed hash in hashtest so it can be correctly checked
Con Kolivas 8c63061e 2011-10-23T20:50:52 Allow a fixed speed difference between memory and GPU clock speed that will change memory speed when GPU speed is changed in autotune mode.
Con Kolivas 9a0b7096 2011-10-17T13:51:40 Update documentation about new configuration file with an example file.
Con Kolivas 6d004ddf 2011-10-17T13:25:57 Write unix configuration to .cgminer/cgminer.conf by default and prompt to overwrite if given a filename from the menu that exists.
Con Kolivas 09f6736a 2011-10-17T12:27:41 Style cleanups.
Con Kolivas 31d3af02 2011-10-16T20:04:45 Support new configuration file format courtesy of Chris Savery which can write the config file from the menu and will load it on startup.
Con Kolivas 3ba86c49 2011-10-15T14:55:51 Cosmetic fixes.
Luke Dashjr e8720b90 2011-10-09T00:05:48 Support work without midstate or hash1, which are deprecated in bitcoind 0.5+
Con Kolivas f9308f8f 2011-10-09T13:21:06 Disable work division for CPU mining which can lead to repeated work being performed.
Con Kolivas 81418d62 2011-10-09T13:15:29 Update displayed messages.
Con Kolivas 27b05db4 2011-10-09T12:59:45 Use ADL activity report to tell us if a sick GPU is still busy suggesting it is hard hung and do not attempt to restart it.
Con Kolivas a37b827e 2011-10-09T12:37:56 Display the total solved blocks on exit (LOL if you're lucky).
Con Kolivas a2072d73 2011-10-09T12:22:32 Merge branch 'altivec'
Con Kolivas 5133cf5b 2011-10-09T12:22:00 Add altivec 4 way support courtesy of Gilles Risch.
Con Kolivas 6cd906a4 2011-10-09T11:19:40 Properly check shares against target difficulty.
Con Kolivas 6dc10efa 2011-10-06T13:13:19 Don't try to build adl features without having adl.
Con Kolivas 3e527c6a 2011-09-30T17:15:40 Retry pools after a delay of 15 seconds if none can be contacted on startup unless a key is pressed.
Con Kolivas 9087345f 2011-09-29T10:27:32 Expire shares as stale with a separate timeout from the scantime, defaulting to 120 seconds.
Con Kolivas ffc88ef0 2011-09-29T10:08:30 Enable 100% donation by default. This reverts commit 9e9d25c7bad94116c50bb7d2225510930d092f5e.
Con Kolivas ac0d3030 2011-09-29T09:46:32 Don't make donation work interfere with block change detection allowing donation to work regardless of the block chain we're mining on.
Con Kolivas 9e9d25c7 2011-09-29T09:39:29 Enable 0.5% donation by default.
Con Kolivas f6d35a70 2011-09-27T17:52:54 Must initialise the donorpool mutex or it fails on windows.
Con Kolivas d2db7be5 2011-09-27T14:54:36 Roll any work we can even if other requests are staged.
Con Kolivas 75e21434 2011-09-27T14:36:18 Display per device intensity in various status lines.
Con Kolivas 1dc6e64b 2011-09-27T14:25:49 Set dynamic to false for all devices given separate args...
Con Kolivas 35a490b9 2011-09-27T14:25:02 Explicitly disable dynamic mode when an intensity is set.
Con Kolivas 648c6b7c 2011-09-27T14:17:52 Intensity is signed integer, fix its display.
Con Kolivas 5a4dabe2 2011-09-27T13:40:03 Add message about donation to startup.
Con Kolivas 47be27e8 2011-09-27T11:22:43 Make longpoll retry indefinitely to restart as well, or limited by opt_retries.
Con Kolivas 28796de7 2011-09-27T11:14:43 Merge https://github.com/geekmug/cgminer into gitmug
Con Kolivas 4128b954 2011-09-26T18:49:15 Add a --donation feature which reads a url/userpass from the author's site and contributes a percentage of getworks to the author, but default to off.
Scott Dial 19911e57 2011-09-26T20:16:24 Correct some memory management issues.
Scott Dial 760b0064 2011-09-26T19:58:47 Don't mess with GPU stuff if we don't have them.
Con Kolivas 21c2bc46 2011-09-26T15:24:20 Make it possible to set the intensity on a per-card basis, dynamic or static values.
Con Kolivas 5b40f979 2011-09-26T10:47:24 Make sure we do not attempt to adl manage devices we have explicitly disabled.
Con Kolivas 7c26948e 2011-09-23T20:14:19 Merge pull request #50 from kanoi/kano Hash is 32 bytes (64 nibbles)
Kano afe03c63 2011-09-24T02:20:21 Hash is 32 bytes (64 nibbles)
Con Kolivas 8759bc13 2011-09-23T10:59:55 Hard code the watchdog interval to 3 seconds in case log interval is greatly different.
Con Kolivas 813aee38 2011-09-23T10:22:06 Show menu again after enable, disable and restart GPU.
Con Kolivas 20ddda10 2011-09-23T10:19:24 Autoselect a GPU from the menu if it's the only device.
Con Kolivas c04abf5c 2011-09-23T09:44:09 Include polarssl implementation of sha256 (sha2) and remove dependency on openssl.
Kano 037e8ac8 2011-09-21T21:48:23 Change Accept/Reject message to show hash and BLOCK notification
Kano ba14a670 2011-09-21T21:45:24 Remove EOL spaces from stderr and curses
Kano 8ecd15a6 2011-09-20T16:19:21 Add BLOCK! notification and remove end of line blanks when not needed
Con Kolivas 9696b4d6 2011-09-18T23:17:50 Get rid of the convoluted way we detect whether LP discovered the new block and just use the work retrieved by the LP to know.
Kano 625e7a64 2011-09-18T18:55:36 Fix tabs
Kano 37b017fd 2011-09-18T15:10:12 Show hash (instead of nonce) in Accept/Reject messages
Con Kolivas b8ea0dd1 2011-09-17T13:23:58 Update curses logging to allow LOG_WARNING and LOG_ERR messages to still go through while within the menu, and drop share message to LOG_NOTICE.
Con Kolivas 8566ed44 2011-09-15T20:05:22 Just keep whatever longpoll we have if it's working instead of risking the stop/start dereference problem.
Con Kolivas ae6fe965 2011-09-15T17:37:02 Revert "Restart longpoll under lock when we'll be reusing it on pool switch to prevent derefs." This reverts commit 2cae5c1dc3884deb35430cf6af4d192666ac01c4. Gets stuck. Needs more thought.
Con Kolivas 2cae5c1d 2011-09-15T14:51:04 Restart longpoll under lock when we'll be reusing it on pool switch to prevent derefs.
Con Kolivas 8e2becc1 2011-09-15T11:45:24 Change pth from being a pointer as we can dereference if we're unlucky on stopping longpoll.
Con Kolivas 833e020d 2011-09-15T10:33:23 Standardise the way all non-mining threads are destroyed to make sure we can safely cancel them, freeing ram and NULLifying pointers.
Con Kolivas e1c72352 2011-09-14T23:15:42 Get the current pool priority under lock to avoid dereferencing.
Con Kolivas fc427913 2011-09-14T21:48:53 Use the longpoll provided work to test_work_current since we know it's almost certainly from a new block even though we may check it later again.
Con Kolivas 863488e3 2011-09-11T12:32:36 Display fan percentage on devices that only support reporting percent and not RPM.