Con Kolivas
|
b196d4fa0c
Support more shares to be returned for scrypt mining.
|
12 years ago |
Con Kolivas
|
0face980e8
Use cgtime in driver-opencl.c
|
12 years ago |
Con Kolivas
|
13e19de4d5
Calculate work utility for devices that support target diffs of greater than 1, and update scrypt code to use it.
|
13 years ago |
Con Kolivas
|
d7d630b86c
Set default GPU threads to 1 for scrypt.
|
13 years ago |
Kano
|
1c04d14067
cgminer -n to include a USB device list
|
13 years ago |
Con Kolivas
|
5d581cb5d7
Use blank_get_statline_before for GPU devices that don't support adl monitoring.
|
13 years ago |
Con Kolivas
|
5d122cad93
Provide wrappers for grabbing of thr value under the mining_thr_lock.
|
13 years ago |
Kano
|
7abf30b2c0
distinguish between drv and it's id enum now called drv_id
|
13 years ago |
Kano
|
61ec1fe91f
mutex all access to mining_thr
|
13 years ago |
Kano
|
212f32e5e0
Split thr_info array into control_thr and mining_thr pointers so more mining threads can be added later
|
13 years ago |
Kano
|
a344deb6ac
rename device_api -> device_drv and all related api -> drv and add a device_drv->drv enum for identifying which driver each is
|
13 years ago |
Con Kolivas
|
d4f4c932bd
Trivial space removal.
|
13 years ago |
Con Kolivas
|
30ed3fb648
Get rid of unused last_work in opencl thread data.
|
13 years ago |
Con Kolivas
|
217be6ed98
Do away with the flaky free_work api in the driver code which would often lose the work data in opencl and simply flush it before exiting the opencl scanhash.
|
13 years ago |
Con Kolivas
|
ce7801beca
Copy the work on opencl_free_work
|
13 years ago |
Con Kolivas
|
2d35ac2567
Track all dynamically allocated memory within the work struct by copying work structs in a common place, creating freshly allocated heap ram for all arrays within the copied struct.
|
13 years ago |
Luke Dashjr
|
cce7508378
opencl: Use new dev_error function for REASON_DEV_NOSTART
|
13 years ago |
Con Kolivas
|
101394ab70
Time for dynamic is in microseconds, not ms.
|
13 years ago |
Con Kolivas
|
7450b25e75
Dramatically simplify the dynamic intensity calculation by oversampling many runs through the opencl kernel till we're likely well within the timer resolution on windows.
|
13 years ago |
Con Kolivas
|
1c22c0e8d6
In opencl_free_work, make sure to still flush results in dynamic mode.
|
13 years ago |
Con Kolivas
|
55396f534e
Fix 4 * 0 being 0 that would break dynamic intensity mode.
|
13 years ago |
Con Kolivas
|
4fbc570fa4
Reinstate the history on dynamic intensity mode to damp fluctuations in intensity but use an upper limit on how much the value can increase at any time to cope with rare overflows.
|
13 years ago |
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.
|
13 years ago |
Con Kolivas
|
f1c6ae22f7
Adjust opencl intensity when adjusting thread count to prevent it getting pegged at a value below the minimum threads possible.
|
13 years ago |
Con Kolivas
|
86d5377e72
Use atomic ops to never miss a nonce on opencl kernels, including nonce==0, also allowing us to make the output buffer smaller.
|
13 years ago |
ckolivas
|
f63aeab1fe
gpu->hit should be reset on new work as well.
|
13 years ago |
ckolivas
|
edd9b81622
Do not add time to dynamic opencl calculations over a getwork.
|
13 years ago |
Con Kolivas
|
e5ed708493
Do the dynamic timing in opencl code over a single pass through scanhash to make sure we're only getting opencl times contributing to the measured intervals.
|
13 years ago |
Con Kolivas
|
8745ba1e6d
Windows' timer resolution is limited to 15ms accuracy. This was breaking dynamic intensity since it tries to measure below this.
|
13 years ago |
Con Kolivas
|
fc44b6d7a1
Use different variables for command line specified lookup gap and thread concurrency to differentiate user defined versus auto chosen values.
|
13 years ago |