1
0
mirror of https://github.com/GOSTSec/sgminer synced 2025-01-09 22:38:01 +00:00
Commit Graph

351 Commits

Author SHA1 Message Date
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
ckolivas
c5a21fabf0 Extend nrolltime to support the expiry= parameter. Do this by turning the rolltime bool into an integer set to the expiry time. If the pool supports rolltime but not expiry= then set the expiry time to the standard scantime. 2012-06-23 23:43:22 +10:00
Paul Sheppard
e037028159 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Conflicts:
	driver-bitforce.c
2012-06-19 10:40:00 -07:00
Con Kolivas
f70577b097 Merge pull request #229 from luke-jr/modminer_primary
modminer: Don't delay 2nd+ FPGAs during work restart
2012-06-19 04:38:49 -07:00
Luke Dashjr
1215da39ee modminer: Don't delay 2nd+ FPGAs during work restart
Add primary_thread boolean to threads to identify a single one as the "primary" thread for shared-resource multithreading.
This is needed since ModMiners use multiple threads to interface with independent hashing components.
2012-06-18 05:51:09 +00:00
Paul Sheppard
fe4c0869bf Merge branch 'master' of git://github.com/ckolivas/cgminer.git
Conflicts:
	cgminer.c
2012-06-17 09:44:42 -07:00
Paul Sheppard
7ae22e21e3 Disable OpenCL code when not available. 2012-06-16 20:24:40 -07:00
Paul Sheppard
bc4a259af7 Merge branch 'master' of git://github.com/ckolivas/cgminer.git 2012-06-14 08:13:07 -07:00
Con Kolivas
30bb3c62a6 Merge pull request #224 from kanoi/master
API add ModMinerQuad support
2012-06-14 02:38:24 -07:00
Paul Sheppard
2d1f961046 Merge branch 'master' of git://github.com/ckolivas/cgminer.git 2012-06-14 00:05:31 -07:00
Con Kolivas
dbe9056df4 Add mandatory and block fields to the work struct. Flag any shares that are detected as blocks as mandatory to submit, along with longpoll work from a previously rejecting pool. 2012-06-14 15:42:43 +10:00
Paul Sheppard
b94e199649 Merge branch 'master' of https://github.com/ckolivas/cgminer.git 2012-06-13 17:31:20 -07:00
Paul Sheppard
eff2d04df0 Merge branch 'master' of https://github.com/ckolivas/cgminer.git
Conflicts:
	cgminer.c
2012-06-13 12:31:33 -07:00
Paul Sheppard
1b63a75d2c Simple auto sleep-time calibration.
Optimises the sleep time while waiting for the BFL work to finish.
Takes ~5 mins to settle to the correct time for each unit, then will continue to make adjustments.
2012-06-13 12:26:03 -07:00
Luke Dashjr
4eb23c7ea3 Bugfix: slay a variety of warnings 2012-06-13 17:03:26 +00:00
Kano
913221c373 API add ModMinerQuad support 2012-06-14 02:57:37 +10:00
Paul Sheppard
2384d0fbc6 Removed idle mode... again!?
Changed work_reset rate to every 100ms & use defines rather than numerics.
Change total sleep time to 4300ms after performance testing/measurement (now good to 916MH/s).
Changed timeout to 15s - Throttle time is 15s.
Added support for 'Busy' when submitting work.
Improved logging text to include device identifier.
Added a thread_enable api function, called when a thread is re-enabled.
... and removed useless re-init inside scanhash.
Use modminer introduced mutex.
2012-06-12 18:20:18 -07:00
Luke Dashjr
a78d616bc5 modminer: Temperature sensor improvements
Display the temperature of each of the (up to) 4 FPGAs
2012-06-12 17:04:03 +00:00
Paul Sheppard
861388f960 Merge branch 'master' of https://github.com/ckolivas/cgminer.git 2012-06-12 09:04:42 -07:00
Luke Dashjr
76f96f4717 New driver: BTCFPGA ModMiner 2012-06-12 02:38:36 +00:00
Luke Dashjr
d3fa59d76f Abstract generally useful FPGA code into fpgautils.c 2012-06-12 02:35:45 +00:00
Paul Sheppard
bf4d6c3483 Merge branch 'master' of https://github.com/ckolivas/cgminer.git 2012-06-11 13:36:35 -07:00
Paul Sheppard
4889d7ecb2 Merge branch 'master' of git@github.com:pshep/cgminer.git
Conflicts:
	driver-bitforce.c
2012-06-11 13:09:27 -07:00
Paul Sheppard
820d662c9d Removed idle mode.
Added watchdog thread BFL temperature monitoring.
2012-06-10 23:11:59 -07:00
Paul Sheppard
ebeaf15f18 Added idle mode
Idle is only set by pgadisable, so GPU/CPU is unaffected.
For Icarus/Ztex, in scanhash the thread is immediately set disabled then returns.
2012-06-09 19:30:32 -07:00
Kano
fdcd72b9ae API add stats for pool getworks 2012-06-10 11:19:21 +10:00
Kano
3cb3f09a50 API save default config file if none specified 2012-05-31 23:18:55 +10:00
Con Kolivas
598476cae1 Merge pull request #204 from kanoi/icarus-timer
Icarus: high accuracy timing and other bitstream speed support
2012-05-30 18:02:00 -07:00
Con Kolivas
85210ee7a8 If shares are known stale, don't use them to decide to disable a pool for sequential rejects. 2012-05-31 08:41:56 +10:00
Paul Sheppard
cebd647f50 Messing with BFL code 2012-05-22 08:10:00 -07:00
Kano
b5ed958e84 Icarus: high accuracy timing and other bitstream speed support 2012-05-16 22:25:21 +10:00
Con Kolivas
e195a31c02 Fix win32 build. 2012-05-06 20:49:06 +10:00
Con Kolivas
61696c072c In the unlikely event of finding a block, display the block solved count with the pool it came from for auditing. 2012-05-06 16:22:18 +10:00
Con Kolivas
85c9e0c4b6 Merge pull request #198 from kanoi/stats
API add getwork stats to cgminer - accesable from API 'stats' - and devices can add stats also
2012-05-05 06:38:30 -07:00
Kano
00158c3a1f API 'stats' allow devices to add their own stats also for testing/debug 2012-05-05 16:25:19 +10:00
Kano
976e27c4cb API add getwork stats to cgminer - accesable from API 'stats' 2012-05-05 15:04:15 +10:00
Con Kolivas
46a679f39e Revert "Provide simple macros for the repeated use of checking the first value of the input char with strncasecmp."
This reverts commit 87708a6a0e.

Broken.
2012-05-05 12:55:00 +10:00
Con Kolivas
c8e1026dfb Get rid of unitialised variable warning when it's false. 2012-05-05 09:37:33 +10:00
Con Kolivas
87708a6a0e Provide simple macros for the repeated use of checking the first value of the input char with strncasecmp. 2012-05-04 23:05:00 +10:00
Con Kolivas
4987958e6a 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.
2012-05-04 20:10:38 +10:00
Kano
44fc698750 API add last share time to each pool 2012-05-04 00:13:42 +10:00
Con Kolivas
a4f1af1733 Detect pools that have issues represented by endless rejected shares and disable them, with a parameter to optionally disable this feature. 2012-05-03 15:35:13 +10:00
Con Kolivas
5081c1824a 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. 2012-05-03 10:49:42 +10:00
Con Kolivas
d4405de704 Generalise add_pool() functions since they're repeated in add_pool_details. 2012-05-03 10:49:42 +10:00
ckolivas
85008a7853 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.
2012-05-03 10:48:05 +10:00
Con Kolivas
7d288eac9f 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.
2012-05-03 10:41:57 +10:00
Con Kolivas
89053c78da There is no need for the submit and getwork curls to be tied to the pool struct. 2012-05-01 19:12:37 +10:00
Con Kolivas
1ab318d0f3 Start longpoll only after we have tried to extract the longpoll URL. 2012-04-27 13:11:19 +10:00
Con Kolivas
eda382990a 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.
2012-04-27 11:58:47 +10:00
Con Kolivas
4cd973264f 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.
2012-04-26 23:29:21 +10:00
Luke Dashjr
4648330c9d Support for share logging 2012-04-25 12:05:33 +10:00
Con Kolivas
f5f089f5b4 Add a --gpu-map option which will allow arbitrarily mapping ADL devices to OpenCL devices for instances where association by enumeration alone fails. 2012-04-23 17:40:47 +10:00
Luke Dashjr
730849c988 Make a union for cgpu device handles, and rename "device" to "device_ztex" since it's Ztex-specific 2012-04-21 03:01:42 -04:00
Luke Dashjr
657716e563 Merge branch 'master' into ztex 2012-04-21 02:56:20 -04:00
Luke Dashjr
b8778839e9 Merge branch 'master' into unify_drivers
Conflicts:
	cgminer.c
2012-04-21 02:36:19 -04:00
Con Kolivas
c7cc2e4226 Merge branch 'master' into ztex 2012-04-21 14:03:41 +10:00
Kano
2e1d2017de API add removepool like the screen interface 2012-04-21 03:15:41 +10:00
nelisky
c3bda2b709 adding path to libusb include 2012-04-16 04:07:19 -07:00
nelisky
99a188f94f 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
2012-04-16 04:01:51 -07:00
Con Kolivas
dc70fe9ce0 Do a complete cgminer restart if the ATI Display Library fails, as it does on windows after running for some time, when fanspeed reporting fails. 2012-04-14 17:38:31 +10:00
Kano
0be2b9e9b6 Increase max devices to 64 (for FPGA support) 2012-03-30 22:28:44 +11:00
Kano
18a8b5506e API returns the simple device history with the 'notify' command 2012-03-23 03:17:20 +11:00
Kano
eeec98098f code changes for supporting a simple device history 2012-03-23 01:50:45 +11:00
Luke Dashjr
eca996547b CGPU API for device kernel name 2012-03-18 21:39:20 -04:00
Luke Dashjr
f05a319e01 CGPU API for device names 2012-03-18 21:32:01 -04:00
Luke Dashjr
303dbf4664 Abstract add_cgpu function, to handle device id numbering and devices array 2012-03-18 20:09:03 -04:00
Luke Dashjr
e131dfab31 Unify drivers as driver-*.c and add driver name to API 2012-03-13 12:18:23 -04:00
Con Kolivas
f4df8c82a7 Merge pull request #135 from kanoi/master
API new commands enablepool and disablepool
2012-02-22 21:56:48 -08:00
Kano
60c5ac6844 API new commands enablepool and disablepool (version already incremented) 2012-02-23 16:10:17 +11:00
Kano
4458f3d5c7 Modify cgminer.c pool control to allow API to call it 2012-02-23 13:58:33 +11:00
Con Kolivas
527e611b74 Fix !HAVE_OPENCL build. 2012-02-23 01:27:36 +11:00
ckolivas
93efb726bb Allow multiple different kernels to be chosen per device. 2012-02-22 19:38:01 +11:00
Con Kolivas
deff55c640 Allow different vectors to be set per device. 2012-02-22 16:54:06 +11:00
Con Kolivas
2ca8d38e0e Merge pull request #124 from kanoi/master
API commits - IP 0/0 means all, add "Log Interval" to config, restrict access to modify commands
2012-02-21 02:49:25 -08:00