Intel CPU +統合グラフィックス、GTX650 GPUを備えたUbuntu 14.04LTSを使用しています。SOでこの質問をしましたが、彼らはそれがトピック外であると言いました。
CUDAコードのデバッグにGPUを使用したいので、ディスプレイを統合のみに変更する必要があります。これは、現在デバッグしようとすると表示されるエラーです。
"All cuda devices are used for display and cannot be used while debugging"
BIOSに入り、プライマリディスプレイをiGPU(統合されたHD4600)に切り替えました。GPUのポートからは(ディスプレイに関して)もう何も出力されず、モニターをマザーボードに接続しました。モニターの1つだけが機能します。通常、私はそれらを次のように持っています:
|[Monitor 1, VGA]| |[Monitor 2, DVI]|
その構成では、iGPUを使用すると、モニター1に何も表示されません(黒ですが、コンピューターはそれが存在することを認識しています-緑色のライトが点灯し、すべてのウィンドウが開いています)。動作させる唯一の方法は、モニター2をVGAに、モニター1をDVIに交換することです。
lspci | grep VGA
ターミナルに入ると、次のようになります:
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)
実行すると以下xrandr
が得られます:
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
それはHDMI接続ではありません、なぜそうなっていると思うのか分かりません。GPUを使用すると、DVIであることがわかります。とにかく...
これは次のxorg.conf
とおりです(変更すると、上書きされるだけです):
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "intel"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "SNA"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1@0:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
これは私の10-monitors.conf
ファイルです/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:0@0:2:0"
EndSection
Section "Device"
Identifier "intel1"
Driver "intel"
BusID "PCI:0@0: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
これでも、CUDAコードのデバッグは許可されません。lsof / dev / nvidia *を実行すると、次の結果が得られます。
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
だから、Compiz(Xサーバー?)はまだそれを使っていると思います。使用を停止するにはどうすればよいですか?
nvidia-debugdump -l -v -z
してください。)また、システムがカードを認識している方法を確認することも価値があります。