Come ottenere le informazioni sulla GPU?

105

Sto cercando un comando che mi dia le stesse informazioni di:

cat /proc/cpuinfo 

Tranne la GPU (tipo di chip e memoria, frequenza).

    
posta user2413 09.10.2010 - 19:14

15 risposte

49

Questo tipo di informazioni non è standard e gli strumenti che utilizzerai per raccoglierle sono molto diversi.

Il comando glxinfo ti darà tutte le informazioni OpenGL disponibili per il processore grafico, incluso il nome del fornitore, se i driver sono installati correttamente.

Per ottenere informazioni sulla velocità di clock, non esiste uno strumento standard.

  • Per le GPU ATI / AMD, aticonfig --odgc recupera i tassi di clock e aticonfig --odgt recupera i dati di temperatura.
  • Per le GPU NVIDIA, il programma nvclock recupera le stesse informazioni.

Non sono a conoscenza di uno strumento equivalente per i driver open source o per Intel o altre GPU.

Altre informazioni sull'hardware possono essere recuperate dagli strumenti lspci e lshw .

    
risposta data greyfade 09.10.2010 - 19:30
101

Non conosco un equivalente diretto, ma lshw dovrebbe darti le informazioni che desideri, prova:

sudo lshw -C display

(funziona anche senza sudo ma le informazioni potrebbero essere meno complete / accurate)

Puoi anche installare il pacchetto lshw-gtk per ottenere una GUI.

    
risposta data Marcel Stimberg 09.10.2010 - 19:31
50

Un post sul blog incentrato sul lavoro svolto sulla riga di comando è qui:

link

Scopri l'ID del dispositivo:

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

Puoi quindi utilizzare di nuovo questo output con lspci , formando due comandi annidati

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

Se hai più di 1 scheda GPU, prova invece questo comando equivalente:

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

Output dal mio sistema:

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: puoi evitare <access denied> avviando con sudo

Quindi, (prefetchable) [size=64M) indica che ho una scheda NVIDIA da 64 MB. Tuttavia, io no, è piuttosto 256 MB. Perché? vedi sotto.

Per vedere come ottenere il massimo delle informazioni + prestazioni, leggi un articolo estremamente completo sul Wiki Arch-Linux

link

Per gli utenti di nvidia, inizia con

nvidia-smi

(Funziona con i driver Nvidia installati, ma non con i sistemi che eseguono il driver 'nouveau' open-source).

Output

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

Questo indica che ho una scheda grafica GDDR3 da 256 MB.

Al momento, non so come ottenerlo per le GPU Intel e AMD / ATI.

    
risposta data knb 19.12.2013 - 10:50
33

Esegui google-chrome e vai all'URL about:gpu . Se Chrome ha capito come usare OpenGL, otterrai informazioni estremamente dettagliate sulla tua GPU.

    
risposta data Chris Uhlik 15.11.2012 - 08:35
20

Per le schede 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
    
risposta data Matt H 01.04.2015 - 23:22
9

clinfo

sudo apt-get install clinfo
clinfo

è l'analogo di glxinfo ma di OpenCL.

nvidia-settings

Combina il runtime con alcune informazioni statiche.

Maggiori dettagli: Come posso controllare se Ubuntu sta usando la mia scheda grafica NVIDIA?

    
6

Per le schede Nvidia, digita

nvidia-smi -q
    
risposta data Quanlong 26.06.2017 - 07:48
5

Credo che l'opzione migliore per questo è neofetch .

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

Questo dà un risultato come questo:

    
risposta data HaoZeke 10.12.2017 - 17:37
3

Solo per trovare le basi, in base al link ,

lspci | grep VGA

Se hai bisogno di maggiori dettagli, vedi la risposta di @ knb a questa stessa domanda.

    
risposta data mightypile 04.05.2017 - 23:11
3

Questo non è poi così complesso Per il modello e la memoria, ecco un 1 liner che funziona per tutte le schede video che ho provato, indipendentemente dal produttore (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 = Tutto ciò che fa è prendere il terzo campo dall'output di 'lspci' filtrato via 'grep' per VGA che corrisponde al chip video.

RAM = Tutto questo bit è impostato variabile cardid uguale al primo campo di output da lspci corrispondente a "VGA" e feed che come richiesta per -v output dettagliato da lspci per quel dispositivo -s specifico, ulteriormente filtrando l'output di grep per la stringa "prefetchable" poiché contiene la memoria sulla scheda stessa (notare lo spazio precedente come non vogliamo che corrisponda "non- prefetchable "nel nostro output.

Per frequenza di clock su grafica integrata Intel (Testato su I3 e I5)

esegui il comando sudo find /sys -type f -name gt_cur* -print0 | xargs -0 cat Questo si tuffa nell'albero / sys per localizzare gt_cur_freq_mhz file che sul mio I3 è /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_cur_freq_mhz e stampa il contenuto. che nel mio caso sotto carico estremamente leggero è 350 come in 350 MHz che corrisponde alla frequenza minima trovata in /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_min_freq_mhz e quando si esegue glxgears e glmark2 si traduce in 1050 come in 1050 MHz che corrisponde alla frequenza massima trovata in /sys/devices/pci0000:00/0000:00:02.0/drm/card0/gt_max_freq_mhz

Per i tassi di clock sulle schede nvidia:

nvidia-smi -stats -d procClk corrisponde all'orologio GPU nvidia-smi -stats -d memClk corrisponde all'orologio di memoria.

Nota: non riesco a testare quanto sopra visto che il mio fidato GeForce 210 non è supportato e funziona solo con le GPU Kepler o più recenti come indicato da 'nvidia-smi -stats --help'

Al momento non ho soluzioni per la frequenza di clock delle schede AMD e non ho l'hardware disponibile per i test. Tuttavia, dirò che, per quanto ne so, il aticonfig menzionato nella risposta accettata non esiste più e sembra che nvclock non sia disponibile per nulla in quanto fidato.

    
risposta data Elder Geek 11.12.2017 - 14:52
2

Se stai usando Ubuntu su un Chromebook con crostini, l'unica delle risposte funzionanti è chrome://gpu nel browser Chrome.

    
risposta data k26dr 25.08.2015 - 19:55
2

Oltre a neofetch ha risposto in precedenza, c'è screenfetch che sembra molto più bello (IMO). Inoltre un'altra risposta dice che non sa come ottenere iGPU in elenco e questo lo fa:

Per i dettagli sulla configurazione vedi: Come posso ottenere questo splash di terminale schermo?

In sintesi solo per la sezione inferiore con display di Ubuntu contenente le informazioni GPU (seconda riga) usare:

sudo apt install screenfetch
screenfetch

Dovrai inserire il comando screenfetch nella parte inferiore del tuo file ~/.bashrc affinché appaia ogni volta che apri il terminale.

    
risposta data WinEunuuchs2Unix 19.04.2018 - 01:05
1

Per Intel GMA950 (in particolare con EeePC) puoi eseguire:

setpci -s 00:02.0 f0.b

che restituisce '00' per 200 MHz, '01' per 250 MHz o '03' per 400 MHz. Potresti essere in grado di applicare lo stesso principio ad altre schede Intel.

    
risposta data user10872 15.02.2011 - 10:24
1

Se desideri avere informazioni semplici, puoi provare gpustat . È molto buono e semplice

    
risposta data Nufa 24.04.2018 - 03:43
1

Se hai una scheda AMD Radeon, potresti voler eseguire i seguenti comandi

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

Dovrebbe segnalare qualcosa di simile

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)
    
risposta data Nerrve 27.05.2018 - 13:04

Leggi altre domande sui tag