জিপিইউ ব্যবহার পর্যবেক্ষণ (সিউডিএ)


222

আমি আমার কম্পিউটারে চুদা টুলকিট ইনস্টল করেছি এবং জিপিইউতে BOINC প্রকল্প শুরু করেছি। BOINC এ আমি দেখতে পাচ্ছি যে এটি জিপিইউতে চলছে, তবে এমন একটি সরঞ্জাম রয়েছে যা আমাকে জিপিইউ - জিপিইউ ব্যবহার এবং মেমরির ব্যবহারের উপর চলছে তা সম্পর্কে আরও বিশদ প্রদর্শন করতে পারে?

উত্তর:


250

এনভিডিয়া জিপিইউগুলির জন্য একটি সরঞ্জাম রয়েছে nvidia-smiযা মেমরির ব্যবহার, জিপিইউর ব্যবহার এবং জিপিইউর তাপমাত্রা প্রদর্শন করতে পারে। এছাড়াও গণনা প্রক্রিয়াগুলির একটি তালিকা রয়েছে এবং আরও কয়েকটি বিকল্প রয়েছে তবে আমার গ্রাফিক কার্ড (জিফোর্স 9600 জিটি) পুরোপুরি সমর্থিত নয়।

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
আমার আইওন চিপটি ব্যবহারও দেখায় না। : /
রাফেল

123
watch -n 0.5 nvidia-smi, আউটপুট দিয়ে আপনার টার্মিনালটি পূরণ না করে আউটপুট আপডেট রাখবে।
বার

31
@ বার ভাল টিপস। watch -d -n 0.5 nvidia-smiআরও ভাল হবে।
zeekvfu

3
@zeekvfu আমি মনে করি -dপতাকাটি কী করে তা ব্যাখ্যা করা ভাল হবে
donlucacorleone

5
@ ডনলুয়াকোরলিওন man watchআমাদের জানিয়েছে -dপতাকাটি আউটপুটগুলির মধ্যে পার্থক্যগুলি হাইলাইট করে, তাই এটি সময়ের সাথে সাথে কোন মেট্রিকগুলি পরিবর্তন হচ্ছে তা হাইলাইট করতে সহায়তা করতে পারে।
ডেভিড ক্যাসিনস্কি

70

লিনাক্সের জন্য, ব্যবহার nvidia-smi -l 1আপনাকে ক্রমাগত 1 সেকেন্ডের রিফ্রেশ ব্যবধান সহ জিপিইউ ব্যবহারের তথ্য দেয়।


73
আমি watch -n 1 nvidia-smiআউটপুট দিয়ে টার্মিনালটি পূরণ না করে অবিচ্ছিন্ন আপডেটগুলি ব্যবহার করতে পছন্দ করি
ali_m

1
ঘড়ি ব্যবহারের অর্থ কার্ডগুলি পোল করার জন্য প্রতি সেকেন্ডে আপনার নতুন প্রক্রিয়া শুরু করা। -ল করা ভাল, এবং প্রতি সেকেন্ডে নয়, আমি প্রতি মিনিটে বা প্রতি 5 মিনিটে পরামর্শ দেব।
মিক টি


55

ইন্টেল জিপিইউ-র জন্য এখানে http://intellinuxرافics.org/ প্রকল্প intel-gpu-toolsথেকে উপস্থিত রয়েছে , যা কমান্ডটি নিয়ে আসে (অন্যান্য জিনিসের মধ্যে)। এটি অনুরূপ এবং বিশেষত ইন্টেল জিপিইউর জন্য।intel_gpu_toptophtop

   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%:                      

35

nvidia-smiকিছু লিনাক্স মেশিনে কাজ করে না (অনেক বৈশিষ্ট্যের জন্য এন / এ প্রদান করে)। আপনি তার nvidia-settingsপরিবর্তে ব্যবহার করতে পারেন (এটি তার মাদুর স্ক্রিপ্টে মাদুর কেলসিও ব্যবহৃত হয়েছিল)।

nvidia-settings -q GPUUtilization -q useddedicatedgpumemory

আপনি এটি ব্যবহার করতে পারেন:

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

অবিচ্ছিন্ন পর্যবেক্ষণ জন্য।


4
খুশি এই মন্তব্য ছিল না। আমি এই প্রশ্নটি যখন এসেছিলাম ঠিক তখনই আমি এটির জন্য অনুসন্ধান করছিলাম।
স্কোর_উইন্ড

ধন্যবাদ, এটি আমার পক্ষে কাজ করেছে, যেহেতু আমার কাছে একটি জিফর্স কার্ড রয়েছে যা এনভিডিয়া-এসএমআই সমর্থন করে না।
অ্যালেক্স

4
আপনি nvidia-settings -q allকী কী প্যারামিটারগুলি পর্যবেক্ষণ করতে পারেন তা দেখতে আপনি করতে পারেন। আমি নিরীক্ষণ করছি GPUCurrentProcessorClockFreqsএবং GPUCurrentClockFreqs
অ্যালেক্স

1
ধন্যবাদ ম্যান, সকলকে জিজ্ঞাসা করার জন্য ভাল ধারণা, যেহেতু প্রতিটি কার্ডের মনিটরের জন্য আলাদা স্ট্রিং থাকতে পারে!
রুহো রুটসী

আপনি যদি কেবল সংখ্যাটি চান এবং অন্য কিছু না (যেমন, nvidia-settings -q [gpu:0]/UsedDedicatedGPUMemory -t
কঙ্কির

16

লিনাক্সের জন্য, আমি এই HTTP মতো সরঞ্জামটি ব্যবহার করি যা আমি নিজে লিখেছিলাম। এটি জিপিইউ তাপমাত্রার পাশাপাশি কোর / ভিআরএএম / পিসিআই-ই এবং মেমরির বাসের ব্যবহারের উপর নজরদারি ও সংক্ষিপ্তসার দেয়। এটি জিপিইউতে কী চলছে তা নিরীক্ষণ করে না।

gmonitor

এখানে চিত্র বর্ণনা লিখুন


1
nvidia-settingsএকটি চলমান এক্স 11 প্রয়োজন, যা সবসময় হয় না।
ভিক্টর সার্জিইঙ্কো

কোন ঝামেলা ছাড়াই আমার জন্য কাজ করে!
হেনাদাদি মাদান

15

সম্পূর্ণতার জন্য, এএমডির দুটি বিকল্প রয়েছে:

  1. fglrx (বদ্ধ উত্স ড্রাইভার)।

    $ aticonfig --odgc --odgt
    
  2. mesa (ওপেন সোর্স ড্রাইভার), আপনি RadeonTop ব্যবহার করতে পারেন ।

    মোট ক্রিয়াকলাপ শতাংশ এবং স্বতন্ত্র ব্লক উভয়ের জন্য আপনার জিপিইউ ব্যবহার দেখুন।


13

আমার একটি জিফর্স 1060 জিটিএক্স ভিডিও কার্ড রয়েছে এবং আমি দেখতে পেয়েছি যে নিম্নলিখিত কমান্ডটি কার্ডের ব্যবহার, তাপমাত্রা, ফ্যানের গতি এবং বিদ্যুত ব্যবহার সম্পর্কে আমাকে তথ্য দেয়:

$ 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

ওএস এক্স এর জন্য

মাউন্টেন সিংহ সহ

আইস্ট্যাট মেনু

মাউন্টেন সিংহ বাদে

atMonitor

জিপিইউ সম্পর্কিত বৈশিষ্ট্যগুলিকে সমর্থন করার জন্য atMonitor এর শেষ সংস্করণটি atMonitor 2.7.1।

- এবং 2.7.1 এর লিঙ্কটি 2.7 বি সরবরাহ করে।

অ্যাপ্লিকেশনটির আরও সাম্প্রতিক সংস্করণের জন্য atMonitor - এফএকিউ ব্যাখ্যা করে:

MacOS 10.8 এর সাথে atMonitor সামঞ্জস্য করতে আমরা GPU সম্পর্কিত সমস্ত বৈশিষ্ট্য সরিয়ে ফেলেছি।

আমি এনভিআইডিআইএ জিফর্স 9600 এম জিটি দিয়ে একটি ম্যাকবুকপ্রো 5,2 দিয়ে মাউন্টেন লায়নটিতে 2.7b ওরফে 2.7.1 দিয়ে পরীক্ষা করেছি। ছাড়ার আগে অ্যাপটি কয়েক সেকেন্ড চলছিল, এটি তাপমাত্রা দেখিয়েছিল তবে ব্যবহার নয়:

                                                  পর্বত সিংহটিতে মনিটরের ২.7 বি স্ক্রিনশট


3

আমার প্রক্রিয়াগুলি সমাপ্ত হয়েছে (সম্ভবত নিহত বা ক্র্যাশ হয়েছে) এবং সংস্থানগুলি ব্যবহার করা চালিয়ে গেছে, তবে তালিকাভুক্ত করা হয়নি nvidia-smi। সাধারণত এই প্রক্রিয়াগুলি কেবল জিপিইউ মেমরি গ্রহণ করে।

আপনি যদি ভাবেন যে কোনও জিপিইউতে সংস্থান ব্যবহার করে আপনার কোনও প্রক্রিয়া রয়েছে এবং এটি প্রদর্শিত হচ্ছে না nvidia-smi, আপনি ডাবল চেক করতে এই কমান্ডটি চালানোর চেষ্টা করতে পারেন। এটি আপনাকে দেখায় যে কোন প্রসেসগুলি আপনার জিপিইউগুলি ব্যবহার করছে।

sudo fuser -v /dev/nvidia*

এটি EL7, উবুন্টু বা অন্যান্য বিতরণে কাজ করে তাদের এনভিডিয়া ডিভাইস অন্য নাম / অবস্থানের নীচে তালিকাভুক্ত থাকতে পারে।



2

লিনাক্সে এনভিডিয়া জন্য আমি নিম্নলিখিত পাইথন স্ক্রিপ্টটি ব্যবহার করি যা একটি alচ্ছিক বিলম্ব ব্যবহার করে এবং আইওস্যাট এবং ভিএমস্ট্যাট এর মতো পুনরাবৃত্তি করে

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

নিম্নলিখিত ফাংশনটি পিআইডি, ব্যবহারকারীর নাম, সিপিইউ ব্যবহার, মেমরির ব্যবহার, জিপিইউ মেমরির ব্যবহার, প্রোগ্রাম আর্গুমেন্ট এবং জিপিইউতে চালিত প্রক্রিয়াগুলির রান টাইম হিসাবে তথ্য আউটপুট যুক্ত করে 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 "এনভিডিয়া জিপিইউ" সচেতন নয়
SebMa

0

এই স্ক্রিপ্টটি আরও পঠনযোগ্য এবং সহজেই মোড এবং এক্সটেনশনের জন্য ডিজাইন করা হয়েছে।

আপনি আপনার প্রিয় টার্মিনাল উইন্ডো প্রোগ্রামের সাথে জিনোম-টার্মিনাল প্রতিস্থাপন করতে পারেন।


#! /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

#

লাইসেন্স: জিএনইউ জিপিএলভি 2, ট্রানসিড গবেষণা


0

তুমি ব্যবহার করতে পার

nvidia-smi pmon -i 0

গণ্য / গ্রাফিক মোড, এসএম ব্যবহার, মেমরির ব্যবহার, এনকোডার ব্যবহার, ডিকোডার ব্যবহার সহ জিপিইউ 0 তে প্রতিটি প্রক্রিয়া নিরীক্ষণ করতে।


0

আমি প্রাপ্তিসাধ্য উত্তর এটি দেখতে না (হয়তো একটি মন্তব্যে ব্যতীত), তাই আমি ভাবলাম যোগ চাই যে আপনি একটা সুন্দর রিফ্রেশ পেতে পারেন nvidia-smiসঙ্গে watch। এটি ক্রমাগত স্ক্রোল না করে প্রতিটি আপডেটের সাথে পর্দা সতেজ করে।

watch -n 1 nvidia-smi

এক দ্বিতীয় বিরতি আপডেটের জন্য। 1ভগ্নাংশ সেকেন্ড সহ আপনি যা চান তা প্রতিস্থাপন করুন :

watch -n 5 nvidia-smi
watch -n 0.1 nvidia-smi
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.