UBUNTUのLD_LIBRARY_PATH環境変数の設定に問題があります。
私のシステム構成は次のとおりです:UBUNTU 17.10 CUDA 8.0(Tensorflowに必要)NVIDIA DRIVER 387.26
現在のLD_LIBRARY_PATHは、.profileファイルで次のように設定されています。export LD_LIBRARY_PATH = "/ usr/lib/nvidia-387:/ usr/local/cuda/lib64 $ {LD_LIBRARY_PATH:+:$ {LD_LIBRARY_PATH}}"
このため/ usr/lib/nvidia-387も含める必要がありました
GPUを他のグラフィックプロセスから解放したいため、プライマリグラフィックコントローラーを「INTEL」に設定する必要がありました(基本的にはSudo prime-select intelを実行しています)
ただし、/ usr/lib/nvidia-387が設定されていると、プロファイルにログインできなくなります。パスワードを入力すると、数秒間黒い画面が表示され、最終的にログイン画面に戻ります。
また、現在のXORG conf(他の同様のトピックからコピーして貼り付けたもの)も添付します。
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "None"
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
解決方法はありますか? LD_LIBRARY_PATHをそのままにしておくことが重要です。
ご協力ありがとうございました。
私は問題を解決しませんでした。しかし、私はあなたのための回避策を持っています。
1。/etc/default/grub
を編集
GRUB_CMDLINE_LINUX_DEFAULT
を変更して
GRUB_CMDLINE_LINUX_DEFAULT='pcie_port_pm=off acpi_backlight=none acpi_osi=Linux acpi_osi=! acpi_osi="Windows 2009"'
この手順は、ログイン後の空白画面を防ぐためのものです。
2。nvidiaライブラリディレクトリを/etc/ld.so.conf.d/nvidia.conf
に移動
nvidia.conf
の内容は
/usr/lib/nvidia-390
/usr/lib32/nvidia-390
これらのディレクトリは、コンピューターのドライバーバージョンによって異なります。
。create /etc/init.d/nvidia
Nvidiaランタイムライブラリを無効および有効にします。
#!/bin/sh
### BEGIN INIT INFO
# Provides: nvidia
# Required-Start: $all
# Required-Stop: $all
# Default-Start: 5
# Default-Stop: 0 6
# Short-Description: load/unload nvidia library
# Description: load/unload nvidia library
### END INIT INFO
PRIME=$(prime-select query)
if [ "$PRIME" = "nvidia" ]; then
exit 0
fi
case "$1" in
start)
sleep 10
cd /etc/ld.so.conf.d
mv nvidia.conf.bak nvidia.conf
ldconfig
nvidia-smi
;;
stop)
cd /etc/ld.so.conf.d
mv nvidia.conf nvidia.conf.bak
ldconfig
esac
4。update-rc.d nvidia defaults
を実行
/etc/rc5.d/
にSXXnvidia
があり、/etc/rc6.d/
、/etc/rc0.d/
にKXXnvidia
があります。
/etc/init.d/nvidia stop
およびnvidia-smi
を実行しようとすると、見つからないライブラリのエラーメッセージが表示されます。
/etc/init.d/nvidia start
を実行してみてください。その後、nvidia-smi
で問題ありません。
すべてが問題なければ、今すぐリブートできます。デスクトップにログインする必要があります。
5。何か問題が発生した場合
最も可能性のある問題は、nvidia
スクリプトが実行されないことです。その場合は、Ctrl + Alt + F1を押してttyモードにし、/etc/init.d/nvidia stop; reboot
を実行します。その後、統一されたデスクトップに戻ってデバッグできます。
6。既知の副作用
IntelをプライムGPUとして使用すると、unity-control-center
(システム設定)の起動に失敗します。
GLib-CRITICAL **: g_strsplit: assertion `string != NULL' failed.
注:私のシステム仕様
# uname -r
4.13.0-32-generic
# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.3 LTS
Release: 16.04
Codename: xenial
# dpkg -l | grep cuda
ii cuda-9-0 9.0.176-1 AMD64 CUDA 9.0 meta-package
ii cuda-command-line-tools-9-0 9.0.176-1 AMD64 CUDA command-line tools
ii cuda-core-9-0 9.0.176-1 AMD64 CUDA core tools
ii cuda-cublas-9-0 9.0.176.1-1 AMD64 CUBLAS native runtime libraries
ii cuda-cublas-dev-9-0 9.0.176.1-1 AMD64 CUBLAS native dev links, headers
ii cuda-cudart-9-0 9.0.176-1 AMD64 CUDA Runtime native Libraries
ii cuda-cudart-dev-9-0 9.0.176-1 AMD64 CUDA Runtime native dev links, headers
ii cuda-cufft-9-0 9.0.176-1 AMD64 CUFFT native runtime libraries
ii cuda-cufft-dev-9-0 9.0.176-1 AMD64 CUFFT native dev links, headers
ii cuda-curand-9-0 9.0.176-1 AMD64 CURAND native runtime libraries
ii cuda-curand-dev-9-0 9.0.176-1 AMD64 CURAND native dev links, headers
ii cuda-cusolver-9-0 9.0.176-1 AMD64 CUDA solver native runtime libraries
ii cuda-cusolver-dev-9-0 9.0.176-1 AMD64 CUDA solver native dev links, headers
ii cuda-cusparse-9-0 9.0.176-1 AMD64 CUSPARSE native runtime libraries
ii cuda-cusparse-dev-9-0 9.0.176-1 AMD64 CUSPARSE native dev links, headers
ii cuda-demo-suite-9-0 9.0.176-1 AMD64 Demo suite for CUDA
ii cuda-documentation-9-0 9.0.176-1 AMD64 CUDA documentation
ii cuda-driver-dev-9-0 9.0.176-1 AMD64 CUDA Driver native dev stub library
ii cuda-drivers 390.12-1 AMD64 CUDA Driver meta-package
ii cuda-libraries-9-0 9.0.176-1 AMD64 CUDA Libraries 9.0 meta-package
ii cuda-libraries-dev-9-0 9.0.176-1 AMD64 CUDA Libraries 9.0 development meta-package
ii cuda-license-9-0 9.0.176-1 AMD64 CUDA licenses
ii cuda-misc-headers-9-0 9.0.176-1 AMD64 CUDA miscellaneous headers
ii cuda-npp-9-0 9.0.176-1 AMD64 NPP native runtime libraries
ii cuda-npp-dev-9-0 9.0.176-1 AMD64 NPP native dev links, headers
ii cuda-nvgraph-9-0 9.0.176-1 AMD64 NVGRAPH native runtime libraries
ii cuda-nvgraph-dev-9-0 9.0.176-1 AMD64 NVGRAPH native dev links, headers
ii cuda-nvml-dev-9-0 9.0.176-1 AMD64 NVML native dev links, headers
ii cuda-nvrtc-9-0 9.0.176-1 AMD64 NVRTC native runtime libraries
ii cuda-nvrtc-dev-9-0 9.0.176-1 AMD64 NVRTC native dev links, headers
ii cuda-repo-ubuntu1604 9.1.85-1 AMD64 cuda repository configuration files
ii cuda-runtime-9-0 9.0.176-1 AMD64 CUDA Runtime 9.0 meta-package
ii cuda-samples-9-0 9.0.176-1 AMD64 CUDA example applications
ii cuda-toolkit-9-0 9.0.176-1 AMD64 CUDA Toolkit 9.0 meta-package
ii cuda-visual-tools-9-0 9.0.176-1 AMD64 CUDA visual tools
ii libcuda1-390 390.12-0ubuntu1 AMD64 NVIDIA CUDA runtime library
ii libcudnn7 7.0.5.15-1+cuda9.0 AMD64 cuDNN runtime libraries
ii libcudnn7-dev 7.0.5.15-1+cuda9.0 AMD64 cuDNN development libraries and headers
# dpkg -l | grep nvidia
ii nvidia-390 390.12-0ubuntu1 AMD64 NVIDIA binary driver - version 390.12
ii nvidia-390-dev 390.12-0ubuntu1 AMD64 NVIDIA binary Xorg driver development files
ii nvidia-modprobe 390.12-0ubuntu1 AMD64 Load the NVIDIA kernel driver and create device files
ii nvidia-opencl-icd-390 390.12-0ubuntu1 AMD64 NVIDIA OpenCL ICD
ii nvidia-prime 0.8.2 AMD64 Tools to enable NVIDIA's Prime
ii nvidia-settings 390.12-0ubuntu1 AMD64 Tool for configuring the NVIDIA graphics driver