Comment vérifier quel GPU est actif dans Linux?

66

J'ai 2 GPU dans mon netbook. Comment savoir lequel j'utilise réellement à un moment donné?

LanceBaynes
la source

Réponses:

42

Je viens de passer un sacré bout de temps à essayer de faire fonctionner mes graphismes discrets dans Ubuntu et répondre à cette question était toujours un défi, car la méthode lspci mentionnée précédemment peut parfois dire que les deux sont [VGA controller]

Je pense que la commande suivante devrait vous donner une indication de votre puce active:

$ glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile

Pour moi, cela me dit que mes graphiques Intel sont en cours d'exécution. Si vous utilisez une puce nvidia et que vous utilisez le bumblebeepackage, vous pouvez le placer optirundevant cette ligne et cela devrait vous indiquer que vous utilisez la puce NVidia (optirun consiste essentiellement à ordonner à l'ordinateur d'utiliser la puce discrète. exécuter la commande qui suit, mais tout le reste utilise toujours la puce intégrée)

$ optirun glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 555M/PCIe/SSE2

glxheads vous indique également des informations utiles sur la carte graphique utilisée (répète pour la plupart glxinfo sous une forme plus compacte et plus lisible,), et donne un bon rendu du triangle en rotation.

Nickolai
la source
16

Pour vérifier quel GPU est en cours de commande (c’est-à-dire un contrôleur VGA actif), tapez

lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA

Tout contrôleur avec [VGA controller]à la fin est votre GPU actuellement actif. Les autres sont éteints. Dans l'exemple suivant, la carte Intel est active alors que la carte nVidia n'est pas utilisée:

00:02.0 VGA compatible controller [0300]: Intel Corporation Core Processor
Integrated Graphics Controller [8086:0046] (rev 02) (prog-if 00 [VGA 
controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108 [GeForce
GT 540M] [10de:0df4] (rev ff) (prog-if ff)
Ubuntudroid
la source
7
Euh ... alors qu'est-ce que cela signifie si les deux cartes ont VGA controllerà la fin?
naught101
1
00: 02.0 Contrôleur compatible VGA [0300]: Contrôleur graphique intégré pour processeur Intel Core Core 4ème génération [rev. 06) (prog-if 00 [contrôleur VGA]) 01: 00.0 Contrôleur compatible VGA [0300]: NVIDIA Corporation GK106GLM [Quadro K2100M] [10de: 11fc] (rev a1) (prog-if 00 [contrôleur VGA]) qu'est-ce que cela signifie?
Asaf Magen
1
Peut-être que vous utilisez SLI?
ubuntudroid
dans mon cas, les deux à la fin: 00: 02.0 Contrôleur compatible VGA [0300]: Périphérique Intel Corporation [8086: 591b] (rév 04) (prog-if 00 [contrôleur VGA]) 01: 00.0 Contrôleur compatible VGA [0300 ]: NVIDIA Corporation GP106M [GeForce GTX 1060 Mobile] [10de: 1c20] (version a1) (prog-if 00 [contrôleur VGA])
Aftab Naveed
7

nvidia-settings Interface graphique

Sur Ubuntu 15.10, après l’installation nvidia-352et le GPU semble fonctionner:

nvidia-settings

montre quelque chose comme:

entrez la description de l'image ici

Notez comment ça se voit:

GPU 0 - (NVS 5400M)

NVS 5400Mest mon modèle GPU.

Ensuite, si je déclenche glxgears, l'utilisation du GPU passe à> 90%.

Je suppose donc que si vous disposiez de plusieurs GPU, vous pourriez voir combien chacun était utilisé à la fois.

Ciro Santilli 改造 中心 六四 事件
la source
Qu'est-ce que nvidia-352 exactement? Est-ce un groupe de pilotes ou juste un pilote pour un GPU spécifique?
cosbor11
@ cosbor11 nvidia-352est la version du package pilote / Ubuntu n, chaque version prenant en charge de nombreux GPU répertoriés sur le site officiel: nvidia.com/Download/driverResults.aspx/90279/en-uames NVS 5400M est le modèle de GPU: en.wikipedia .org / wiki / List_of_Nvidia_graphics_processing_units
Ciro Santilli 中心 法轮功 六四 事件
1

Quel système d'exploitation utilisez-vous? Si vous utilisez lspci sur la plupart des machines linux, vous obtenez une liste de vos périphériques pci, juste grep pour les périphériques graphiques et les deux devraient apparaître. Après cela, vérifiez la configuration de chacun d’entre eux, vous devriez voir les détails de up / on / active ou quelque chose de ce genre.

Baweaver
la source
1
Ubuntu 11.04. et lspci montre tous les deux gpu.
LanceBaynes
0

nvidia-smiest très utile, mais j’ai parfois constaté que tout n’était pas toujours inclus. Il semble que lorsque les processus se bloquent, ils ne sont pas toujours répertoriés.

sudo lsof /dev/nvidia*a toujours travaillé pour moi. Cela fonctionnera également sans sudo, mais ne montrera que les processus que vous possédez. Si vous travaillez sur une machine multi-utilisateur ou utilisez docker, vous obtiendrez probablement de meilleurs résultats avec sudo.

Si vous constatez une différence entre les 2 commandes, vous pouvez envisager killles processus supplémentaires trouvés avec lsof.

Rick Smith
la source