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

424 Commits

Author SHA1 Message Date
Con Kolivas
58873c1dfa Get detailed addressinfo from the parsed URL for future raw socket usage when possible. IPV4 only for now. 2012-09-25 20:23:59 +10:00
Con Kolivas
144a016097 Add data structures to pool struct for socket communications. 2012-09-24 16:50:04 +10:00
Kano
7c32562d80 API stats add some pool getwork difficulty stats 2012-09-24 11:34:50 +10:00
Con Kolivas
57a73dce34 Test for sequential getwork failures on a pool that might actually be up but failing to deliver work as we may end up hammering it repeatedly by mistake. 2012-09-24 08:30:07 +10:00
Con Kolivas
3243b91e2d Merge pull request #310 from kanoi/master
API debug, API-README, API Correct diff1 name, Device diff1, API diff1 etc.
2012-09-20 23:23:15 -07:00
Con Kolivas
618999026f As we average gpu time over 5 work intervals for dynamic GPU intensity, there is no need to maintain a rolling average and it avoids the potential long term corruption of a single overflow value. 2012-09-21 16:10:34 +10:00
Kano
a6bf276f6b API - Add last share difficulty for devices and pool 2012-09-19 01:14:43 +10:00
Kano
89b6989fb3 Store and report Accepted,Rejected,Stale difficulty in the summary and API 2012-09-19 00:54:55 +10:00
Kano
923b9e0d86 Calculate work difficulty for each getwork and display with WorkTime debug 2012-09-18 11:19:57 +10:00
Kano
796f3906c1 WorkTime - multiple nonce per work and identify the work source 2012-09-16 07:57:43 +10:00
Kano
bd3c98aaaf Optional WorkTime details with each Accepted/Rejected work item 2012-09-15 14:04:57 +10:00
Kano
99f0607fb2 API add display of and setting queue,scantime,expiry 2012-09-12 23:26:43 +10:00
Kano
cef9731fbc CURL support for individual proxy per pool and all proxy types 2012-09-12 07:44:00 +10:00
Kano
307d8da034 HW: error counter auto for all devices - ztex code not fixed 2012-09-04 15:57:11 +10:00
Kano
9487ba05cd API/BFL identify a device - currently only BFL to flash the led 2012-09-04 12:52:11 +10:00
Kano
7a2407f15c BFL add throttle count to internal stats + API 2012-09-04 02:26:17 +10:00
Kano
4023872b76 count device diff1 shares 2012-09-01 23:51:51 +10:00
Kano
a178039a65 miner.h max_hashes -> int64_t 2012-08-30 23:22:37 +10:00
Con Kolivas
3acc064be3 Merge pull request #306 from kanoi/api
Pools: add RollTime info to API 'stats' and 'Stats' button in miner.php (to display it)
2012-08-23 07:50:28 -07:00
Con Kolivas
618b3e8b11 Track queued and staged per pool once again for future use. 2012-08-23 23:50:38 +10:00
Kano
d5f485c517 Pools: add RollTime info to API 'stats' and 'Stats' button in miner.php 2012-08-23 19:20:12 +10:00
ckolivas
edd9b81622 Do not add time to dynamic opencl calculations over a getwork. 2012-08-22 10:07:20 +10:00
Kano
b3e9858c9f API new command 'coin' with mining information 2012-08-20 16:07:20 +10:00
Kano
9210abdf60 API V1.17 show Work Utility and Diff1 Shares 2012-08-19 15:09:45 +10:00
Con Kolivas
26ab7346e3 Implement a new pool strategy, BALANCE, which monitors work performed per pool as a rolling average every 10 minutes to try and distribute work evenly over all the pools.
Do this by monitoring diff1 solutions to allow different difficulty target pools to be treated equally, along with solo mining.
Update the documentation to describe this strategy and more accurately describe the load-balance one.
2012-08-18 15:27:53 +10:00
Con Kolivas
d8c76bbd08 Getwork fail was not being detected. Remove a vast amount of unused variables and functions used in the old queue request mechanism and redefine the getfail testing. 2012-08-18 11:26:11 +10:00
Con Kolivas
c3e32274ee Cull all the early queue requests since we request every time work is popped now. 2012-08-18 10:37:05 +10:00
Con Kolivas
5fadfdb219 Overlap queued decrementing with staged incrementing. 2012-08-18 10:37:05 +10:00
Con Kolivas
611f1cec7c Roll work whenever we can on getwork. 2012-08-18 10:37:05 +10:00
Con Kolivas
fd0be1bb51 Queue requests for getwork regardless and test whether we should send for a getwork from the getwork thread itself. 2012-08-18 10:37:04 +10:00
Con Kolivas
2480cf23cc Don't try to get bitforce temperature if we're polling for a result to minimise the chance of interleaved responses. 2012-08-15 10:54:38 +10:00
Con Kolivas
8745ba1e6d Windows' timer resolution is limited to 15ms accuracy. This was breaking dynamic intensity since it tries to measure below this.
Since we are repeatedly sampling similar timeframes, we can average the gpu_us result over 5 different values to get very fine precision.
2012-08-15 09:38:45 +10:00
Kano
95dff7363e API allow display/change failover-only setting 2012-08-14 12:54:27 +10:00
Con Kolivas
8aa61f6626 Make sure we have work from the current pool somewhere in the queue in case the queue is full of requests from a pool that has just died. 2012-08-11 16:47:49 +10:00
Con Kolivas
8085ae6854 Further simplify the queue request mechanism. 2012-08-11 14:04:55 +10:00
Con Kolivas
3576abf8a7 Make pool_disabled the first in the enums == 0, fixing the pool enabled count which compares if value is not enabled before enabling it. 2012-08-05 15:43:27 +10:00
Con Kolivas
fc44b6d7a1 Use different variables for command line specified lookup gap and thread concurrency to differentiate user defined versus auto chosen values. 2012-08-05 15:32:44 +10:00
Con Kolivas
bf9c324752 The queueing mechanism has become a complex state machine that is no longer predictable. Rewrite it from scratch watching only current queues in flight and staged work available on a pool by pool basis. 2012-08-05 13:40:46 +10:00
Con Kolivas
b70ec3cb66 Merge pull request #283 from kanoi/icarus
ICA support 57600 baud rate, up to 8 FPGA and partial working FPGA boards
2012-08-02 17:17:53 -07:00
Con Kolivas
7fa794a499 It is not critical getting the temperature response in bitforce so don't mandatorily wait on the mutex lock. 2012-08-03 09:26:43 +10:00
Kano
e067be421a ICA support 57600 baud rate, up to 8 FPGA and partial working FPGA boards 2012-08-01 22:50:30 +10:00
Con Kolivas
c91148f193 Remove the low hash count determinant of hardware being sick. A low hash rate can be for poor network connectivity or scrypt mining, neither of which are due to sick hardware. 2012-07-30 09:02:23 +10:00
Con Kolivas
500ed85bb3 Merge pull request #271 from luke-jr/cg_logfixes
Logging bugfixes
2012-07-29 03:46:49 -07:00
Con Kolivas
e87ff7c177 Keep a counter of enabled pools and use that instead of iterating over the pool list. Use that value to ensure we don't set the last remaining active pool to the rejecting state. 2012-07-29 13:15:39 +10:00
Con Kolivas
9a6c082ad1 Make the thread concurrency and lookup gap options hidden on the command line and autotune parameters with a newly parsed --shaders option. 2012-07-24 20:27:37 +10:00
Luke Dashjr
da4ff2bde1 Bugfix: Use a mutex to control non-curses output
Without this, there is no guarantee writes won't overlap (and it happens quite a bit on Windows with the bitforce driver)
2012-07-23 20:29:06 +00:00
Luke Dashjr
d98e561a0a Simplify code to a single vprintf path for curses-less printing 2012-07-23 20:29:02 +00:00
Luke Dashjr
80593c47fc Move opt_quiet check to my_log_curses, so it works for curses-less builds 2012-07-23 20:28:57 +00:00
Con Kolivas
89eb1fa393 Check the maximum allocable memory size per opencl device. 2012-07-23 17:41:31 +10:00
Con Kolivas
17dfe74f96 Allow intensities up to 20 if scrypt is compiled in. 2012-07-22 00:49:47 +10:00
Con Kolivas
39f7d2fa74 Allow lookup gap and thread concurrency to be passed per device and store details in kernel binary filename. 2012-07-21 17:31:06 +10:00
Con Kolivas
6ac14f4280 Don't enqueuewrite buffer at all for pad8 and pass work details around for scrypt in dev_blk. 2012-07-16 13:14:21 +10:00
Con Kolivas
0f43eb5eb7 Don't test nonce with sha and various fixes for scrypt. 2012-07-13 20:35:44 +10:00
Con Kolivas
b085c338f6 Make scrypt buffers and midstate compatible with cgminer. 2012-07-13 20:28:36 +10:00
Con Kolivas
dd740caa98 Provide initial support for the scrypt kernel to compile with and mine scrypt with the --scrypt option. 2012-07-13 19:02:43 +10:00
Con Kolivas
5a65415b1e Enable completely compiling scrypt out. 2012-07-13 14:47:02 +10:00
Con Kolivas
176cdf8bbc Begin import of scrypt opencl kernel from reaper. 2012-07-13 14:44:52 +10:00
Con Kolivas
c1c99f1dd2 Merge https://github.com/pshep/cgminer into pshep 2012-07-12 23:09:05 +10:00
Paul Sheppard
d4d5b28e5f Abbrv. correction 2012-07-11 14:46:09 -07:00
Luke Dashjr
c57c308d1f Bugfix: Don't declare devices SICK if they're just busy initializing
This mainly applies to ModMiner since it takes 4-5 minutes to upload the bitstream
2012-07-11 20:29:06 +00:00
Paul Sheppard
5f0a22d230 Remove superfluous ave_wait 2012-07-11 08:32:41 -07:00
Paul Sheppard
2c54522d7d Add average wait time to api stats 2012-07-11 08:11:53 -07:00
Paul Sheppard
01a69ee45e Revert "Merge branch 'ave_time' of https://github.com/pshep/cgminer.git"
This reverts commit 242e52cdf9, reversing
changes made to 4dc1bf2319.
2012-07-11 08:07:39 -07:00
ckolivas
5c7e03084a Modify te scanhash API to use an int64_t and return -1 on error, allowing zero to be a valid return value. 2012-07-11 22:59:58 +10:00
Paul Sheppard
3cc0aa76ad Add average return time to api stats 2012-07-10 15:34:01 -07:00
Paul Sheppard
953ecd9e6a Change timeouts to time-vals for accuracy. 2012-07-08 23:25:02 -07:00
Con Kolivas
2ce7f28bbc Merge pull request #254 from luke-jr/work_restart2
Turn work_restart array into a bool in thr_info
2012-07-08 04:24:55 -07:00
Con Kolivas
fd55fab96a Make bitforce nonce range support a command line option --bfl-range since enabling it decrease hashrate by 1%. 2012-07-06 16:54:00 +10:00
Luke Dashjr
d4af2d0535 Turn work_restart array into a bool in thr_info 2012-07-06 05:13:05 +00:00
Con Kolivas
3271be145f Provide a ms based sleep function that uses nanosleep to avoid the inaccuracy of usleep on SMP systems. 2012-07-06 15:01:39 +10:00
Con Kolivas
75eca07823 Restart_wait is only called with a ms value so incorporate that into the function. 2012-07-05 09:15:21 +10:00
Con Kolivas
e5aba76042 Fix off-by-one error in nonce increment in bfl. 2012-07-05 00:40:01 +10:00
Con Kolivas
6314a12b31 Initially enable support for nonce range support on bfl, splitting nonces up into 3/4 size and only disable it if it fails on work submit. 2012-07-04 23:53:55 +10:00
Con Kolivas
96fba30b6b Attempt to detect nonce range support in BFL by sending work requring its support. 2012-07-04 17:31:02 +10:00
Kano
ff0afb94ec Add API Notify counter 'Comms Error' 2012-07-03 13:14:30 +10:00
Con Kolivas
732783faa6 Merge branch 'bfl'
Conflicts:
	miner.h
2012-07-03 11:35:58 +10:00
Con Kolivas
2ec0fb9793 Merge pull request #247 from kanoi/master
api.c data structure + updated get_api_stats/driver-icarus.c
2012-07-02 18:26:18 -07:00
Con Kolivas
336dbd5c98 Remove needless roundl define. 2012-07-03 10:44:59 +10:00
Paul Sheppard
cc0ad5eaa7 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Conflicts:
	driver-bitforce.c
2012-07-01 23:35:06 -07:00
ckolivas
fd7b21ed56 Use a pthread conditional that is broadcast whenever work restarts are required. Create a generic wait function waiting a specified time on that conditional that returns if the condition is met or a specified time passed to it has elapsed. Use this to do smarter polling in bitforce to abort work, queue more work, and check for results to minimise time spent working needlessly. 2012-07-02 10:54:20 +10:00
Paul Sheppard
a4a2000cc0 Merge branch 'master' of git://github.com/ckolivas/cgminer.git 2012-06-30 20:45:56 -07:00
ckolivas
1e9421475c Timersub is supported on all build platforms so do away with custom timerval_subtract function. 2012-07-01 10:44:23 +10:00
Kano
eab9debc72 api.c data structure - all testing attempted successful 2012-06-30 23:41:22 +10:00
Kano
d8abfb713e api.c data structure - tested + updated get_api_stats/driver-icarus.c 2012-06-30 15:58:31 +10:00
Kano
538653a53e api.c data structure - 2nd - untested 2012-06-30 12:44:57 +10:00
Kano
21e4cd85ea api.c data structure rather than raw sprintf - 1st test 2012-06-30 02:49:01 +10:00
Paul Sheppard
3be662a270 Merge branch 'old_gcc' 2012-06-28 18:35:32 -07:00
Paul Sheppard
123058b587 Add macro roundl for compilers without said function. 2012-06-28 11:02:03 -07:00
Paul Sheppard
baa480c137 Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Conflicts:
	cgminer.c
2012-06-28 08:22:55 -07:00
Paul Sheppard
f225392990 Add low hash threshold in sick/dead processing
Add check for fd in comms procedures
2012-06-28 08:20:45 -07:00
Con Kolivas
3267b534a8 Implement rudimentary X-Mining-Hashrate support. 2012-06-28 10:43:52 +10:00
Kano
c21fc06560 define API option --api-groups 2012-06-27 21:28:18 +10:00
Paul Sheppard
78d5a81d70 Merge branch 'master' of https://github.com/ckolivas/cgminer.git 2012-06-26 12:32:09 -07:00
ckolivas
dffda2382f Increase GPU timing resolution to microsecond and add sanity check to ensure times are positive. 2012-06-26 12:50:52 +10:00
Paul Sheppard
df9e76bd73 Merge branch 'master' of https://github.com/ckolivas/cgminer.git 2012-06-25 10:56:04 -07:00
Con Kolivas
c027492fa4 Make the pools array a dynamically allocated array to allow unlimited pools to be added. 2012-06-25 17:06:26 +10:00
Con Kolivas
5cf4b7c432 Make the devices array a dynamically allocated array of pointers to allow unlimited devices. 2012-06-25 16:59:29 +10:00
Con Kolivas
eaf1505381 Dynamic intensity for GPUs should be calculated on a per device basis. Clean up the code to only calculate it if required as well. 2012-06-25 13:31:52 +10:00
Con Kolivas
f32ffb8718 Work out a rolling average getwork delay stored in pool_stats. 2012-06-24 13:20:17 +10:00
ckolivas
6a45cbbdfb Merge branch 'master' of https://github.com/ckolivas/cgminer 2012-06-23 23:45:08 +10:00