1
0
mirror of https://github.com/GOSTSec/ccminer synced 2025-01-01 18:55:59 +00:00
Commit Graph

48 Commits

Author SHA1 Message Date
Tanguy Pruvot
5fb84189b2 nvml: fix possible mismatch of vendor names (x64)
seen on a weird motherboard with a PCI Express Switch (MSI XPower Z87)

On this motherboard, the first/top device pci id is the highest one...
2015-12-03 14:25:35 +01:00
Tanguy Pruvot
59a6cd133b nvapi: x86 can also get sub vendor ids 2015-10-22 12:29:03 +02:00
Tanguy Pruvot
c7cfe0e2ca Fix windows linkage, C/C++ mismatch 2015-10-11 00:55:22 +02:00
Tanguy Pruvot
64e997e9d6 prepare release 1.6.6 2015-08-22 17:33:26 +02:00
Tanguy Pruvot
40fc2bdcbc nvml: store prev. clocks/limit for a proper reset on exit 2015-07-21 13:21:49 +02:00
Tanguy Pruvot
25a78c96b5 nvml: allow to keep modified clocks + vendors
--keep-clocks option prevent reset clocks on exit...
2015-06-25 14:21:25 +02:00
Tanguy Pruvot
5abfac72d6 plimit: restore default limit on exit if changed
and show log on start if set/changed without --debug
2015-06-24 16:01:12 +02:00
Tanguy Pruvot
7c5087d01c nvml: add --plimit and --pstate parameters
--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>
2015-06-24 10:35:34 +02:00
Tanguy Pruvot
b9cfee0bb3 nvml: api enhancements, add power usage
fallbacks on v2 nvml exports and check api implementation on call
2015-06-24 07:30:26 +02:00
Tanguy Pruvot
f73f5f6a2e nvml: use the right nvmlDeviceGetPciInfo_v2 api
so... pciutils branch is no more required on windows :p
2015-06-23 14:38:12 +02:00
Tanguy Pruvot
7981e83db7 nvml: separated vendor id to string function
for the day nvidia will fix their nvmlDeviceGetPciInfo api..
2015-06-23 10:01:31 +02:00
Tanguy Pruvot
a12dfa5370 vendors: add EVGA and fix configure for Slackware
Fedora libpci devel package is named pciutils-devel
Debian/Ubuntu is libpci-dev

Slackware lib requires libz... i added the dependency in configure.ac
2015-06-22 04:36:23 +02:00
Tanguy Pruvot
6b41234ff1 nvml: get devices vendor names with libpci
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>
2015-06-22 04:03:22 +02:00
Tanguy Pruvot
98f2f8c745 nvml warning fix and disable scrypt gpu test 2015-05-29 15:39:41 +02:00
Tanguy Pruvot
85394cf22b cuda: reduce possible segfaults on exit
not perfect but helps...
2015-05-28 15:58:38 +02:00
Tanguy Pruvot
0c545eb724 nvml: check available memory clocks and fix param for -d 1
"-d 1 --gpu-clock 1200" was not working
2015-05-28 07:49:31 +02:00
Tanguy Pruvot
f2c7a45e47 nvml: fix pstate api, nvmlDeviceGetPerformanceState works
on linux, 346.72
2015-05-28 07:10:00 +02:00
Tanguy Pruvot
e99ff6c15b nvml: clocks cleanup + pstate check (still not supported) 2015-05-28 06:47:23 +02:00
Tanguy Pruvot
cbd7865a79 nvml: check supported graphics clocks...
and use reset application clocks api
2015-05-27 18:15:38 +02:00
Tanguy Pruvot
a08056ed2a linux: reset modified application clocks 2015-05-27 15:50:10 +02:00
Tanguy Pruvot
c9d110e543 linux: allow to set application clocks
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>
2015-05-27 14:34:39 +02:00
Tanguy Pruvot
09c3ac6b4b linux: fix missing dirname include 2015-02-11 18:36:57 +01:00
Tanguy Pruvot
cafd4477d7 Handle a maximum of 16 gpus (vs 8 before)
Some cards have 2 gpus on board...
2015-01-22 04:55:27 +01:00
Tanguy Pruvot
ec454dd78c api: add fan rpm (windows nvapi only) 2014-12-26 15:33:55 +01:00
Tanguy Pruvot
56170bb32e nvml: cleanup and check api restrictions
there was too much wrap_ prefixes, internal cleanup

SetAPIRestriction reports success but we can not query/set app clocks
2014-11-29 09:13:00 +01:00
Tanguy Pruvot
8ad180cc70 various small changes
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
2014-11-28 20:57:35 +01:00
Tanguy Pruvot
3e8457d76c api: add device uuid (nvml), and OS in hwinfo
move nvdriver to sys infos (unique on system)

prepare pool query
2014-11-24 21:20:26 +01:00
Tanguy Pruvot
484bbc4b15 api: restore bios, can be useful to identify
We have no way yet to identify a MSI 750 from a Gigabyte one...
2014-11-24 14:32:34 +01:00
Tanguy Pruvot
aec310d4a7 nvml: grab nvidia driver version string too 2014-11-24 00:27:49 +01:00
Tanguy Pruvot
d0ad1017e9 nvapi: get vid/pid like nvml + driver version
remove vbios revision, goal was to find the vendor...
2014-11-24 00:08:14 +01:00
Tanguy Pruvot
f42bb85785 nvml: vid/pid was reversed 2014-11-23 11:17:52 +01:00
Tanguy Pruvot
e2ac7a2a75 api: add nvapi and nvml ids for C# tools 2014-11-23 11:12:58 +01:00
Tanguy Pruvot
84d7d926c9 nvml: fix hwinfo gpu vendor/product id
subsys ids are wrong... so use generic one
2014-11-23 10:45:32 +01:00
Tanguy Pruvot
6699b8a71f nvml: fix windows build 2014-11-23 08:39:55 +01:00
Tanguy Pruvot
7bb86defcc nvml: clean up and fix retorted bus id bug in api 2014-11-23 07:33:36 +01:00
Tanguy Pruvot
b824a63cde affinity: do not mix cpu count with gpu one
and update the old var with active gpus if -d is set
2014-11-22 22:14:20 +01:00
Tanguy Pruvot
1bc4e7e942 api: add mem size and freq to hwinfo query 2014-11-20 15:54:56 +01:00
Tanguy Pruvot
3ad4be7de0 api: export gpu freq on linux too + hwinfo command 2014-11-19 16:16:27 +01:00
Tanguy Pruvot
b24b65a9c9 api: add gpu pci bus id, unified id + bloc height 2014-11-18 16:25:44 +01:00
Tanguy Pruvot
17cf3767e9 api: also fix nvapi mapping and double swap on histo 2014-11-18 03:34:23 +01:00
Tanguy Pruvot
2aea2c3ccc nvml: attempt to use another clock function
But no way, even recent 346 driver series or 343. Seems limited to
Tesla products...
2014-11-15 02:48:36 +01:00
Tanguy Pruvot
7a2fe83aaa nvapi: match gpu index with pci/x bus id
mapping by Name was a quick test...
2014-11-14 22:03:00 +01:00
Tanguy Pruvot
124dc6ea57 nvapi: fix mapping of devices 2014-11-14 19:33:24 +01:00
Tanguy Pruvot
3652c708b9 api: add histo command and difficulty
enhance multi-gpu stats and fix nvapi indexes

change syslog prefix to ccminer (cpuminer remains)

api 1.1 modified - not officially released yet
2014-11-14 19:09:48 +01:00
Tanguy Pruvot
3d2260acc4 stats: add support for current freq and pstate
windows only via nvapi, if nvml function is not supported
2014-11-14 02:48:27 +01:00
Tanguy Pruvot
15eea1bc81 api: add nvapi for windows binaries
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>
2014-11-13 19:01:36 +01:00
Tanguy Pruvot
e40a7a720c ccminer: rename main file and switch to C++
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!
2014-11-13 16:11:35 +01:00
Tanguy Pruvot
49f3c454c2 Add nvml for GPU monitoring (squashed)
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>
2014-11-13 14:36:18 +01:00