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