boost clocks and the thermal limit are shared with afterburner
beware with your settings, not as safe as application clocks!
Note: both nvapi and nvml are now used on windows x64
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
will allow to submit some device benchmark data to compute algo
power usage and profitability.
Introduce two new methods mining.get_algo and mining_get_stats
These methods will be used with yiimp stratum with a special benchmark option
Note: only the first card is handled for the moment.
also add stratum mining.ping support (like cgminer 4.7.1+) and prevent disconnect
on unknown methods, reply it is unsupported.
fix some algo weird hashrates (like blake)
and reset device between algos, for better accuracy
but this reset doesnt seems enough to bench all algos correctly...
to test on linux, could be a driver issue...
heavy: fix first alloc and indent with tabs...
Switching to a pool with a different algo will require a barrier
to free ressources, like what was made in the global benchmark.
add also the algo in pool structure...
reduce "false" warnings, and ignore unrelated/small ones <= 1 MB
On windows the gpu memory can be allocated by other processes
+ some cleanup in algos... (free/gpulog)
The full benchmark can now be launched with "ccminer --benchmark"
add a new helper function which log a warning with last cuda error
(not shown with the quiet option) : CUDA_LOG_ERROR();
it can be used where miner.h is included (.c/.cpp/.cu)
fix x14 (in ccminer.cpp), a break was missing in switch..case
when using multiple cpu threads per gpu, use the T prefix, ex:
[2015-10-11 09:52:49] GPU #0: app clocks set to P0 (3600/1228)
vs
[2015-10-11 09:52:51] GPU T0: MSI GTX 960, 5953.35 kH/s
Only thr_id is required, the function take care of the dev id
0: cudaDeviceScheduleAuto
1: cudaDeviceScheduleSpin
2: cudaDeviceScheduleYield
4: cudaDeviceScheduleBlockingSync
Also set the best one (4) for luffa algo by default...
made for linux and require libpci-dev (optional)
if libpci is not installed, card's vendor names are not handled...
Note: only a few vendor names were added, common GeForce vendors.
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
heavy: reduce by 256 threads default intensity to all -i 20
cuda: put static thread init bools outside the code (made once)
api: fix nvml header to build without
There was a different behavior on linux and visual studio
That was making it hard to link functions correctly
That remove some ifdef / extern "C" requirements
note about x86 releases, x86 nvml.dll is not installed on Windows x64!
Based on mwhite73 <marvin.white@gmail.com> implementation
Linked to the api system
Also fix Makefile to support standard c++ files
This prevent nvcc use without device code
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
Displayed data is the average of the last 50 scans in the 5 last minutes
Also move cuda common functions in a new file (cuda.cu)
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>