1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-10 14:58:01 +00:00
Commit Graph

569 Commits

Author SHA1 Message Date
Con Kolivas
35a490b90c Explicitly disable dynamic mode when an intensity is set. 2011-09-27 14:25:02 +10:00
Con Kolivas
648c6b7c7c Intensity is signed integer, fix its display. 2011-09-27 14:17:52 +10:00
Con Kolivas
5a4dabe233 Add message about donation to startup. 2011-09-27 13:40:03 +10:00
Con Kolivas
47be27e86b Make longpoll retry indefinitely to restart as well, or limited by opt_retries. 2011-09-27 11:22:43 +10:00
Con Kolivas
28796de72e Merge https://github.com/geekmug/cgminer into gitmug 2011-09-27 11:14:43 +10:00
Con Kolivas
4128b954a6 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. 2011-09-27 11:02:45 +10:00
Scott Dial
19911e57e7 Correct some memory management issues. 2011-09-26 20:16:24 -04:00
Scott Dial
760b0064d6 Don't mess with GPU stuff if we don't have them. 2011-09-26 19:58:47 -04:00
Con Kolivas
21c2bc469f Make it possible to set the intensity on a per-card basis, dynamic or static values. 2011-09-26 15:24:20 +10:00
Con Kolivas
5b40f9795b Make sure we do not attempt to adl manage devices we have explicitly disabled. 2011-09-26 10:47:24 +10:00
Con Kolivas
7c26948e45 Merge pull request #50 from kanoi/kano
Hash is 32 bytes (64 nibbles)
2011-09-23 20:14:19 -07:00
Kano
afe03c6302 Hash is 32 bytes (64 nibbles) 2011-09-24 02:20:21 +10:00
Con Kolivas
8759bc13ab Hard code the watchdog interval to 3 seconds in case log interval is greatly different. 2011-09-23 10:59:55 +10:00
Con Kolivas
813aee385b Show menu again after enable, disable and restart GPU. 2011-09-23 10:22:35 +10:00
Con Kolivas
20ddda10dc Autoselect a GPU from the menu if it's the only device. 2011-09-23 10:19:24 +10:00
Con Kolivas
c04abf5cbe Include polarssl implementation of sha256 (sha2) and remove dependency on openssl. 2011-09-23 09:44:09 +10:00
Kano
037e8ac887 Change Accept/Reject message to show hash and BLOCK notification 2011-09-21 21:48:23 +10:00
Kano
ba14a6705e Remove EOL spaces from stderr and curses 2011-09-21 21:45:24 +10:00
Con Kolivas
9696b4d6ba 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. 2011-09-18 23:18:47 +10:00
Con Kolivas
b8ea0dd194 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. 2011-09-17 13:25:04 +10:00
Con Kolivas
8566ed44d2 Just keep whatever longpoll we have if it's working instead of risking the stop/start dereference problem. 2011-09-15 20:06:09 +10:00
Con Kolivas
ae6fe96593 Revert "Restart longpoll under lock when we'll be reusing it on pool switch to prevent derefs."
This reverts commit 2cae5c1dc3.

Gets stuck. Needs more thought.
2011-09-15 17:37:02 +10:00
Con Kolivas
2cae5c1dc3 Restart longpoll under lock when we'll be reusing it on pool switch to prevent derefs. 2011-09-15 14:51:04 +10:00
Con Kolivas
8e2becc12d Change pth from being a pointer as we can dereference if we're unlucky on stopping longpoll. 2011-09-15 11:46:17 +10:00
Con Kolivas
833e020dfd Standardise the way all non-mining threads are destroyed to make sure we can safely cancel them, freeing ram and NULLifying pointers. 2011-09-15 10:34:59 +10:00
Con Kolivas
e1c7235227 Get the current pool priority under lock to avoid dereferencing. 2011-09-14 23:15:42 +10:00
Con Kolivas
fc4279136e 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. 2011-09-14 21:48:53 +10:00
Con Kolivas
863488e3d0 Display fan percentage on devices that only support reporting percent and not RPM. 2011-09-11 12:32:36 +10:00
Con Kolivas
d42211f09a Missing bracket from output. 2011-09-11 12:01:17 +10:00
Con Kolivas
d5fe2cfd7a Flag devices that have never started and don't allow enabling of devices without restarting them. 2011-09-11 10:48:39 +10:00
Con Kolivas
fa790a4f12 Fix a rare crash in HASH_DEL due to using different mutexes to protect the data. 2011-09-11 10:33:30 +10:00
Con Kolivas
bcba6f83fb Exit cleanly if we abort before various threads are set up or if they no longer exist. 2011-09-09 21:04:16 +10:00
Con Kolivas
ab67b14460 Make RPM 4 characters wide in curses status for neatness. 2011-09-09 12:01:06 +10:00
Con Kolivas
25c77ae85f Only display values in the log if they're supported and standardise device log line printing. 2011-09-09 11:53:45 +10:00
Con Kolivas
1917643dd0 Do away with the increasingly confusing and irrelevant total queued and efficiency measures per device. 2011-09-09 10:19:01 +10:00
Con Kolivas
6c8341f133 Define max gpudevices in one macro. 2011-09-08 14:44:14 +10:00
Con Kolivas
4b43efceca Use a terser device status line to show fan RPM as well when available. 2011-09-08 14:27:32 +10:00
Con Kolivas
f1cf79ae9d With many cards, the GPU summaries can be quite long so use a terse output line when showing them all. 2011-09-08 14:17:05 +10:00
Con Kolivas
e0a9f1aae3 Allow temperature targets to be set on a per-card basis on the command line. 2011-09-08 13:53:10 +10:00
Con Kolivas
b50041c880 Allow per-device fan ranges to be set and use them in auto-fan mode. 2011-09-08 13:29:13 +10:00
Con Kolivas
9b5cd61886 Implement accepting a range of engine speeds as well to allow a lower limit to be specified on the command line. 2011-09-08 13:04:39 +10:00
Con Kolivas
9752704ebe We should be passing a float for the remainder of the vddc values. 2011-09-08 10:57:50 +10:00
Con Kolivas
7ea7f5f324 Allow temperatures greater than 100 degrees. 2011-09-08 10:51:32 +10:00
Con Kolivas
c64c27fa6f Only show longpoll received delayed message at verbose level. 2011-09-08 09:39:32 +10:00
Con Kolivas
01a0d0a745 Add a --no-adl option to disable ADL monitoring and GPU settings. 2011-09-07 20:24:15 +10:00
Con Kolivas
3997f308a0 Add a thermal cutoff option as well and set it to 95 degrees by default. 2011-09-07 10:43:26 +10:00
Con Kolivas
f89c032d2b The ° character is not reliably shown on all platforms so remove it. 2011-09-06 12:04:23 +10:00
Con Kolivas
73e33c0925 Retry also if the decoding of work fails. 2011-09-06 11:30:48 +10:00
Con Kolivas
f10f8faefb Retry before returning a failure to get upstream work as a failure to avoid false positives for pool dead. 2011-09-06 11:07:36 +10:00
Con Kolivas
2053de6d59 Add the directory name from the arguments cgminer was called from as well to allow it running from a relative pathname. 2011-09-06 10:11:34 +10:00
Con Kolivas
2f5f7efd22 No need to use the re-entrant strtok_r and mingw32 doesn't support it anyway. 2011-09-05 22:34:28 +10:00
Con Kolivas
2155acf1e4 Queue requests ignoring the number of staged clones since they get discarded very easily leading to false positives for pool not providing work fast enough. 2011-09-05 20:46:24 +10:00
Con Kolivas
fc454e888b Update the status window only from the watchdog thread, do not rewrite the top status messages and only refresh once all the status window is complete, clearing the window each time to avoid corruption. 2011-09-05 19:30:03 +10:00
Con Kolivas
93935eb707 Move and print at the same time in curses to avoid random trampling display errors. 2011-09-05 19:30:03 +10:00
Con Kolivas
e8981823c1 Add temperature to standard output where possible and use more compact output. 2011-09-05 19:30:03 +10:00
Con Kolivas
47f1a75924 Implement setting the GPU powertune value of all devices or each device as a comma separated value. 2011-09-05 19:30:03 +10:00
Con Kolivas
bd292258d3 Add support for monitoring powertune setting. 2011-09-04 22:56:19 +10:00
Con Kolivas
3a5663cac1 Implement setting the GPU fan speed of all devices or each device as a comma separated value. 2011-09-04 22:25:31 +10:00
Con Kolivas
8ae273c56c Implement setting the GPU voltage of all devices or each device as a comma separated value. 2011-09-04 22:08:42 +10:00
Con Kolivas
54bc30ceec Implement setting the GPU memory clock speed of all devices or each device as a comma separated value. 2011-09-04 22:01:58 +10:00
Con Kolivas
ec8808d004 Implement setting the GPU engine clock speed of all devices or each device as a comma separated value. 2011-09-04 21:55:06 +10:00
Con Kolivas
12a167a3f1 Implement menus to change temperature limits. 2011-09-04 13:57:40 +10:00
Con Kolivas
306dad9fdb Add gpu statistics to debugging output via the watchdog thread. 2011-09-04 10:27:21 +10:00
Con Kolivas
1ed219372e Combine all stats collating into one function to avoid repeating function calls on each variable. 2011-09-04 10:19:29 +10:00
Con Kolivas
e9f886d805 Allow target, overheat and hysteresis temperatures to be set from command line. 2011-09-04 09:43:53 +10:00
Con Kolivas
9b7262ec71 Clean up by setting performance profiles and fan settings to startup levels on exit. 2011-09-04 00:36:14 +10:00
Con Kolivas
fc36e13d5b Merge branch 'master' into adl_support 2011-09-04 00:00:12 +10:00
Con Kolivas
1898d851e5 Avoid a dereference if the longpoll thread doesn't exist. 2011-09-03 23:59:11 +10:00
Con Kolivas
e9b5885ebe 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. 2011-09-03 22:30:11 +10:00
Con Kolivas
dcc97e45db Add an --auto-fan command line option to allow all GPUs to have autofan enabled from startup. 2011-09-03 15:46:57 +10:00
Con Kolivas
495adcbf5f 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%. 2011-09-03 15:33:53 +10:00
Con Kolivas
35ace46325 Enable changing of engine clock setting on the fly. 2011-09-03 13:02:21 +10:00
Con Kolivas
d57cd91955 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.
2011-09-03 10:53:35 +10:00
Con Kolivas
063efb1996 Rename localgen occasions to getwork fail occasions since localgen is unrelated now. 2011-09-02 10:37:00 +10:00
Con Kolivas
a2a60080ff Add verbose message when a GPU fails to initialise, and disable the correct GPU. 2011-09-02 09:23:17 +10:00
Con Kolivas
8b690b5722 Give a verbose message when no active pools are found and pause before exiting. 2011-09-02 08:55:09 +10:00
Con Kolivas
ed7389e87e Put some sanity checks on the times that can be input. 2011-09-02 08:35:27 +10:00
Con Kolivas
71eff46098 Mingw32 doesn't support strptime so use sscanf. 2011-09-01 23:18:31 +10:00
Con Kolivas
71ce9bc88a Print summary on quit modes. 2011-09-01 23:15:42 +10:00
Con Kolivas
8496534168 Add start and stop time scheduling for regular time of day running or once off start/stop options. 2011-09-01 13:19:51 +10:00
Con Kolivas
5aca762a97 Go back to requesting work 2/3 of the way through the current scantime with CPU mining as reports of mining threads running out of work have occurred with only 5 seconds to retrieve work. 2011-08-31 16:01:28 +10:00
Con Kolivas
a593afdbeb Use the curses_lock to protect the curses_active variable and test it under lock. 2011-08-31 13:23:36 +10:00
Con Kolivas
8119595498 Fix the bouncing short term value by allowing it to change dynamically when the latest value is very different from the rolling value, but damp the change when it gets close. 2011-08-31 10:25:28 +10:00
Con Kolivas
87ac3a006f Provide much more smoothing of the short term rates. 2011-08-30 12:40:48 +10:00
Con Kolivas
d1a8614e5f Add --failover-only option to not leak work to backup pools when the primary pool is lagging. 2011-08-30 10:16:47 +10:00
Con Kolivas
021b2c0d7a The cpu mining work data can get modified before we copy it if we submit it async, and the sync submission is not truly sync anyway, so just submit it sync. 2011-08-29 17:19:04 +10:00
Con Kolivas
af15955b78 Exit with a failed return code if we did not reach opt_shares. 2011-08-29 15:25:14 +10:00
Con Kolivas
8f788ec927 Add an option to break out after successfully mining a number of accepted shares. 2011-08-29 15:12:12 +10:00
Con Kolivas
510bcc3d7e Disable curses after inputting a pool if we requested no curses interface. 2011-08-29 12:21:37 +10:00
Con Kolivas
4cc08fe459 Enable curses after the mining threads are set up so that failure messages won't be lost in the curses interface. 2011-08-29 12:15:24 +10:00
Con Kolivas
5c7ea9e55b Display version information and add --version command line option, and make sure we flush stdout. 2011-08-29 11:52:10 +10:00
Con Kolivas
7d34a6b6e3 Statify tv_sort. 2011-08-29 09:39:06 +10:00
Con Kolivas
f0cc293239 Convert the opt queue into a minimum number of work items to have queued instead of an extra number to decrease risk of getting idle devices without increasing risk of higher rejects. 2011-08-29 01:22:05 +10:00
Con Kolivas
3aee066b88 Add options to explicitly enable CPU mining or disable GPU mining. 2011-08-29 01:07:57 +10:00
Con Kolivas
ee5b476402 Don't show value of intensity since it's dynamic by default. 2011-08-29 00:49:04 +10:00
Con Kolivas
efa1731822 cgminer no longer supports default url user and pass so remove them. 2011-08-29 00:36:42 +10:00
Con Kolivas
fc46d57d62 Return -1 if no input is detected from the menu to prevent it being interpreted as a 0. 2011-08-28 22:45:33 +10:00
Con Kolivas
8d39311613 Reinstate minimum 1 extra in queue to make it extremely unlikely to ever have 0 staged work items and any idle time. 2011-08-28 20:24:17 +10:00
Con Kolivas
8a7b9acd00 Switching between redrawing windows does not fix the crash with old libncurses, so redraw both windows, but only when the window size hasn't changed. 2011-08-28 14:46:21 +10:00
Con Kolivas
eb0fa6e5df Copy cgminer path, not cat it. 2011-08-28 07:53:25 +10:00
Con Kolivas
57c93d7e20 Prevent segfault on exit for when accessory threads don't exist. 2011-08-26 13:02:15 +10:00
Con Kolivas
e81a362b5f Bump threshhold for lag up to maximum queued but no staged work. 2011-08-25 23:33:41 +10:00
Con Kolivas
5b48881175 Only consider pool lagging if more than one item is queued. 2011-08-25 21:49:23 +10:00
Con Kolivas
3d5f555407 Allow a custom kernel path to be entered on the command line. 2011-08-25 14:42:03 +10:00
Con Kolivas
7dc3db2340 Implement SSE2 32 bit assembly algorithm as well. 2011-08-25 13:04:15 +10:00
Con Kolivas
a4ec961ecc We can queue all the necessary work without hitting frequent stales now with the time and string stale protection active all the time.
This prevents a pool being falsely labelled as not providing work fast enough.
2011-08-25 10:21:49 +10:00
Con Kolivas
81aedc972a Add message about needing one server. 2011-08-25 08:10:30 +10:00
Con Kolivas
f2f0ba8024 Revert "Revert "Since we roll work all the time now, we end up staging a lot of work without queueing, so don't queue if we've already got staged work.""
This reverts commit cea1cf6cc0.

This wasn't eht cause of the false positives.
2011-08-24 23:34:22 +10:00
Con Kolivas
cea1cf6cc0 Revert "Since we roll work all the time now, we end up staging a lot of work without queueing, so don't queue if we've already got staged work."
This reverts commit b81077f36a.

This creates too many false positives for pool not providing work fast enough.
2011-08-24 23:26:30 +10:00
Con Kolivas
5a2cf5a6b1 Get start times just before mining begins to not have very slow rise in average. 2011-08-24 23:23:09 +10:00
Con Kolivas
b643b56a95 Allow LP to reset block detect and block detect lp flags to know who really came first. 2011-08-24 23:14:52 +10:00
Con Kolivas
73c98e1e79 Check if there is more than one work item queued before complaining about a slow pool. 2011-08-24 22:07:05 +10:00
Con Kolivas
dbf0a1366d Use the new hashes directly for counts instead of the fragile counters currently in use. 2011-08-24 21:50:04 +10:00
Con Kolivas
0899ee86ae Only consider pool slow to respond if we can't even roll work. 2011-08-24 20:45:30 +10:00
Con Kolivas
6197ff2009 Remove silly debugging output. 2011-08-24 20:13:05 +10:00
Con Kolivas
93f4163aca Create a hash list of all the blocks created and search them to detect when a new block has definitely appeared, using that information to detect stale work and discard it. 2011-08-24 17:32:36 +10:00
Con Kolivas
b81077f36a Since we roll work all the time now, we end up staging a lot of work without queueing, so don't queue if we've already got staged work. 2011-08-24 12:51:38 +10:00
Con Kolivas
bf3033e0f1 Make restarting of GPUs optional for systems that hang on any attempt to restart them.
Fix DEAD status by comparing it to last live time rather than last attempted restart time since that happens every minute.
2011-08-24 12:51:38 +10:00
Con Kolivas
666fcc3f55 Move staged threads to hashes so we can sort them by time. 2011-08-24 12:51:38 +10:00
Con Kolivas
d9accc4846 Put a lower limit on the nonce increment in cpu mining. 2011-08-23 12:34:32 +10:00
Con Kolivas
f6591379fb Minimise how much more work can be given in cpu mining threads each interval. 2011-08-23 12:17:21 +10:00
Con Kolivas
5acdbec47d Make the fail-pause progressively longer each time it fails until the network recovers. 2011-08-23 12:04:26 +10:00
Con Kolivas
b4d6b11b9a Only display the lagging message if we've requested the work earlier. 2011-08-23 11:57:08 +10:00
Con Kolivas
ced4a9ac92 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. 2011-08-23 11:40:48 +10:00
Con Kolivas
088ee2fa29 Only use one thread to determine if a GPU is sick or well, and make sure to reset the sick restart attempt time. 2011-08-23 10:47:47 +10:00
Con Kolivas
7c6dfaccf1 Display which longpoll failed and don't free the ram for lp_url since it belongs to the pool hdr path. 2011-08-21 08:55:31 +10:00
Con Kolivas
6f741597f8 Use any longpoll available, and don't disable it if switching to a server that doesn't have it. 2011-08-20 23:36:18 +10:00
Con Kolivas
b358bdc07e Never automatically disable any pools but just specify them as idle if they're unresponsive at startup. 2011-08-20 23:11:12 +10:00
Con Kolivas
324d849bf2 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.
2011-08-20 23:03:49 +10:00
Con Kolivas
1b228ee3d4 Re-enable devices immediately after ther old threads would have been killed off in case the first attempt to restart them fails but we still want them emabled. 2011-08-20 22:39:20 +10:00
Con Kolivas
75018d0d48 Release cl resources should the gpu mining thread abort. 2011-08-20 22:22:11 +10:00
Con Kolivas
a754cc3f0c Suppress correct log output when display per-device status. 2011-08-18 23:07:30 +10:00
Con Kolivas
6f769e0f8f Add the ability to enable/disable per-device stats on the fly and match logging on/off. 2011-08-18 22:17:55 +10:00
Con Kolivas
e414490bf7 Don't display rolling status if per device stats is enabled. 2011-08-18 22:07:06 +10:00
Con Kolivas
2798b8c549 Merge branch 'master' of github.com:ckolivas/cgminer 2011-08-18 21:35:37 +10:00
Con Kolivas
64e7cdd61b The new phatk kernel needs a different nonce passed according to how many vectors are in use.
This fixes breakage that otherwise occurs when 1 or 4 vectors are chosen.
2011-08-18 21:32:45 +10:00
Znort 987
e49bfbf2ec Add per-device statics log output 2011-08-18 12:17:10 +02:00
Znort 987
f66dec74e6 Fix a crash with --algo auto 2011-08-17 11:45:17 +02:00
Con Kolivas
cf54f9b850 Move to 256 sized buffers and don't risk overwrite by using only 127 mask. 2011-08-17 16:07:15 +10:00
Con Kolivas
52e521a7c1 Revert "Copy the work before returning from creating a thread in case we change the work before copying it."
This reverts commit 6bf4d781e9.

Causing a double free error.
2011-08-17 15:48:07 +10:00
Phateus
d15d225a4c Changed phatk version to 2.2 2011-08-17 14:53:17 +10:00
Con Kolivas
6bf4d781e9 Copy the work before returning from creating a thread in case we change the work before copying it. 2011-08-17 14:44:13 +10:00
Con Kolivas
1e77f04481 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. 2011-08-17 12:43:39 +10:00
Con Kolivas
074b8193b2 Flush output. 2011-08-16 11:21:26 +10:00
Con Kolivas
53a4245a43 Log summary at the end as per any other output. 2011-08-16 11:15:04 +10:00
Con Kolivas
939a0e02b7 Only show cpu algo in summary if cpu mining. 2011-08-16 10:46:25 +10:00
Con Kolivas
cdece1f248 Simplify code and tidy output. 2011-08-16 10:45:02 +10:00
Con Kolivas
8e38a149d8 Simplify output code and remove HW errors from CPU stats. 2011-08-16 10:37:34 +10:00
Con Kolivas
c53a7b0d2d Only display the CPU algo when we're CPU mining. 2011-08-16 10:26:42 +10:00
Con Kolivas
8febf57af0 Keep options in alphabetical order. 2011-08-16 09:45:16 +10:00