Comment obtenir les informations sur le GPU?

Je cherche une commande qui me donnerait les mêmes informations que:

cat /proc/cpuinfo 

Sauf pour le GPU (type de la puce et de la mémoire, fréquence).

Je ne connais pas d'équivalent direct, mais lshw devrait vous donner les informations que vous voulez, essayez:

sudo lshw -C display

(cela fonctionne aussi sans sudo mais l'information peut être moins complète / précise)

Vous pouvez également installer le package lshw-gtk pour obtenir une interface graphique.

Ce type d'information n'est pas standard et les outils que vous utiliserez pour la recueillir varient considérablement.

Commande glxinfo vous donnera toutes les informations OpenGL disponibles pour le processeur graphique, y compris son nom de fournisseur, si les pilotes sont correctement installés.

Pour obtenir des informations sur la vitesse d'horloge, il n'y a pas d'outil standard.

  • Pour les GPU ATI / AMD exécutant l'ancien pilote Catalyst, aticonfig --odgc devrait récupérer les fréquences d'horloge, et aticonfig --odgt devrait récupérer les données de température. Je ne suis pas familier avec AMDGPU-Pro, mais un outil similaire devrait exister.
  • Pour les GPU NVIDIA, le nvidia-smi l'outil affichera toutes les informations souhaitées, y compris les vitesses d'horloge et les statistiques d'utilisation.

Je ne connais pas d'outil équivalent pour les pilotes open source ou pour Intel ou d'autres GPU, mais d'autres informations sur le matériel peuvent être récupérées à partir du lspci et lshw outils.

Un article de blog se concentrant sur le travail effectué sur la ligne de commande est ici:

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

Découvrez l'identifiant de l'appareil:

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

Vous pouvez ensuite utiliser cette sortie avec lspci encore une fois, formant deux commandes imbriquées

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

Si vous avez plus d'une carte GPU, essayez plutôt cette commande équivalente:

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

Sortie de mon système:

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

EDIT: Vous pouvez éviter le <access denied> en lançant avec sudo

Si, (prefetchable) [size=64M) indique que j'ai une carte NVIDIA de 64 Mo. Cependant, je ne le fais pas, c'est plutôt 256 Mo. Pourquoi? Voir ci-dessous.

Pour voir comment en tirer le maximum d'informations et de performances, lisez un article extrêmement complet sur le Wiki Arch-Linux

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

Pour utilisateurs nvidia, commencez par

nvidia-smi

(Cela fonctionne avec les pilotes Nvidia installés, mais pas avec les systèmes exécutant le pilote "nouveau" open source).

Sortie

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                                               |+-----------------------------------------------------------------------------+

Cela indique que j'ai une carte graphique GDDR3 de 256 Mo.

Pour le moment, je ne sais pas comment obtenir cela pour les GPU Intel et AMD/ATI.

Exécuter google-chrome et accédez à l'URL about:gpu.Si chrome a compris comment utiliser OpenGL, vous obtiendrez des informations extrêmement détaillées sur votre GPU.

Parce que vous avez spécifié une commande comme cat pour les CPU, c'est donc l'équivalent pour les GPU. Spécifiquement pour les cartes Nvidia. Il ne nécessite aucun logiciel à l'exception du pilote de périphérique Nvidia à charger.

Le chemin ici fonctionne pour les cartes que j'ai. Mais le vôtre peut différer comme d'autres l'ont souligné dans les commentaires.

1er GPU

> cat /proc/driver/nvidia/gpus/0/informationModel:       GeForce GTX 680IRQ:         24GPU UUID:    GPU-71541068-cded-8a1b-1d7e-a093a09e9842Video BIOS:      80.04.09.00.01Bus Type:    PCIeDMA Size:    40 bitsDMA Mask:    0xffffffffffBus Location:    0000:01.00.0

2ème GPU

> cat /proc/driver/nvidia/gpus/1/informationModel:       GeForce GTX 580IRQ:         33GPU UUID:    GPU-64b1235c-51fc-d6f1-0f0e-fa70320f7a47Video BIOS:      70.10.20.00.01Bus Type:    PCIeDMA Size:    40 bitsDMA Mask:    0xffffffffffBus Location:    0000:08.00.0

Pour les cartes Nvidia, tapez

nvidia-smi -q

clinfo

sudo apt-get install clinfoclinfo

est l'analogue de glxinfo mais pour OpenCL, ma configuration GPU est décrite à: https://stackoverflow.com/questions/7542808/how-to-compile-opencl-on-ubuntu/33483311#33483311

Paramètres Ubuntu 20.04- & gt; À propos

Vous pouvez soit ouvrir les paramètres en cliquant sur le menu en haut à droite, ou vous pouvez simplement faire:

  • Super clé (ALIAS clé Windows)
  • Tapez & quot; à propos" et sélectionnez l'entrée

Donc, sous "Graphiques", je peux voir que mon modèle de GPU est "Quadro M1200/PCIe / SSE2".

enter image description here

nvidia-paramètres

Mélange l'exécution avec des informations statiques.

enter image description here

Plus de détails: Comment vérifier si Ubuntu utilise ma carte graphique NVIDIA?

Je crois que la meilleure option pour cela est neofetch.

# Get neofetchsudo add-apt-repository ppa:dawidd0811/neofetchsudo apt updatesudo apt install neofetch# Run neofetchneofetch

Cela donne une sortie comme celle-ci:

Ce n'est vraiment pas si complexe Pour le modèle et la mémoire, voici une doublure 1 qui fonctionne pour toutes les cartes vidéo sur lesquelles je l'ai testée, quel que soit le fabricant (Intel, AMD, NVIDIA):

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= Tout ce que ce bit fait est de saisir le 3ème champ de la sortie' lspci ' filtrée via 'grep' pour VGA qui correspond à la puce vidéo.

RAM= Tout ce que ce bit fait est de définir une variable cardid égal au premier champ de sortie de lspci correspondant à " VGA " et alimente cela en tant que demande de -v sortie détaillée de lspci pour cela spécifique -s dispositif, filtrant en outre la sortie par grep pour la chaîne "prefetchable" car elle contient la mémoire de la carte elle-même (notez l'espace précédent car nous ne voulons pas faire correspondre "non-prefetchable" dans notre sortie.

Pour la fréquence d'horloge sur les graphiques intégrés Intel (testés sur I3 et I5)

exécuter la commande sudo find /sys -type f -name gt_cur* -print0 | xargs -0 catCela plonge dans l'arborescence / sys pour localiser le fichier gt_cur_freq_mhz qui sur mon I3 est /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_cur_freq_mhz et imprime le contenu. ce qui dans mon cas sous une charge extrêmement légère est 350 comme dans 350 MHz qui correspond à la fréquence minimale trouvée dans /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_min_freq_mhz et en courant glxgears et glmark2 résultats en 1050 comme dans 1050 MHz qui correspond à la fréquence maximale trouvée dans /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_max_freq_mhz

Pour les fréquences d'horloge sur les cartes nvidia:

nvidia-smi -stats -d procClk correspond à l'horloge du GPUnvidia-smi -stats -d memClk correspond à l'horloge mémoire.

Remarque: Je ne peux pas tester ce qui précède car ma fidèle GeForce 210 n'est pas prise en charge et cela ne fonctionne que sur Kepler ou les GPU plus récents, comme indiqué par 'nvidia-smi-stats help help'

Je n'ai actuellement aucune solution pour la fréquence d'horloge sur les cartes AMD et je n'ai pas le matériel disponible pour les tests. Je dirai cependant qu'à ma connaissance, le aticonfig mentionné dans la réponse acceptée n'existe plus et il semble que nvclock n'est disponible pour rien depuis trusty.

Écran de démarrage Conky ou Terminal

J'utilise deux méthodes pour afficher automatiquement les informations sur les GPU nVidia et les iGPU Intel:

  • Conky affiche dynamiquement les informations GPU en temps réel
  • ~/.bashrc affiche les informations GPU à chaque ouverture du terminal

Affichage en temps réel Conky

Cet exemple utilise Conky pour afficher les statistiques actuelles du GPU (nVidia ou Intel) en temps réel. Conky est un moniteur système léger populaire parmi de nombreux passionnés de Linux.

L'affichage change selon que vous avez démarré après prime-select intel ou prime-select nvidia.

iGPU Intel

gpu temp intel.gif

  • L'iGPU Intel s'affiche comme suit Skylake GT2 HD 530 iGPU avec la fréquence actuelle
  • La fréquence minimale est 350 MHz et le maximum est 1050 MHz

GPU nVidia

gpu temp nvidia.gif

  • Le GPU nVidia s'affiche comme suit GeForce GTX970M avec la fréquence et la température actuelles du GPU
  • La version du pilote, l'état P et la version du BIOS sont affichés
  • La charge du GPU, l'utilisation de la RAM, la consommation d'énergie et la fréquence de la RAM sont affichées

Code Conky

Voici le script Conky pertinent pour les iGPU Intel et les GPU nVidia:

#------------+# 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 Écran de démarrage du terminal

Cet exemple modifie ~/.bashrc pour afficher des informations sur un écran de démarrage chaque fois que le terminal est ouvert ou chaque fois que vous tapez . .bashrc à l'invite du shell.

Outre neofetch répondu précédemment, il y a screenfetch ce qui semble beaucoup plus agréable (OMI). De plus, une autre réponse mentionne qu'il ne sait pas comment obtenir la liste des iGPU et cela le fait:

ubuntu terminal splash.png

Pour plus de détails sur la configuration, voir: Écran de démarrage du terminal avec Météo, Calendrier, Heure et Informations système?

En résumé, juste pour la section du bas avec l'affichage Ubuntu contenant des informations sur le GPU (deuxième dernière ligne), utilisez:

sudo apt install screenfetchscreenfetch

Vous voudrez mettre le screenfetch commandez au bas de votre ~/.bashrc fichier pour qu'il apparaisse chaque fois que vous ouvrez le terminal.

@CharlieParker il génère des informations sur le processeur…

que fait:` cat /proc/cpuinfo’? quelles informations recherchez-vous?