web-dev-qa-db-ja.com

GPU情報を取得する方法は?

私と同じ情報を提供するコマンドを探しています:

cat /proc/cpuinfo 

GPU(チップとメモリの種類、周波数)を除きます。

152
user2413

そのタイプの情報は非標準であり、それを収集するために使用するツールは大きく異なります。

コマンドglxinfoは、ドライバーが正しくインストールされている場合、ベンダー名を含むグラフィックプロセッサの利用可能なOpenGL情報をすべて提供します。

クロック速度の情報を取得するための標準ツールはありません。

  • ATI/AMD GPUの場合、aticonfig --odgcはクロックレートを取得し、aticonfig --odgtは温度データを取得します。
  • NVIDIA GPUの場合、nvclockプログラムは同じ情報を取得します。

私は、オープンソースドライバーまたはIntelまたはその他のGPUに対応するツールを知りません。

ハードウェアに関するその他の情報は、lspciおよびlshwツールから取得できます。

74
greyfade

私は直接同等のものを知りませんが、lshwはあなたが望む情報を与えるはずです、試してください:

Sudo lshw -C display

Sudoがなくても機能しますが、情報が不完全/正確でない可能性があります)

パッケージlshw-gtkをインストールしてGUIを取得することもできます。

146
Marcel Stimberg

コマンドラインで行われた作業に焦点を当てたブログ投稿はこちらです:

http://www.cyberciti.biz/faq/howto-find-linux-vga-video-card-ram/

デバイスIDを確認します。

 lspci | grep ' VGA ' | cut -d" " -f 1
03:00.0

その後、この出力をlspciで再び使用して、2つのネストされたコマンドを形成できます

lspci  -v -s  $(lspci | grep ' VGA ' | cut -d" " -f 1)

複数のGPUカードがある場合は、代わりに次の同等のコマンドを試してください。

lspci | grep ' VGA ' | cut -d" " -f 1 | xargs -i lspci -v -s {}

私のシステムからの出力:

03:00.0 VGA compatible controller: NVIDIA Corporation G98 [Quadro NVS 295] (rev a1) (prog-if 00 [VGA controller])
    Subsystem: NVIDIA Corporation Device 062e
    Flags: bus master, fast devsel, latency 0, IRQ 24
    Memory at f6000000 (32-bit, non-prefetchable) [size=16M]
    Memory at ec000000 (64-bit, prefetchable) [size=64M]
    Memory at f4000000 (64-bit, non-prefetchable) [size=32M]
    I/O ports at dc80 [size=128]
    [virtual] Expansion ROM at f7e00000 [disabled] [size=128K]
    Capabilities: <access denied>
    Kernel driver in use: nvidia

編集:Sudoで起動すると、<access denied>を回避できます

したがって、(prefetchable) [size=64M)は、64 MBのNVIDIAカードがあることを示しています。ただし、そうではなく、256 MBです。どうして?下記参照。

最大限の情報とパフォーマンスを引き出す方法については、Arch-Linux Wikiの非常に包括的な記事を読んでください。

https://wiki.archlinux.org/index.php/NVIDIA

nvidiaユーザーの場合、

nvidia-smi

(これは、インストールされているNvidiaドライバーで動作しますが、オープンソースの「nouveau」ドライバーを実行しているシステムでは動作しません)。

出力

Thu Dec 19 10:54:18 2013       
+------------------------------------------------------+                       
| NVIDIA-SMI 5.319.60   Driver Version: 319.60         |                       
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  Quadro NVS 295      Off  | 0000:03:00.0     N/A |                  N/A |
| N/A   73C  N/A     N/A /  N/A |      252MB /   255MB |     N/A      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Compute processes:                                               GPU Memory |
|  GPU       PID  Process name                                     Usage      |
|=============================================================================|
|    0            Not Supported                                               |
+-----------------------------------------------------------------------------+

これは、256 MB GDDR3グラフィックスカードがあることを示しています。

現時点では、IntelおよびAMD/ATI GPUでこれを取得する方法がわかりません。

79
knb

google-chromeを実行し、URL about:gpuに移動します。 chromeがOpenGLの使用方法を見つけた場合、GPUに関する非常に詳細な情報を取得できます。

47
Chris Uhlik

Nvidiaカード用。

1番目のGPU

> cat /proc/driver/nvidia/gpus/0/information
Model:       GeForce GTX 680
IRQ:         24
GPU UUID:    GPU-71541068-cded-8a1b-1d7e-a093a09e9842
Video BIOS:      80.04.09.00.01
Bus Type:    PCIe
DMA Size:    40 bits
DMA Mask:    0xffffffffff
Bus Location:    0000:01.00.0

2番目のGPU

> cat /proc/driver/nvidia/gpus/1/information
Model:       GeForce GTX 580
IRQ:         33
GPU UUID:    GPU-64b1235c-51fc-d6f1-0f0e-fa70320f7a47
Video BIOS:      70.10.20.00.01
Bus Type:    PCIe
DMA Size:    40 bits
DMA Mask:    0xffffffffff
Bus Location:    0000:08.00.0
29
Matt H

clinfo

Sudo apt-get install clinfo
clinfo

glxinfoに類似していますが、OpenCL用です。

nvidia-settings

ランタイムをいくつかの静的情報と混合します。

enter image description here

詳細: buntuがNVIDIAグラフィックスカードを使用しているかどうかを確認するにはどうすればよいですか?

Nvidiaカードの場合、次を入力します

nvidia-smi -q
10
Quanlong

これに最適なオプションは neofetch であると思います。

# Get neofetch
Sudo add-apt-repository ppa:dawidd0811/neofetch
Sudo apt update
Sudo apt get neofetch
# Run neofetch
neofetch

これにより、次のような出力が得られます。

7
HaoZeke

コンキまたはターミナルスプラッシュスクリーン

2つの方法を使用して、nVidia GPUおよびIntel iGPU情報を自動的に表示します。

  • ConkyはGPU情報をリアルタイムで動的に表示します
  • ~/.bashrcは、ターミナルを開くたびにGPU情報を表示します

Conkyリアルタイム表示

この例では、Conkyを使用して、現在のGPU(nVidiaまたはIntel)の統計をリアルタイムで表示します。 Conkyは、多くのLinux愛好家の間で人気のある軽量のシステムモニターです。

prime-select intelまたはprime-select nvidiaの後に起動したかどうかによって表示が変わります。

Intel iGPU

gpu temp intel.gif

  • Intel iGPUは、現在の周波数でSkylake GT2 HD 530 iGPUとして表示されます
  • 最小周波数は350 MHzで、最大周波数は1050 MHzです

nVidia GPU

gpu temp nvidia.gif

  • NVidia GPUは、現在のGPU周波数と温度でGeForce GTX970Mとして表示されます
  • ドライバーのバージョン、P-State、およびBIOSバージョンが表示されます
  • GPU負荷、RAM使用、消費電力、RAM周波数が表示されます

コンキーコード

Intel iGPUおよびnVidia GPUに関連するConkyスクリプトは次のとおりです。

#------------+
# Intel iGPU |
#------------+
${color orange}${hr 1}${if_match "intel" == "${execpi 99999 prime-select query}"}
${color2}${voffset 5}Intel® Skylake GT2 HD 530 iGPU @${alignr}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_cur_freq_mhz)} MHz
${color}${goto 13}Min. Freq:${goto 120}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_min_freq_mhz)} MHz${color}${goto 210}Max. Freq:${alignr}${color green}${execpi .001 (cat /sys/class/drm/card1/gt_max_freq_mhz)} MHz
${color orange}${hr 1}${else}
#------------+
# Nvidia GPU |
#------------+
${color2}${voffset 5}${execpi .001 (nvidia-smi --query-gpu=gpu_name --format=csv,noheader)} ${color1}@ ${color green}${execpi .001 (nvidia-smi --query-gpu=clocks.sm --format=csv,noheader)} ${alignr}${color1}Temp: ${color green}${execpi .001 (nvidia-smi --query-gpu=temperature.gpu --format=csv,noheader)}°C
${color1}${voffset 5}Ver: ${color green}${execpi .001 (nvidia-smi --query-gpu=driver_version --format=csv,noheader)} ${color1} P-State: ${color green}${execpi .001 (nvidia-smi --query-gpu=pstate --format=csv,noheader)} ${alignr}${color1}BIOS: ${color green}${execpi .001 (nvidia-smi --query-gpu=vbios_version --format=csv,noheader)}
${color1}${voffset 5}GPU:${color green}${execpi .001 (nvidia-smi --query-gpu=utilization.gpu --format=csv,noheader)} ${color1}Ram:${color green}${execpi .001 (nvidia-smi --query-gpu=utilization.memory --format=csv,noheader)} ${color1}Pwr:${color green}${execpi .001 (nvidia-smi --query-gpu=power.draw --format=csv,noheader)} ${alignr}${color1}Freq: ${color green}${execpi .001 (nvidia-smi --query-gpu=clocks.mem --format=csv,noheader)}
${color orange}${hr 1}${endif}

~/.bashrc端末スプラッシュ画面

この例では、~/.bashrcを変更して、端末を開くたびに、またはシェルプロンプトで. .bashrcと入力するたびに、スプラッシュスクリーンに情報を表示します。

以前に答えたneofetchに加えて、screenfetchがあります。さらに、iGPUをリストする方法がわからないという別の回答があります。

ubuntu terminal splash.png

セットアップの詳細については、次を参照してください: 天気、カレンダー、時刻、およびSysinfoを含む端末スプラッシュスクリーン?

GPU情報を含むUbuntuディスプレイの最後のセクション(最後の2行目)の要約だけを以下に示します。

Sudo apt install screenfetch
screenfetch

screenfetchコマンドを~/.bashrcファイルの最後に配置して、ターミナルを開くたびに表示されるようにする必要があります。

5

https://wiki.debian.org/NvidiaGraphicsDrivers#NVIDIA_Proprietary_Driver によると、基本を見つけるだけです。

lspci | grep VGA

それ以上の詳細が必要な場合は、@ knbの answer を参照してください。

3
mightypile

これは本当にそれほど複雑ではありませんモデルとメモリについては、メーカー(Intel、AMD、NVIDIA)に関係なく、テストしたすべてのビデオカードで機能する1つのライナーがあります。

GPU=$(lspci | grep VGA | cut -d ":" -f3);RAM=$(cardid=$(lspci | grep VGA |cut -d " " -f1);lspci -v -s $cardid | grep " prefetchable"| cut -d "=" -f2);echo $GPU $RAM

GPU =このビットは、ビデオチップに対応するVGAの「grep」を介してフィルタリングされた「lspci」出力から3番目のフィールドを取得します。

RAM =このビットはすべて、変数cardidを「VGA」に一致するlspciからの出力の最初のフィールドに設定し、特定の-vデバイスのlspciからの-s冗長出力の要求としてフィードし、さらにフィルタリングします文字列「プリフェッチ可能」のgrepによる出力。これにはカード自体のメモリが含まれます(出力の「プリフェッチ不可能」と一致させたくないため、前のスペースに注意してください)。

Intel統合グラフィックスのクロックレート用(I3およびI5でテスト済み)

コマンドSudo find /sys -type f -name gt_cur* -print0 | xargs -0 catを実行します。これは/ sysツリーに飛び込み、私のI3では/sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_cur_freq_mhzであるgt_cur_freq_mhzファイルを見つけ、コンテンツを印刷します。私の場合、非常に軽い負荷では、350にある最小周波数に対応する350 MHzのように/sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_min_freq_mhzであり、glxgearsおよびglmark2を実行すると、1050にある最大周波数に対応する1050 MHzのように/sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_max_freq_mhzになります

NVIDIAカードのクロックレートの場合:

nvidia-smi -stats -d procClkはGPUクロックに対応しますnvidia-smi -stats -d memClkはメモリクロックに対応します。

注:信頼できるGeForce 210はサポートされていないため、上記をテストすることはできません。これは、「nvidia-smi -stats --help」で示されているように、Kepler以降のGPUでのみ機能します

現在、AMDカードのクロックレートのソリューションはなく、テストに使用できるハードウェアもありません。しかし、私の知る限り、受け入れられた回答で言及されたaticonfigはもはや存在せず、信頼できる以降、nvclockは利用できないようです。

3
Elder Geek

簡単な情報が必要な場合は、 gpustat を試してください。それは非常に良くてシンプルです。

gpustat screenshot

著者は、次のインストール手順を提供します。

PyPIからインストールします。

pip install gpustat 

Pipを使用して最新バージョン(マスターブランチ)をインストールするには:

pip install git+https://github.com/wookayin/gpustat.git@master 

ルート権限がない場合は、ユーザー名前空間pip install --userにインストールしてみてください。 v0.4以降、gpustat.pyは依存関係ゼロの実行可能ファイルではなくなったことに注意してください。ただし、まれに単一の実行可能スクリプト(レガシー)が必要になる場合もあります。

wget https://raw.githubusercontent.com/wookayin/gpustat/v0.3.2/gpustat.py -O ~/.local/bin/gpustat chmod +x ~/.local/bin/gpustat    # Assuming ~/.local/bin is in your $PATH
2
Nufa

Croutonを搭載したChromebookでUbuntuを実行している場合、有効な答えはChromeブラウザーのchrome://gpuのみです。

2
k26dr

さて、この回答は、NVIDIA-GPUを搭載したサーバーがあることを前提としています。次の3つの方法があります。

  1. 短い要点を取得するには:nvidia-smi

  2. 詳細を取得するには:nvidia-smi -q。 1 GPU以上の場合、詳細情報の複数の画面が表示されます。

  3. ls /proc/driver/nvidia/gpus/を実行します。 GPUバスの場所をフォルダーとして表示します。次に、GPUバスの場所ごとに次のコマンドを実行します。 <gpu-id>にバスの場所を入力します:cat /proc/driver/nvidia/gpus/<gpu_id>/information

2

Intel GMA950(特にEeePCに付属)の場合、次を実行できます。

setpci -s 00:02.0 f0.b

200MHzの場合は「00」、250MHzの場合は「01」、400MHzの場合は「03」が返されます。他のIntelカードにも同じ原則を適用できる場合があります。

1
user10872

Nvidia GPUの場合、nvidia-smiコマンドがあなたの友達です。 man nvidia-smiをご覧ください。

GPUをリストするには、nvidia-smi -Lnvidia-smi --list-gpus)、nvidia-smi -qを使用して、gpuおよび実行中のプロセスに関する情報を提供します。

1
Memin

AMD Radeonカードをお持ちの場合、次のコマンドを実行できます。

Sudo update-pciids #optional command, requires internet
lspci -nn | grep -E 'VGA|Display'

このような何かを報告する必要があります

00:01.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Wani [Radeon R5/R6/R7 Graphics] [1002:9874] (rev c5)
03:00.0 Display controller [0380]: Advanced Micro Devices, Inc. [AMD/ATI] Sun XT [Radeon HD 8670A/8670M/8690M / R5 M330 / M430 / R7 M520] [1002:6660] (rev ff)
1
Nerrve

グラフィックプロセッサに関するすべての情報を取得するには、@ greyfadeで指定された次のコマンドを使用できます。

> glxinfo

ただし、プログラムglxinfoが現在インストールされていない場合は、次のように入力してインストールできます。

> Sudo apt install mesa-utils

また、universeというコンポーネントを有効にする必要があります。これが完了すると、glxinfoはその環境のグラフィックプロセッサに関連するすべての仕様を一覧表示します。

0

lspcilspci -vを使用して、基本情報を取得します here を参照してください。

Exの場合、lspciを実行すると、次のようになります。

dina@dina-X450LA:~$ lspci
00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b)
00:03.0 Audio device: Intel Corporation Haswell-ULT HD Audio Controller (rev 0b)
00:14.0 USB controller: Intel Corporation 8 Series USB xHCI HC (rev 04)
00:16.0 Communication controller: Intel Corporation 8 Series HECI #0 (rev 04)
00:1b.0 Audio device: Intel Corporation 8 Series HD Audio Controller (rev 04)
00:1c.0 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 1 (rev e4)
00:1c.2 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 3 (rev e4)
00:1c.3 PCI bridge: Intel Corporation 8 Series PCI Express Root Port 4 (rev e4)
00:1d.0 USB controller: Intel Corporation 8 Series USB EHCI #1 (rev 04)
00:1f.0 ISA bridge: Intel Corporation 8 Series LPC Controller (rev 04)
00:1f.2 SATA controller: Intel Corporation 8 Series SATA Controller 1 [AHCI mode] (rev 04)
00:1f.3 SMBus: Intel Corporation 8 Series SMBus Controller (rev 04)
02:00.0 Ethernet controller: Qualcomm Atheros QCA8171 Gigabit Ethernet (rev 10)
03:00.0 Network controller: Ralink corp. RT3290 Wireless 802.11n 1T/1R PCIe
03:00.1 Bluetooth: Ralink corp. RT3290 Bluetooth
0
DINA TAKLIT

マシン上のビデオカードの名前だけを探している場合は、単に次を使用します。

$ nvidia-smi --list-gpus

一部の新しいGPUでは、各デバイスのメモリもリストされます。

0
kmario23