GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Configurare Xorg per funzionare da GPU integrata?

Sto usando Ubuntu 14.04LTS, con una CPU Intel + grafica integrata, con una GPU GTX650. Ho fatto questa domanda su SO ma hanno detto che era fuori tema.

Voglio usare la mia GPU per il debug del codice CUDA e per questo ho bisogno di cambiare il display in solo integrato. Questo è l'errore che ottengo quando provo a eseguirne il debug attualmente:

"All cuda devices are used for display and cannot be used while debugging"

Sono entrato nel BIOS e ho cambiato il display principale su iGPU (quello integrato, HD4600). Non è più uscito nulla dalle porte della GPU (in termini di display) e ho collegato i miei monitor alla scheda madre. Solo uno dei monitor funziona. Normalmente li ho come:

|[Monitor 1, VGA]| |[Monitor 2, DVI]|

In quella configurazione, con iGPU, non viene visualizzato nulla sul Monitor 1 (è nero, ma il computer sa che è lì:la luce verde è accesa e tutte le mie finestre si aprono su di essa). L'unico modo per farlo funzionare è scambiare Monitor 2 in VGA e Monitor 1 in DVI.

Se inserisco lspci | grep VGA nel Terminale, ottengo questo:

00:02.0 VGA compatible controller: Intel Corporation Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller (rev 06)
01:00.0 VGA compatible controller: NVIDIA Corporation GK107 [GeForce GTX 650] (rev a1)

Esecuzione di xrandr mi dà:

Screen 0: minimum 8 x 8, current 3360 x 1050, maximum 16384 x 16384
DVI-D-0 disconnected primary (normal left inverted right x axis y axis)
HDMI-0 disconnected (normal left inverted right x axis y axis)
VGA1 connected 1680x1050+0+0 474mm x 296mm
   1680x1050      60.0*+
   1600x1000      60.0 +
   1280x1024      75.0     72.0     60.0  
   1440x900       75.0     59.9  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   800x600        72.2     75.0     60.3  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
DP1 disconnected
HDMI1 disconnected
HDMI2 connected 1680x1050+1680+0 474mm x 296mm
   1680x1050      60.0*+
   1600x1000      60.0 +
   1280x1024      75.0     72.0     60.0  
   1440x900       75.0     59.9  
   1152x864       75.0  
   1024x768       75.1     70.1     60.0  
   800x600        72.2     75.0     60.3  
   640x480        75.0     72.8     66.7     60.0  
   720x400        70.1  
HDMI3 disconnected
VIRTUAL1 disconnected

Non è una connessione HDMI, non so perché pensa che lo sia. Con la GPU, sa che è DVI. Comunque...

Questo è il xorg.conf (se lo cambio, lo sovrascrive semplicemente):

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "intel"
    Driver "intel"
    BusID "PCI:[email protected]:2:0"
    Option "AccelMethod" "SNA"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    BusID "PCI:[email protected]:0:0"
    Option "ConstrainCursor" "off"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
    Option "AllowEmptyInitialConfiguration" "on"
    Option "IgnoreDisplayDevices" "CRT"
EndSection

Questo è il mio 10-monitors.conf file in /usr/share/X11/xorg.conf.d/ :

  GNU nano 2.2.6                                      File: /usr/share/X11/xorg.conf.d/10-monitors.conf                                                                                   

Section "Monitor"
    Identifier     "VGA1"
EndSection

Section "Monitor"
    Identifier     "HDMI2"
EndSection

Section "Device"
   Identifier      "intel0"
   Driver          "intel"
   BusID           "PCI:[email protected]:2:0"
EndSection

Section "Device"
   Identifier      "intel1"
   Driver          "intel"
   BusID           "PCI:[email protected]:2:0"
EndSection

Section "Screen"
   Identifier     "Screen0"
   Device         "intel0"
   Monitor        "VGA1"
   DefaultDepth   24
   SubSection     "Display"
      Depth       24
      Modes       "1680x1050" "1920x1080"
   EndSubSection
EndSection

Section "Screen"
   Identifier     "Screen1"
   Device         "intel1"
   Monitor        "HDMI2"
   DefaultDepth   24
   SubSection     "Display"
      Depth       24
      Modes       "1680x1050" "1920x1080"
   EndSubSection
EndSection

Ciò non consente ancora il debug del mio codice CUDA. Se eseguo lsof /dev/nvidia* ottengo:

COMMAND  PID     USER   FD   TYPE  DEVICE SIZE/OFF  NODE NAME
compiz  1659 cinnamon  mem    CHR 195,255          11805 /dev/nvidiactl
compiz  1659 cinnamon  mem    CHR   195,0          11806 /dev/nvidia0
compiz  1659 cinnamon   11u   CHR 195,255      0t0 11805 /dev/nvidiactl
compiz  1659 cinnamon   12u   CHR   195,0      0t0 11806 /dev/nvidia0
compiz  1659 cinnamon   13u   CHR   195,0      0t0 11806 /dev/nvidia0
compiz  1659 cinnamon   14u   CHR   195,0      0t0 11806 /dev/nvidia0

Quindi suppongo che Compiz (server X?) lo stia ancora utilizzando. Come faccio a impedirgli di usarlo?

Correlati:Problemi di Mscorefonts in Ubuntu?

Risposta accettata:

Ho avuto successo con una configurazione a doppio monitor, con uno collegato alla mia GPU ATI dedicata e l'altro collegato all'iGPU i7-2600K.

Per farlo ho corso

xrandr --setprovideroutputsource 1 0

In passato funzionava perfettamente, ma è ancora considerato sperimentale e da allora con diversi aggiornamenti del kernel YMMV.


Ubuntu
  1. Configura un'area di lavoro Linux in remoto dalla riga di comando

  2. Aggiornamento da Ubuntu 13.10 a Ubuntu 14.04

  3. Aggiornamento da Ubuntu 13.04 a Ubuntu 13.10

  4. Debian 9:dopo l'aggiornamento da 8, Mysql (mariadb) non funziona più?

  5. Configurare Postfix per accettare la posta da due Wan?

Come configurare un dominio per funzionare con G Suite utilizzando Remote MX Wizard

Aggiornamento da Ubuntu 14.04 a Ubuntu 14.10

Il doppio avvio dovrebbe funzionare da un HDD da 4 TB?

Aggiornamento da 10.04 a 11.04?

Come configurare i lavori Cron di cPanel da WHM

Come configurare l'indirizzo IP in uscita di Exim da WHM?