GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come controllare i dettagli della GPU integrata Intel su Ubuntu / Linux

Molti processori Intel come l'i5-7400 hanno gpus integrato, che funziona abbastanza bene con Ubuntu e sistemi Linux simili che utilizzano i driver open source.

Oltre all'IGPU all'interno delle CPU, ci sono anche alcune schede madri che hanno l'IGPU nei loro chipset.

In questo articolo daremo uno sguardo ad alcuni dei comandi che possono essere utilizzati per verificare i dettagli della gpus integrata su sistemi Linux.

Questi comandi dovrebbero funzionare su qualsiasi sistema Linux.

1. Inxi

Il comando inxi e visualizza le informazioni sulla gpu in un formato di facile lettura. I dettagli includono il fornitore della GPU, il modello e il driver in uso.

Ecco l'output da un PC desktop che utilizza la CPU Intel i5-7400.

$ inxi -G
Graphics:  Device-1: Intel HD Graphics 630 driver: i915 v: kernel
           Display: x11 server: X.Org 1.20.5 driver: modesetting unloaded: fbdev,vesa resolution: 1920x1080~60Hz
           OpenGL: renderer: Mesa DRI Intel HD Graphics 630 (Kaby Lake GT2) v: 4.5 Mesa 19.2.8
$

Nell'output sopra la GPU è HD Graphics 630 e il driver utilizzato è i915.
L'output indica anche se una libreria OpenGL è compatibile con il driver e viene utilizzata o meno. Ecco il suo MESA.

Ecco un altro esempio di output da un laptop Acer Swift 3 che gira su CPU Intel i5-1135G7. In realtà ha una igpu Intel Iris Xe.

$ inxi -G
Graphics:  Device-1: Intel UHD Graphics driver: i915 v: kernel
           Device-2: Chicony HD User Facing type: USB driver: uvcvideo
           Display: x11 server: X.Org 1.20.9 driver: modesetting unloaded: fbdev,vesa resolution: 1920x1080
           OpenGL: renderer: Mesa Intel Xe Graphics (TGL GT2) v: 4.6 Mesa 20.2.6
$

Come mostrato nell'output sopra, i915 è il driver linux utilizzato per la maggior parte delle GPU Intel.

2. lshw

Il comando successivo è lshw (elenco hardware). È in grado di visualizzare alcune informazioni di base sulla gpu.

Ecco un esempio di output per lo stesso PC desktop in esecuzione su CPU Intel i5-7400.

$ sudo lshw -c display
[sudo] password for enlightened:
  *-display
       description: VGA compatible controller
       product: HD Graphics 630
       vendor: Intel Corporation
       physical id: 2
       bus info: [email protected]:00:02.0
       version: 04
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:131 memory:ee000000-eeffffff memory:d0000000-dfffffff ioport:f000(size=64) memory:c0000-dffff
$

La frequenza di clock riportata non è precisa. Riporta solo 33 Mhz molte volte, anche quando la frequenza effettiva è molto più alta

$ sudo lshw -c display
  *-display
       description: VGA compatible controller
       product: UHD Graphics
       vendor: Intel Corporation
       physical id: 2
       bus info: [email protected]:00:02.0
       logical name: /dev/fb0
       version: 01
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom fb
       configuration: depth=32 driver=i915 latency=0 mode=1920x1080 visual=truecolor xres=1920 yres=1080
       resources: iomemory:600-5ff iomemory:400-3ff irq:164 memory:601e000000-601effffff memory:4000000000-400fffffff ioport:3000(size=64) memory:c0000-dffff memory:4010000000-4016ffffff memory:4020000000-40ffffffff
$

Nell'output del comando lshw non ci sono molte informazioni leggibili sull'hardware.

3. lspci

Ora arriva il nostro buon vecchio comando lspci che ancora una volta può fornire alcuni dettagli di base sulla gpu ma non è molto approfondito.

$ lspci | grep ' VGA ' | cut -d" " -f 1 | xargs -i lspci -v -s {}
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 630 (rev 04) (prog-if 00 [VGA controller])
        DeviceName:  Onboard IGD
        Subsystem: Gigabyte Technology Co., Ltd HD Graphics 630
        Flags: bus master, fast devsel, latency 0, IRQ 131
        Memory at ee000000 (64-bit, non-prefetchable) [size=16M]
        Memory at d0000000 (64-bit, prefetchable) [size=256M]
        I/O ports at f000 [size=64]
        [virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
        Capabilities: <access denied>
        Kernel driver in use: i915
        Kernel modules: i915
[email protected]:~$

L'output del laptop Acer Swift 3 è il seguente

$ lspci | grep ' VGA ' | cut -d" " -f 1 | xargs -i lspci -v -s {}
0000:00:02.0 VGA compatible controller: Intel Corporation UHD Graphics (rev 01) (prog-if 00 [VGA controller])
        Subsystem: Acer Incorporated [ALI] UHD Graphics
        Flags: bus master, fast devsel, latency 0, IRQ 164, IOMMU group 1
        Memory at 601e000000 (64-bit, non-prefetchable) [size=16M]
        Memory at 4000000000 (64-bit, prefetchable) [size=256M]
        I/O ports at 3000 [size=64]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: <access denied>
        Kernel driver in use: i915
        Kernel modules: i915
$

3. intel_gpu_frequency

Questi sono alcuni strumenti a riga di comando specifici di Intel gpu che possono essere utilizzati per sondare informazioni dettagliate sull'hardware.

Prima installa il pacchetto di strumenti Intel gpu

$ sudo apt-get install intel-gpu-tools

Ora esegui il comando intel_gpu_frequency
Questo comando mostrerà la frequenza base e massima della GPU. Per l'Intel HD 630 i numeri sono i seguenti:

$ sudo intel_gpu_frequency
cur: 350 MHz
min: 350 MHz
RP1: 350 MHz
max: 1000 MHz
[email protected]:~$

4. intel_gpu_top

Il pacchetto degli strumenti intel gpu fornisce un altro utile comando chiamato intel_gpu_top che segnala il carico sulla gpu in tempo reale.

Quindi, se esegui attività ad alta intensità grafica, puoi aspettarti di vedere l'indicatore di utilizzo aumentare.

$ intel_gpu_top
intel-gpu-top -  350/ 350 MHz;    0% RC6;  2.32 Watts;      193 irqs/s
      IMC reads:      625 MiB/s
     IMC writes:      202 MiB/s
          ENGINE      BUSY                                                                         MI_SEMA MI_WAIT
     Render/3D/0    5.53% |███▊                                                                  |      0%      0%
       Blitter/0    0.00% |                                                                      |      0%      0%
         Video/0    0.00% |                                                                      |      0%      0%
  VideoEnhance/0    0.00% |                                                                      |      0%      0%

Quando si gioca o si esegue un rendering 3D, l'utilizzo della GPU aumenterà

intel-gpu-top - 1004/1004 MHz;    0% RC6; 16.30 Watts;    15615 irqs/s
      IMC reads:     5458 MiB/s
     IMC writes:     7209 MiB/s
          ENGINE      BUSY                                                                         MI_SEMA MI_WAIT
     Render/3D/0   99.24% |█████████████████████████████████████████████████████████████████████▍|      0%      0%
       Blitter/0    0.00% |                                                                      |      0%      0%
         Video/0    0.00% |                                                                      |      0%      0%
  VideoEnhance/0    0.00% |                                                                      |      0%      0%

5. glmark2

glmark2 è un'utilità OpenGL generica per misurare le capacità di qualsiasi GPU. Esegue un paio di test e poi esce con un punteggio che indica quanto è potente la GPU.

Prima installa il pacchetto glmark2 se non è già installato.

$ sudo apt-get install glmark2

Il comando glmark2 viene eseguito con una finestra di dimensioni 800x600.

$ glmark2 -s 800x600
[email protected]:~$ glmark2
=======================================================
    glmark2 2014.03+git20150611.fa71af2d
=======================================================
    OpenGL Information
    GL_VENDOR:     Intel Open Source Technology Center
    GL_RENDERER:   Mesa DRI Intel(R) HD Graphics 630 (Kaby Lake GT2)
    GL_VERSION:    3.0 Mesa 19.2.8
=======================================================
[build] use-vbo=false: FPS: 2959 FrameTime: 0.338 ms
[build] use-vbo=true: FPS: 3046 FrameTime: 0.328 ms
[texture] texture-filter=nearest: FPS: 2876 FrameTime: 0.348 ms
[texture] texture-filter=linear: FPS: 2815 FrameTime: 0.355 ms
[texture] texture-filter=mipmap: FPS: 2774 FrameTime: 0.360 ms
[shading] shading=gouraud: FPS: 2592 FrameTime: 0.386 ms
[shading] shading=blinn-phong-inf: FPS: 2604 FrameTime: 0.384 ms
[shading] shading=phong: FPS: 2430 FrameTime: 0.412 ms
[shading] shading=cel: FPS: 2354 FrameTime: 0.425 ms
[bump] bump-render=high-poly: FPS: 1764 FrameTime: 0.567 ms
[bump] bump-render=normals: FPS: 3007 FrameTime: 0.333 ms
[bump] bump-render=height: FPS: 2947 FrameTime: 0.339 ms
[effect2d] kernel=0,1,0;1,-4,1;0,1,0;: FPS: 1773 FrameTime: 0.564 ms
[effect2d] kernel=1,1,1,1,1;1,1,1,1,1;1,1,1,1,1;: FPS: 1025 FrameTime: 0.976 ms
[pulsar] light=false:quads=5:texture=false: FPS: 2724 FrameTime: 0.367 ms
[desktop] blur-radius=5:effect=blur:passes=1:separable=true:windows=4: FPS: 1038 FrameTime: 0.963 ms
[desktop] effect=shadow:windows=4: FPS: 1807 FrameTime: 0.553 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 883 FrameTime: 1.133 ms
[buffer] columns=200:interleave=false:update-dispersion=0.9:update-fraction=0.5:update-method=subdata: FPS: 750 FrameTime: 1.333 ms
[buffer] columns=200:interleave=true:update-dispersion=0.9:update-fraction=0.5:update-method=map: FPS: 967 FrameTime: 1.034 ms
[ideas] speed=duration: FPS: 1851 FrameTime: 0.540 ms
[jellyfish] <default>: FPS: 1853 FrameTime: 0.540 ms
[terrain] <default>: FPS: 249 FrameTime: 4.016 ms
[shadow] <default>: FPS: 1893 FrameTime: 0.528 ms
[refract] <default>: FPS: 557 FrameTime: 1.795 ms
[conditionals] fragment-steps=0:vertex-steps=0: FPS: 2428 FrameTime: 0.412 ms
[conditionals] fragment-steps=5:vertex-steps=0: FPS: 2487 FrameTime: 0.402 ms
[conditionals] fragment-steps=0:vertex-steps=5: FPS: 2403 FrameTime: 0.416 ms
[function] fragment-complexity=low:fragment-steps=5: FPS: 2405 FrameTime: 0.416 ms
[function] fragment-complexity=medium:fragment-steps=5: FPS: 2473 FrameTime: 0.404 ms
[loop] fragment-loop=false:fragment-steps=5:vertex-steps=5: FPS: 2407 FrameTime: 0.415 ms
[loop] fragment-steps=5:fragment-uniform=false:vertex-steps=5: FPS: 2411 FrameTime: 0.415 ms
[loop] fragment-steps=5:fragment-uniform=true:vertex-steps=5: FPS: 2436 FrameTime: 0.411 ms
=======================================================
                                  glmark2 Score: 2090
=======================================================
[email protected]:~$

Tieni presente che il punteggio di glmark dipende dalle dimensioni dello schermo di visualizzazione e dalla visibilità dello schermo.

Se la risoluzione è diversa, ad esempio 1024x768 o se è nascosta sotto qualche altra finestra, il punteggio sarà molto diverso.
Guarda i nostri altri post su glmark per saperne di più sui test della gpu su Linux:

Test benchmark GPU di Intel HD Graphics 630 utilizzando glmark2

Prestazioni benchmark della scheda grafica (GPU) su Linux con glmark

Conclusione

Questi erano alcuni dei comandi di base utilizzati per raccogliere informazioni sulle schede grafiche Intel e gpus su qualsiasi sistema durante l'esecuzione di Ubuntu o distribuzioni Linux simili.

Se hai intenzione di eseguire giochi sull'installazione di Linux, conoscere le capacità della gpu può essere abbastanza utile. Anche altre cose come gli effetti desktop e i compositori hanno bisogno di gpus per funzionare correttamente.

Per qualsiasi altra domanda e feedback, faccelo sapere nei commenti qui sotto.


Ubuntu
  1. Come controllare e modificare un runlevel predefinito su Ubuntu Linux

  2. Come controllare la versione del kernel Linux in Ubuntu?

  3. Come controllare i dettagli di un pacchetto software in Ubuntu Linux

  4. Controlla Uptime su Ubuntu Linux Server - Come farlo?

  5. 14.04:Come utilizzare la grafica Nvidia invece della grafica integrata Intel?

Come controllare la versione del kernel Linux su Ubuntu e Linux Mint

Come controllare la versione di Ubuntu

Come controllare i dettagli della versione di Ubuntu e altre informazioni di sistema

Come verificare le dipendenze di un pacchetto nelle distribuzioni Linux basate su Ubuntu/Debian

Come installare Basemark GPU Benchmark su Ubuntu 20.04 Linux

Come verificare la presenza di errori nella RAM tramite Linux?