GPU භාවිතය අධීක්ෂණය (CUDA)


256

මම මගේ පරිගණකයේ CUDA මෙවලම් කට්ටලය ස්ථාපනය කර GPU හි BOINC ව්‍යාපෘතිය ආරම්භ කළෙමි. BOINC හි එය GPU මත ක්‍රියාත්මක වන බව මට පෙනේ, නමුත් GPU - GPU භාවිතය සහ මතක භාවිතය මත ක්‍රියාත්මක වන්නේ කුමක්ද යන්න පිළිබඳ වැඩි විස්තර මට පෙන්විය හැකි මෙවලමක් තිබේද?

Answers:


299

Nvidia GPU සඳහා nvidia-smiමතක භාවිතය, GPU භාවිතය සහ GPU හි උෂ්ණත්වය පෙන්විය හැකි මෙවලමක් තිබේ. ගණනය කිරීමේ ක්‍රියාවලි ලැයිස්තුවක් සහ තවත් විකල්ප කිහිපයක් ඇත, නමුත් මගේ ග්‍රැෆික් කාඩ්පත (GeForce 9600 GT) සඳහා පූර්ණ සහය නොදක්වයි.

Sun May 13 20:02:49 2012       
+------------------------------------------------------+                       
| NVIDIA-SMI 3.295.40   Driver Version: 295.40         |                       
|-------------------------------+----------------------+----------------------+
| Nb.  Name                     | Bus Id        Disp.  | Volatile ECC SB / DB |
| Fan   Temp   Power Usage /Cap | Memory Usage         | GPU Util. Compute M. |
|===============================+======================+======================|
| 0.  GeForce 9600 GT           | 0000:01:00.0  N/A    |       N/A        N/A |
|   0%   51 C  N/A   N/A /  N/A |  90%  459MB /  511MB |  N/A      Default    |
|-------------------------------+----------------------+----------------------|
| Compute processes:                                               GPU Memory |
|  GPU  PID     Process name                                       Usage      |
|=============================================================================|
|  0.           Not Supported                                                 |
+-----------------------------------------------------------------------------+

1
මගේ අයන චිපය භාවිතය ද නොපෙන්වයි. : /
රෆායෙල්

153
watch -n 0.5 nvidia-smi, ඔබේ පර්යන්තය ප්‍රතිදානයෙන් පුරවා නොගෙන ප්‍රතිදානය යාවත්කාලීනව තබයි.
බාර්

46
Ar බාර් හොඳ ඉඟිය. watch -d -n 0.5 nvidia-smiඊටත් වඩා හොඳ වනු ඇත.
zeekvfu

5
@zeekvfu -dධජය කරන්නේ කුමක්ද යන්න පැහැදිලි කිරීම වඩා හොඳ යැයි මම සිතමි
donlucacorleone

9
@donlucacorleone man watchඅපට පවසන්නේ -dධජය මඟින් ප්‍රතිදානයන් අතර ඇති වෙනස්කම් ඉස්මතු කරන බවයි, එම නිසා කාලයත් සමඟ කුමන ප්‍රමිතික වෙනස් වනවාද යන්න ඉස්මතු කිරීමට එය උපකාරී වේ.
ඩේවිඩ් කැසින්ස්කි

83

ලිනක්ස් සඳහා, භාවිතය nvidia-smi -l 1ඔබට තත්පර 1 ක නැවුම් නැවුම් පරතරයකින් gpu භාවිත තොරතුරු අඛණ්ඩව ලබා දෙනු ඇත.


88
watch -n 1 nvidia-smiපර්යන්තය නිමැවුමෙන් පුරවා නොගෙන අඛණ්ඩ යාවත්කාලීන කිරීම් ලබා ගැනීමට මම කැමැත්තෙමි
ali_m

1
ඔරලෝසුව භාවිතා කිරීම යනු කාඩ්පත් ඡන්ද විමසීම සඳහා සෑම තත්පරයකම නව ක්‍රියාවලියක් ආරම්භ කිරීමයි. -L කිරීමට වඩා හොඳය, සෑම තත්පරයකම නොවේ, මම සෑම මිනිත්තුවක්ම හෝ සෑම මිනිත්තු 5 කටම යෝජනා කරමි.
මික් ටී

එම අනුපාතයට නව ක්‍රියාවලියක් ආරම්භ කිරීම එතරම් අහිතකරද?
රිකී රොබින්සන්


55

ඉන්ටෙල් දක්වන GPU හි සඳහා එහි පවතී intel-gpu-toolsසිට http://intellinuxgraphics.org/ විධානය ගෙන එන ව්යාපෘතිය, intel_gpu_top(අනිකුත් කරුණු අතර). එය සමාන වන topඅතර htop, නමුත් විශේෂයෙන් ඉන්ටෙල් ජීපීයූ සඳහා.

   render busy:  18%: ███▋                                   render space: 39/131072
bitstream busy:   0%:                                     bitstream space: 0/131072
  blitter busy:  28%: █████▋                                blitter space: 28/131072

          task  percent busy
           GAM:  33%: ██████▋                 vert fetch: 0 (0/sec)
          GAFS:   3%: ▋                       prim fetch: 0 (0/sec)
            VS:   0%:                      VS invocations: 559188 (150/sec)
            SF:   0%:                      GS invocations: 0 (0/sec)
            VF:   0%:                           GS prims: 0 (0/sec)
            DS:   0%:                      CL invocations: 186396 (50/sec)
            CL:   0%:                           CL prims: 186396 (50/sec)
           SOL:   0%:                      PS invocations: 8191776208 (38576436/sec)
            GS:   0%:                      PS depth pass: 8158502721 (38487525/sec)
            HS:   0%:                      
            TE:   0%:                      
          GAFM:   0%:                      
           SVG:   0%:                      

36

nvidia-smiසමහර ලිනක්ස් යන්ත්‍රවල ක්‍රියා නොකරයි (බොහෝ ගුණාංග සඳහා N / A ලබා දෙයි). ඔබට nvidia-settingsඒ වෙනුවට භාවිතා කළ හැකිය (මැට් කෙල්සි ඔහුගේ පයිතන් පිටපතෙහි භාවිතා කළේද මෙයයි).

nvidia-settings -q GPUUtilization -q useddedicatedgpumemory

ඔබට මෙයද භාවිතා කළ හැකිය:

watch -n0.1 "nvidia-settings -q GPUUtilization -q useddedicatedgpumemory"

අඛණ්ඩ අධීක්ෂණය සඳහා.


4
මෙය අදහස් දැක්වීමක් නොවීම ගැන සතුටුයි. මෙම ප්‍රශ්නය මට හමු වූ විට එය හරියටම මා සෙව්වේ එයයි.
ලකුණු_අන්ඩර්

ස්තූතියි, මෙය මට වැඩ කළේ, මට ජිෆෝර්ස් කාඩ්පතක් ඇති බැවින් එන්වීඩියා-ස්මි සහාය නොදක්වයි.
alexg

4
ඔබට nvidia-settings -q allනිරීක්ෂණය කළ හැකි වෙනත් පරාමිතීන් මොනවාදැයි බැලීමට ඔබට කළ හැකිය. මම අධීක්ෂණය GPUCurrentProcessorClockFreqsසහ GPUCurrentClockFreqs.
alexg

1
ස්තූතියි මිනිසා, සෑම කාඩ්පතකම නිරීක්ෂණය කිරීමට විවිධ නූල් තිබිය හැකි බැවින් සියල්ල විමසීමට හොඳ අදහසක්!
ruoho ruotsi

ඔබට අංකය සහ වෙනත් කිසිවක් අවශ්‍ය නම් (උදා: කොන්කි සඳහා) මෙය භාවිතා කරන්න:nvidia-settings -q [gpu:0]/UsedDedicatedGPUMemory -t
hLk

20

ලිනක්ස් සඳහා, මා විසින්ම ලියන ලද මෙම HTOP මෙවලම භාවිතා කරමි. එය GPU උෂ්ණත්වය මෙන්ම හරය / VRAM / PCI-E සහ මතක බස් භාවිතය පිළිබඳ දළ විශ්ලේෂණයක් ලබා දෙයි. එය GPU හි ක්‍රියාත්මක වන්නේ කුමක් දැයි නිරීක්ෂණය නොකරයි.

gmonitor

රූප විස්තරය මෙහි ඇතුළත් කරන්න


1
nvidia-settingsධාවනය වන X11 අවශ්‍ය වේ, එය සැමවිටම එසේ නොවේ.
වික්ටර් සර්ජියන්කෝ

කරදරයකින් තොරව මා වෙනුවෙන් වැඩ කරයි!
හෙනාඩි මදන්

16

සම්පූර්ණත්වය සඳහා, AMD හට විකල්ප දෙකක් තිබේ:

  1. fglrx (සංවෘත ප්‍රභව ධාවක).

    $ aticonfig --odgc --odgt
    
  2. mesa (විවෘත කේත ධාවක), ඔබට RadeonTop භාවිතා කළ හැකිය .

    සමස්ත ක්‍රියාකාරකම් ප්‍රතිශතය සහ තනි කොටස් සඳහා ඔබගේ GPU භාවිතය බලන්න.


14

මා සතුව GeForce 1060 GTX වීඩියෝ කාඩ්පතක් ඇති අතර පහත දැක්වෙන විධානය මඟින් කාඩ්පත් භාවිතය, උෂ්ණත්වය, විදුලි පංකා වේගය සහ බලශක්ති පරිභෝජනය පිළිබඳ තොරතුරු ලබා දෙන බව මට පෙනී ගියේය:

$ nvidia-smi --format=csv --query-gpu=power.draw,utilization.gpu,fan.speed,temperature.gpu

ඔබට සියලු විමසුම් විකල්ප ලැයිස්තුවක් දැක ගත හැකිය:

$ nvidia-smi --help-query-gpu

1
එය එකතු කිරීම memory.usedහෝ ( memory.free) ද වටී .
සොල්ටන්

3

OS X සඳහා

කඳුකර සිංහයා ඇතුළුව

iStat මෙනු

කඳුකර සිංහයා හැර

atMonitor

GPU ආශ්‍රිත විශේෂාංග සඳහා සහය දැක්වීම සඳහා atMonitor හි අවසාන අනුවාදය මොනිටර් 2.7.1 වේ.

- සහ 2.7.1 වෙත සබැඳිය 2.7b ලබා දෙයි.

යෙදුමේ නවතම අනුවාදය සඳහා, atMonitor - FAQ පැහැදිලි කරයි:

AtMonitor මැකෝස් 10.8 සමඟ අනුකූල වීම සඳහා අපි GPU ආශ්‍රිත සියලුම අංග ඉවත් කර ඇත්තෙමු.

මම මවුන්ටන් ලයන් හි 2.7b aka 2.7.1 සමඟ මැක්බුක්ප්‍රෝ 5,2 සමඟ NVIDIA GeForce 9600M GT සමඟ අත්හදා බැලුවෙමි. යෙදුම ඉවත් වීමට පෙර තත්පර කිහිපයක් ධාවනය වූ අතර, එය උෂ්ණත්වය පෙන්නුම් කළ නමුත් භාවිතය නොවේ:

                                                  මවුන්ටන් ලයන් හි මොනිටර් 2.7 බී හි තිර රුව


3

මට ක්‍රියාවලි අවසන් වී ඇත (බොහෝ විට මිය ගොස් හෝ බිඳ වැටී ඇත) සහ සම්පත් දිගටම භාවිතා කරයි, නමුත් ලැයිස්තුගත කර නොමැත nvidia-smi. සාමාන්‍යයෙන් මෙම ක්‍රියාදාමයන් හුදෙක් gpu මතකය ගනී.

ඔබට GPU එකක සම්පත් භාවිතා කිරීමේ ක්‍රියාවලියක් ඇතැයි ඔබ සිතන්නේ නම් සහ එය පෙන්වන්නේ නැත nvidia-smi, ඔබට මෙම විධානය දෙවරක් පරීක්ෂා කිරීමට උත්සාහ කළ හැකිය. ඔබගේ GPU භාවිතා කරන්නේ කුමන ක්‍රියාදාමයන්ද යන්න එය ඔබට පෙන්වයි.

sudo fuser -v /dev/nvidia*

මෙය EL7, උබුන්ටු හෝ වෙනත් බෙදාහැරීම් වල ක්‍රියා කරන අතර ඒවායේ එන්වීඩියා උපාංග වෙනත් නමක් / ස්ථානයක් යටතේ ලැයිස්තුගත කර තිබිය හැකිය.




2

ලිනක්ස් හි එන්වීඩියා සඳහා මම පහත සඳහන් පයිතන් ස්ක්‍රිප්ට් භාවිතා කරන අතර එය විකල්ප ප්‍රමාදයක් භාවිතා කරන අතර අයෝස්ටැට් සහ වීඑම්ස්ටැට් වැනි නැවත නැවත කරන්න

https://gist.github.com/matpalm/9c0c7c6a6f3681a0d39d

$ gpu_stat.py 1 2
{"util":{"PCIe":"0", "memory":"10", "video":"0", "graphics":"11"}, "used_mem":"161", "time": 1424839016}
{"util":{"PCIe":"0", "memory":"10", "video":"0", "graphics":"9"}, "used_mem":"161", "time":1424839018}

1

පහත දැක්වෙන ශ්‍රිතය මඟින් PID, පරිශීලක නාමය, CPU භාවිතය, මතක භාවිතය, GPU මතක භාවිතය, ක්‍රමලේඛ තර්ක සහ GPU මත ක්‍රියාත්මක වන ක්‍රියාවලි වල වේලාව වැනි තොරතුරු ප්‍රතිදානය සඳහා එකතු කරයි nvidia-smi:

function better-nvidia-smi () {
    nvidia-smi
    join -1 1 -2 3 \
        <(nvidia-smi --query-compute-apps=pid,used_memory \
                     --format=csv \
          | sed "s/ //g" | sed "s/,/ /g" \
          | awk 'NR<=1 {print toupper($0)} NR>1 {print $0}' \
          | sed "/\[NotSupported\]/d" \
          | awk 'NR<=1{print $0;next}{print $0| "sort -k1"}') \
        <(ps -a -o user,pgrp,pid,pcpu,pmem,time,command \
          | awk 'NR<=1{print $0;next}{print $0| "sort -k3"}') \
        | column -t
}

උදාහරණ ප්‍රතිදානය:

$ better-nvidia-smi
Fri Sep 29 16:52:58 2017
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 378.13                 Driver Version: 378.13                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GT 730      Off  | 0000:01:00.0     N/A |                  N/A |
| 32%   49C    P8    N/A /  N/A |    872MiB /   976MiB |     N/A      Default |
+-------------------------------+----------------------+----------------------+
|   1  Graphics Device     Off  | 0000:06:00.0     Off |                  N/A |
| 23%   35C    P8    17W / 250W |    199MiB / 11172MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|    0                  Not Supported                                         |
|    1      5113    C   python                                         187MiB |
+-----------------------------------------------------------------------------+
PID   USED_GPU_MEMORY[MIB]  USER    PGRP  %CPU  %MEM   TIME      COMMAND
9178  187MiB                tmborn  9175  129   2.6    04:32:19  ../path/to/python script.py args 42

ප්රවේශම්, මම හිතන්නේ නැහැ, ps විසින් ලබා දී ඇති pmem ගිණුමට දක්වන GPU මුළු මතක ගනී නමුත් CPU බව ps "Nvidia දක්වන GPU" නොදන්නා නිසා
SebMa

1

ඔයාට පාවිච්චි කරන්න පුළුවන්

nvidia-smi pmon -i 0

පරිගණක / ග්‍රැෆික් ප්‍රකාරය, sm භාවිතය, මතක භාවිතය, කේතීකරණ භාවිතය, විකේතක භාවිතය ඇතුළුව GPU 0 හි සෑම ක්‍රියාවලියක්ම නිරීක්ෂණය කිරීමට.


0

මෙම ස්ක්‍රිප්ට් වඩාත් කියවිය හැකි අතර එය පහසු මෝඩ් සහ දිගු සඳහා නිර්මාණය කර ඇත.

ඔබට ඔබේ ප්‍රියතම ටර්මිනල් කවුළු වැඩසටහන සමඟ gnome-terminal ආදේශ කළ හැකිය.


#! /bin/bash

if [ "$1" = "--guts" ]; then
    echo; echo "    ctrl-c to gracefully close"
    f "$a"
    f "$b"
    exit 0; fi

# easy to customize here using "nvidia-smi --help-query-gpu" as a guide
a='--query-gpu=pstate,memory.used,utilization.memory,utilization.gpu,encoder.stats.sessionCount'
b='--query-gpu=encoder.stats.averageFps,encoder.stats.averageLatency,temperature.gpu,power.draw'
p=0.5    # refresh period in seconds
s=110x9  # view port as width_in_chars x line_count

c="s/^/    /; s/, +/\t/g"
t="`echo '' |tr '\n' '\t'`"
function f() { echo; nvidia-smi --format=csv "$1" |sed -r "$c" |column -t "-s$t" "-o   "; }
export c t a b; export -f f
gnome-terminal --hide-menubar --geometry=$s -- watch -t -n$p "`readlink -f \"$0\"`" --guts

#

බලපත්‍රය: GNU GPLv2, TranSeed Research


0

මම, ලබා ගත හැකි පිළිතුරු (සමහර විට අදහසක් හැර) එය දුටුවේ නැත මා ඔබ නැවුම් වූ සදයට ලබා ගත හැක බව එක් වේවි කියලා ඒ නිසා nvidia-smiසමග watch. මෙය නිරන්තරයෙන් අනුචලනය කරනවාට වඩා එක් එක් යාවත්කාලීන කිරීම් සමඟ තිරය නැවුම් කරයි.

watch -n 1 nvidia-smi

තත්පර පරතර යාවත්කාලීන කිරීම් සඳහා. 1භාගික තත්පර ඇතුළුව ඔබට අවශ්‍ය ඕනෑම දෙයක් ආදේශ කරන්න :

watch -n 5 nvidia-smi
watch -n 0.1 nvidia-smi
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.