miner.h


Log

Author Commit Date CI Message
Con Kolivas 06fd9c4a 2012-01-26T23:27:10 Detect dual GPU cards by iterating through all GPUs, finding ones without fanspeed and matching twins with fanspeed one bus ID apart.
Kano 63e31b4d 2012-01-26T14:00:52 Move intensity range values into miner.h
Con Kolivas 9549dacf 2012-01-25T01:19:58 Detect dual GPU cards via the indirect information of - 1st card has a fan controller. 2nd card does not have a fan controller, cards share the same device name, and are one bus ID apart. Use this information to create paired devices, displaying the fan speed on both devices and using the hottest temperature from either GPU to control the overall fanspeed.
Luke Dashjr 4ae7baf0 2012-01-24T01:23:31 BitForce: Need to use CreateFile and low-level (descriptor-based) C APIs on Windows, since fopen doesn't work with serial ports
Con Kolivas 2d29cdb6 2012-01-23T09:25:53 Read off lpThermalControllerInfo from each ADL device.
Kano ec2c0b78 2012-01-22T18:24:55 Add API commands: config, switchpool, gpu settings, save
Con Kolivas e15d57d7 2012-01-22T09:36:21 Implement socks4 proxy support.
Con Kolivas 2d5bbc77 2012-01-22T01:40:29 Provide nanosleep() equivalent for windows.
Con Kolivas 1b0b7e4a 2012-01-20T22:02:07 Merge pull request #78 from luke-jr/bugfix_adl Bugfix: Iterate over devices rather than threads for watchdog (and ADL)
Luke Dashjr 9a0bcc88 2012-01-20T17:29:52 Bugfix: Iterate over devices rather than threads for watchdog (and ADL)
Con Kolivas 5179d224 2012-01-20T15:36:42 Introduce a --net-delay option which guarantees at least 250ms between any networking requests to not overload slow routers.
Con Kolivas 9840c12e 2012-01-20T14:47:17 Generalise locking init code.
Luke Dashjr 3cb72218 2012-01-19T21:57:08 Restore old ugly inconsistent display of ADL information before the standard info
Luke Dashjr 5dfc8b69 2012-01-08T19:56:15 BitForce FPGA support cgminer will scan for and mine BitForce FPGAs on USB ports by providing the new --scan-serial <device> option, or autodetect them by searching /dev/serial/by-id for *BitFORCE_SHA256*
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.
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
Kano 5033dcd3 2011-12-27T18:33:49 fix test/set of thr->pth to also work in windows
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 b69aa234 2011-12-26T10:49:27 Use control_lock to protect thr->pth for thread creation/destruction.
Kano 50a08922 2011-12-04T00:24:26 2.0.8x Full GPU stats, descriptive field names and --api-description
Kano 45068ced 2011-11-29T11:07:27 Version 2.0.8w (windows changes)
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 bbe1702d 2011-11-23T16:25:13 Add quit command
Kano 23580566 2011-11-23T14:35:49 API v0.1
Con Kolivas b0bfd816 2011-11-11T19:35:41 Don't build VIA on apple since -a auto bombs instead of gracefully ignoring VIA failing.
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.
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 5133cf5b 2011-10-09T12:22:00 Add altivec 4 way support courtesy of Gilles Risch.
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 c54b0870 2011-09-26T19:33:28 Assiging the bswap_{16,32,64} macros to __builtin_bswap{16,32,64}.
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 0ae3f718 2011-09-23T10:45:43 Check last temperature we reached and don't change fan speed if it's already correcting.
Kano ba14a670 2011-09-21T21:45:24 Remove EOL spaces from stderr and curses
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 67fe6ab7 2011-09-16T10:26:25 Don't both with adapter speed set as it has no effect on mining speed.
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 dff1a81d 2011-09-11T11:25:28 Use a re-entrant value to store what fanspeed we're trying to set in case the card doesn't support small changes. Force it to a multiple of 10% if it fails on trying to speed up the fan.
Con Kolivas d5fe2cfd 2011-09-11T10:48:39 Flag devices that have never started and don't allow enabling of devices without restarting them.
Con Kolivas 1917643d 2011-09-09T10:19:01 Do away with the increasingly confusing and irrelevant total queued and efficiency measures per device.
Con Kolivas 6c8341f1 2011-09-08T14:44:14 Define max gpudevices in one macro.
Con Kolivas 9b5cd618 2011-09-08T13:04:39 Implement accepting a range of engine speeds as well to allow a lower limit to be specified on the command line.
Con Kolivas 3997f308 2011-09-07T10:43:26 Add a thermal cutoff option as well and set it to 95 degrees by default.
Con Kolivas 058303bc 2011-09-07T10:00:10 Only reset values on exiting if we've ever modified them.
Con Kolivas b8be1e6c 2011-09-07T09:17:51 Ignore whether the display is active or not since only display enabled devices work this way, and we skip over repeat entries anwyay.
Con Kolivas 2053de6d 2011-09-06T10:11:34 Add the directory name from the arguments cgminer was called from as well to allow it running from a relative pathname.
Con Kolivas 5fc56a45 2011-09-05T09:36:43 Force the speed to high on startup and restore it to whatever the setting was on exit.
Con Kolivas 47f1a759 2011-09-04T23:23:31 Implement setting the GPU powertune value of all devices or each device as a comma separated value.
Con Kolivas bd292258 2011-09-04T22:56:19 Add support for monitoring powertune setting.
Con Kolivas 3a5663ca 2011-09-04T22:25:31 Implement setting the GPU fan speed of all devices or each device as a comma separated value.
Con Kolivas 8ae273c5 2011-09-04T22:08:42 Implement setting the GPU voltage of all devices or each device as a comma separated value.
Con Kolivas 54bc30ce 2011-09-04T22:01:58 Implement setting the GPU memory clock speed of all devices or each device as a comma separated value.
Con Kolivas ec8808d0 2011-09-04T21:55:06 Implement setting the GPU engine clock speed of all devices or each device as a comma separated value.
Con Kolivas e9b5885e 2011-09-03T22:30:11 Add a gpu autotune option which adjusts GPU speed to maintain a target temperature within the bounds of the default GPU speed and any overclocking set.
Con Kolivas dcc97e45 2011-09-03T15:46:57 Add an --auto-fan command line option to allow all GPUs to have autofan enabled from startup.
Con Kolivas 495adcbf 2011-09-03T15:33:53 Implement auto fanspeed adjustment to maintain a target temperature and fanspeed below 85%, with an overheat check that will speed the fan up to 100%.
Con Kolivas 35ace463 2011-09-03T13:02:21 Enable changing of engine clock setting on the fly.
Con Kolivas d57cd919 2011-09-03T10:53:35 Implement ATI ADL support for GPU parameter monitoring now and setting later (temp, fan, clocks etc.). Check for the presence of the ADL header files in ADL_SDK. Import adl_functions.h from amd overdrive ctrl. Implement a setup function that tries to detect GPUs that support the ADL and link in the parameters into the gpus struct. Put a summary of monitoring information from the GPU menu.
Con Kolivas 063efb19 2011-09-02T10:37:00 Rename localgen occasions to getwork fail occasions since localgen is unrelated now.
Con Kolivas 84965341 2011-09-01T13:19:51 Add start and stop time scheduling for regular time of day running or once off start/stop options.
Con Kolivas a593afdb 2011-08-31T13:23:36 Use the curses_lock to protect the curses_active variable and test it under lock.
Con Kolivas 4969162c 2011-08-29T10:12:34 Check for SSE2 before trying to build 32 bit SSE2 assembly version. Prevents build failure when yasm is installed but -msse2 is not specified.
Con Kolivas 3d5f5554 2011-08-25T14:42:03 Allow a custom kernel path to be entered on the command line.
Con Kolivas 7dc3db23 2011-08-25T11:19:40 Implement SSE2 32 bit assembly algorithm as well.
Con Kolivas dbf0a136 2011-08-24T21:50:04 Use the new hashes directly for counts instead of the fragile counters currently in use.
Con Kolivas 666fcc3f 2011-08-24T08:06:15 Move staged threads to hashes so we can sort them by time.
Con Kolivas ced4a9ac 2011-08-23T11:40:48 Clean up the pool switching to not be dependent on whether the work can roll or not by setting a lagging flag and then the idle flag.
Con Kolivas 324d849b 2011-08-20T23:03:49 Attempt to restart a GPU once every minute while it's sick. Don't kill off the reinit thread if it fails to init a GPU but returns safely. Only declare a GPU dead if there's been no sign of activity from the reinit thread for 10 mins.
Znort 987 e49bfbf2 2011-08-18T12:17:10 Add per-device statics log output
Phateus d15d225a 2011-08-16T23:19:46 Changed phatk version to 2.2
Con Kolivas 1e77f044 2011-08-17T12:43:39 Clean up the longpoll management to ensure the right paths go to the right pool and display whether we're connected to LP or not in the status line.
Con Kolivas 4e48561a 2011-08-15T22:21:17 Rework the last-initialised time displayed.
Con Kolivas b1289a01 2011-08-15T20:26:46 Revert "Move the non cl_ variables into the cgpu info struct to allow creating a new cl state on reinit, preserving known GPU variables." This reverts commit 28880d0dc7c601ee4479921502b66e913e38e36d.
Con Kolivas 7c50bb02 2011-08-15T20:26:27 Revert "Display last initialised time in gpu management info." This reverts commit 177e07aed32e6b38f615f52d3243620625ff93e0.
Con Kolivas 50504ef9 2011-08-14T13:57:58 If a work item has had any mining done on it, don't consider it discarded work.
Con Kolivas 639d38fb 2011-08-14T07:54:45 Revert "Make sure to give work items a starting time only once when they're staged." This reverts commit 626ae10d7c90c8a21897343758e5dd0b00016950. Failed to address all work items.
Con Kolivas 626ae10d 2011-08-14T02:33:55 Make sure to give work items a starting time only once when they're staged.
Con Kolivas d6dd5d70 2011-08-14T01:54:47 Test each work item to see if it can be rolled instead of per-pool and roll whenever possible, adhering to the 60 second timeout.
Con Kolivas 177e07ae 2011-08-12T14:25:44 Display last initialised time in gpu management info.
Con Kolivas 28880d0d 2011-08-13T20:54:20 Move the non cl_ variables into the cgpu info struct to allow creating a new cl state on reinit, preserving known GPU variables. Create a new context from scratch in initCQ in case something was corrupted to maximise our chance of succesfully creating a new worker thread.
Con Kolivas 947a74bf 2011-07-30T01:23:17 Differentiate thread failure from GPU failure by declaring a GPU sick first and trying to restart the thread without re-initialising the card. If that fails, then try once more at ten minutes and declare it dead. This should prevent an attempted re-initialising of the GPU from taking out other GPUs.
Con Kolivas 38037606 2011-07-29T11:11:42 Reimplement the per-thread getwork count with proper accounting at get_work().
Con Kolivas 0fe22d8d 2011-07-29T11:02:47 Revert "Only update the thread getwork queue count if it actually results in a getwork request from the server." This reverts commit 2e607d44f2baa8e8f1156e7bd074128e1e0e8eeb. The count looks far too difficult to add up with this change since many are queued generically.
Con Kolivas 2e607d44 2011-07-29T10:39:58 Only update the thread getwork queue count if it actually results in a getwork request from the server.
Con Kolivas 0006eb2d 2011-07-28T10:36:48 Make the "quiet" mode still update the status and display errors, and add a new --real-quiet option which disables all output and can be set once while running.
Con Kolivas e82e3902 2011-07-27T16:40:52 If work has been cloned it is already at the head of the list and when being reinserted into the queue it should be placed back at the head of the list.
Con Kolivas 98f609b5 2011-07-27T10:31:44 Sanity check to prove locking.
Con Kolivas 1536e085 2011-07-26T20:48:05 Increase efficiency of slow mining threads such as CPU miners dramatically. Do this by detecting which threads cannot complete searching a work item within the scantime and then divide up a work item into multiple smaller work items. Detect the age of the work items and if they've been cloned before to prevent doing the same work over. If the work is too old to be divided, then see if it can be time rolled and do that to generate work. This dramatically decreases the number of queued work items from a pool leading to higher overall efficiency (but the same hashrate and share submission rate).
Con Kolivas fa17f034 2011-07-26T11:58:45 Implement much more accurate rolling statistics per thread and per gpu and improve accuracy of rolling displayed values.
Con Kolivas 7707ed4d 2011-07-26T10:26:03 Add a menu to manage GPUs on the fly allowing you to enable/disable GPUs or try restarting them. Keep track of which GPUs are alive versus enabled. Start threads for devices that are even disabled, but don't allow them to start working.
Con Kolivas 020cf7d6 2011-07-23T16:19:51 Build support in for all SSE if possible and only set the default according to machine capabilities.
Ycros a150140e 2011-07-23T16:00:49 Merge branch 'cgminer' of git://github.com/ckolivas/cgminer into cgminer
Con Kolivas a9e1a255 2011-07-23T15:15:46 Make it possible to select the choice of kernel on the command line.
Con Kolivas 116a9dc0 2011-07-23T14:17:25 Update phatk kernel to one with new parameters for slightly less overhead again. Make the queue kernel parameters call a function pointer to select phatk or poclbm.
Ycros d37c3fe5 2011-07-22T23:43:26 Win32 threading and longpoll keepalive fixes.