plimit value is reported in mW like the power, or % on Windows x86 (via nvapi)
+ the monitor thread will no more report 0W if the device doesnt support it
also upgrade nvml and sample php api.
some more changes may come in this temporary API 1.9 (for the final 2.0)
disabled by default, require --led=100 on nvidia compatible devices
Gigabyte RGB led hack is not perfect for the moment, can fail and require a reboot.
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>
--pstate 0 is an alternative to clocks values to set the device in P0
mode, 1 will set appl. clocks to default P1 clocks, 2 to default P2..
--plimit 150W really works on the 9xx and allow to limit/reduce the gpu usage
Note: nvml interface is only available on linux and windows x64
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
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>
Since linux driver 346.72, nvidia-smi allow to query gpu/mem clocks
Tested ok on the Asus Strix 970, but fails on the Gigabyte 750 Ti
system could require first persistence mode and app clock unlock :
nvidia-smi -pm 1
nvidia-smi -acp 0
supported values are displayed by
nvidia-smi -q -d SUPPORTED_CLOCKS
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
nvml.dll doesnt exists for 32bit binaries! use nvapi to get infos
seems to have more/different features than NVML... like pstate etc..
This is nvapi r343 : https://developer.nvidia.com/nvapi
Signed-off-by: Tanguy Pruvot <tanguy.pruvot@gmail.com>
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>