重要なポイント
- Linux コンピューターの GPU を知ることは、ディスプレイ ドライバーの問題のトラブルシューティングを行ったり、他のユーザーにサポートを提供したりするために重要です。
- lspci コマンドと PCI ID データベースを使用して、Linux のコマンド ラインからグラフィックス カードを識別できます。
- lshw コマンドと glxinfo コマンドは、グラフィックス カードを識別するための代替方法であり、さまざまな種類の情報を提供します。
Linux コンピューターのグラフィックス プロセッシング ユニット (GPU) を識別する必要がありますか?コマンドラインおよび GNOME からグラフィックス カードを識別する方法は次のとおりです。
搭載している GPU を知る必要があるのはなぜですか?
おそらくあなたもそこに行ったことがあるでしょう。あなたは、技術に詳しくない親戚や職場の同僚をサポートするよう徴兵されましたが、これは楽なことではないと思われます。それでも、あなたは参加します!あなたは問題がディスプレイ ドライバーの問題である可能性が高いとすぐに判断します。やあ、結局のところ、これはそれほど悪くないかもしれません!しかし、「どんなグラフィックス カードを使っていますか?」と尋ねると、つかの間の希望は消え去ります。
ヘッドライトに照らされた鹿のような表情がそれを物語っています。何かをサポートするには、それが何であるかを知る必要があります。では、Linux コンピューターのグラフィックス カードをどのように識別するのでしょうか?
最悪のシナリオを想定して、グラフィックス カードのドライバーがインストールされていないため、ドライバーを見ても手がかりが得られないとします。それは問題ではありません!この難問は、コマンド ラインまたは グラフィカル ユーザー インターフェイス (GUI) を通じて解決できます。
lspci と PCI ID データベースを使用して GPU を確認する
Peripheral Component Interconnect (PCI) 標準は、グラフィックス カードなどの内部周辺機器と通信するために使用できる一般的なプロトコルです。 PCI ID リポジトリは、 PCI デバイスのすべての既知の ID のデータベースを維持します。つまり、デバイスに関する情報がわかっていれば、それを調べることができます。
lspci
コマンドを使用すると、
Linux コンピュータにインストールされている PCI デバイス
とそれらに関する情報を一覧表示できます。
PCI データベースと
lspci
コマンドを結び付けることができたら素晴らしいと思いませんか?実際、
lspci
コマンドを実行すると、まさにそれが起こります。 PCI データベースのローカル コピーをチェックして、検出した PCI デバイスを識別します。始める前に、PCI データベースのローカル コピーを更新することが賢明です。
これを行うには、 update-pciids コマンドを入力します。
sudo update-pciids
最新のデータベース バージョンが取得されるので、
lspci
コマンドを使用できるようになります。大量の出力があるため、それを
less
にパイプします。
-v
(冗長) オプションは、
lscpi
にできる限り多くの情報を提供するように指示します。可能な限り詳細な情報を得るために
sudo
を使用します。
次のようにコマンドを入力します。
sudo lspci -v |少ない
結果は、
less
に表示されます。スラッシュ (
/
) を押すと、
less
検索機能が有効になります。
すべて大文字で「VGA」と入力し、Enter キーを押します。
less
文字列「VGA」を検索し、最初に見つかった一致を表示します。その時点から、スクロールまたはページ送りして、
lspci
が検出したグラフィックス カードの数を確認できます。
この記事では、 VirtualBox 仮想マシンで実行されているさまざまな Linux ディストリビューションについて調査を実施しました。もちろん、仮想マシンには仮想グラフィックス カードが搭載されています。
実際の結果の例を確認できます。ホスト (物理) コンピューターからの出力は次のとおりです。
26 :00.0 VGA compatible controller : NVIDIA Corporation GP108 [GeForce GT 1030] ( rev a1 ) ( prog-if 00 [VGA controller] )
Subsystem : Gigabyte Technology Co ., Ltd GP108 [GeForce GT 1030]
Flags: bus master, fast devsel, latency 0 , IRQ 97 Memory at f6000000 ( 32 -bit, non-prefetchable) [size = 16 M]
Memory at e0000000 ( 64 -bit, prefetchable) [size = 256 M]
Memory at f0000000 ( 64 -bit, prefetchable) [size = 32 M]I/O ports at e000 [size= 128 ]Expansion ROM at 000 c0000 [disabled] [size= 128 K]
Capabilities : [60] Power Management version 3
Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities : [78] Express Legacy Endpoint , MSI 00 Capabilities : [100] Virtual Channel
Capabilities : [250] Latency Tolerance ReportingCapabilities : [128] Power Budgeting <?>
Capabilities: [ 420 ] Advanced Error Reporting
Capabilities: [ 600 ] Vendor Specific Information: ID= 0001 Rev= 1 Len= 024 <? >
Capabilities: [ 900 ] Secondary PCI Express <? >
Kernel driver in use : nouveauKernel modules : nouveau
さっそく良い情報をたくさん教えていただきました!
このカードは NVIDIA Corporation GP108 [GeForce GT 1030] で、検索エンジンで数秒後に そのデバイスの NVIDIA 技術ページ が見つかりました。最初の行の末尾にある「[VGA コントローラ]」というテキストは、これが「動作可能な」グラフィックス カードであることを示しています。これは、コンピュータに複数のカードが取り付けられている場合に役立つ情報です。
lshw コマンドを使用して GPU を見つける
lshw
コマンドを使用して、Linux コンピューターにインストールされているハードウェアを一覧表示することもできます。 PCI ハードウェアだけでなく、さまざまなタイプも報告します。
見つかったグラフィックス カードについてレポートするように指示するには、
-C
(クラス) オプションを使用し、「display」修飾子を渡します。
-numeric
オプションを使用すると、
lshw
デバイスの数値 ID とその名前を強制的に提供します。
次のように入力します。
sudo lshw -numeric -C 表示
このコマンドが物理コンピューター上で見つけたものは次のとおりです。
*-display
description: VGA compatible controller
product : GP108 [GeForce GT 1030] [10DE:1D01]
vendor : NVIDIA Corporation [10DE]
physical id: 0
bus info: pci@0000:26:00.0 version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nouveau latency=0
resources: irq:97 memory:f6000000-f6ffffff memory:e0000000-efffffff memory:f0000000-f1ffffff ioport:e000(size=128) memory:c0000-dffff
心強いことに、両方とも同じカードを見つけました。
[10DE:1D01] 識別子は、製造元 (10DE) とモデル (1D01) を表します。メーカーとモデルをすぐに見つけるには、検索エンジンに「グラフィックス カード 10de:1d01」と入力します。
glxinfo コマンド
glxinfo
コマンドも使用できるもう 1 つの方法です。
X Windows システムの OpenGL 拡張機能
からの情報が得られます。その後、その情報の一部を検索して、マシンにインストールされているグラフィックス カードの種類を確認できます。
glxinfo
コマンドは Manjaro と Fedora にはすでに存在しますが、Ubuntu にインストールする必要があります。これを行うには、次のコマンドを入力します。
sudo apt-get install mesa-utils
glxinfo
からの出力を
less
にパイプし、
-B
(ID の出力) オプションを使用するには、次のように入力します。
glxinfo -B |少ない
グラフィックス カードは「デバイス」行に記載されています。
これは物理コンピューターからの出力です。
name of display : :1
display : :1 screen : 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: nouveau (0x10de)
Device : NV138 (0 x1d01 ) Version : 19 .3 .2
Accelerated: yes
Video memory: 1987MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version : 4 .3
Max compat profile version : 4 .3
Max GLES1 profile version : 1 .1
Max GLES [23] profile version : 3 .2
OpenGL vendor string: nouveau
OpenGL renderer string: NV138
OpenGL core profile version string : 4 .3 ( Core Profile ) Mesa 19 .3 .2
OpenGL core profile shading language version string : 4 .30
OpenGL core profile context flags: (none)OpenGL core profile profile mask: core profile
OpenGL version string : 4 .3 ( Compatibility Profile ) Mesa 19 .3 .2O
penGL shading language version string : 4 .30
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string : OpenGL ES 3 .2 Mesa 19 .3 .2
OpenGL ES profile shading language version string : OpenGL ES GLSL ES 3 .20
検索エンジンに「NV138」と入力すると、NVIDIA グラフィック カードがすぐに特定されます。
GUI を使用してグラフィックス カードを識別する
コンピュータが CLI 専用サーバーの場合は、上で説明した手法のいずれかを使用する必要があります。ただし、(動作する) GUI がある場合は、グラフィカルな方法でグラフィックス カードを識別できる可能性があります。実際、そのオプションはおそらく Linux デスクトップ設定ツールのどこかにあるでしょう。
GNOME デスクトップで、[設定] ダイアログ (右上のドロップダウン メニューにある歯車のアイコン) を開き、サイドバーの [詳細] をクリックします。 [バージョン情報] パネルで、[グラフィックス] エントリを探します。これにより、コンピュータに搭載されているグラフィック カードの種類、具体的には現在使用されているグラフィック カードがわかります。マシンには複数の GPU が搭載されている場合があります。
ラップトップのグラフィックス カード
多くのラップトップには 2 つのグラフィックス カードが搭載されています。1 つは 中央処理装置 (CPU) のメーカー製で、もう 1 つは主流の GPU プロバイダー製です。
先ほどと同じ
lspci
コマンドを入力してみましょう。ただし、今回はラップトップで実行します。
sudo lspci -v |少ない
予想どおり、マシンのグラフィックス カードの説明が表示されます。
00 :02.0 VGA compatible controller : Intel Corporation 3 rd Gen Core processor Graphics Controller ( rev 09) ( prog-if 00 [VGA controller] )
Subsystem: ASUSTeK Computer Inc. 3rd Gen Core processor Graphics Controller
Flags: bus master, fast devsel, latency 0, IRQ 33
Memory at f7400000 ( 64 -bit, non-prefetchable) [size = 4 M]
Memory at d0000000 ( 64 -bit, prefetchable) [size = 256 M]
I/O ports at f000 [size=64]
[virtual] Expansion ROM at 000 c0000 [disabled] [size=128K]
Capabilities: [90] MSI: Enable+ Count=1/1 Maskable- 64bit-
Capabilities : [d0] Power Management version 2
Capabilities : [a4] PCI Advanced Features
Kernel driver in use : i915
Kernel modules : i91501 :00.0 VGA compatible controller : NVIDIA Corporation GF119M [GeForce 610M] ( rev a1 ) ( prog-if 00 [VGA controller] )
Subsystem : ASUSTeK Computer Inc . GF119M [GeForce 610M] Flags : bus master , fast devsel , latency 0, IRQ 34
Memory at f6000000 ( 32 -bit, non-prefetchable) [size = 16 M]
Memory at e0000000 ( 64 -bit, prefetchable) [size = 128 M]
Memory at e8000000 ( 64 -bit, prefetchable) [size = 32 M]
I/O ports at e000 [size=128]
Expansion ROM at f7000000 [disabled] [size=512K]
Capabilities : [60] Power Management version 3
Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [ 78 ] Express Endpoint, MSI 00 Capabilities: [b4] Vendor Specific Information: Len= 14 <? >
Capabilities : [100] Virtual ChannelCapabilities : [128] Power Budgeting <?>
Capabilities: [ 600 ] Vendor Specific Information: ID= 0001 Rev= 1 Len= 024 <? >
Kernel driver in use : nouveau
Kernel modules: nouveau
このラップトップには、 Intel Core GPU と NVIDIA GeForce 610M の両方が搭載されています。ただし、どちらのカードにも「[VGA コントローラ]」という文字列があり、通常はどの GPU が使用されているかを示します。
両方を使用することはできないため、まずメインストリーム GPU プロバイダーのカードを動作させるようにしてください。これは、ラップトップのメーカーがデフォルトとみなしているもので、マシンのハードウェア仕様に含まれています。
ここで取り上げたテクニックの 1 つは、きっとあなたにも役立つはずです。コンピューターまたはラップトップに搭載されているグラフィックス カードの種類がわかったら、適切なグラフィックス ドライバーを選択できます。





