デュアルブートシステム(Windows 10
およびUbuntu 16.04.x
)でGPUテンソルフローのインストールを実行しました
両方のOSには、ほぼ同じバージョンのドライバーがあります
Lenovo P50 laptop with Nvidia Quadro M1000M
Windows 376.51 nvidia driver version
Ubuntu 375.66 nvidia driver version
ディープラーニングモデルをトレーニングします。各トレーニングセットの時間は大幅に異なります
Windows 10 + Tensorflow 1.3 GPU + CUDA = 8 min. per Epoch
Ubuntu 16.04 + Tensorflow 1.3 GPU + CUDA = 45 min. per Epoch
Ubuntuのインストールは、apt-get
(ソースのインストールではありません)、およびpip
のすべてのデフォルトを介して行われました
これまで考えていたのは... NVIDIA GPUを使用してグラフィックスをペイントしなければならないということです。計算にすべてのGPUを使用することはできません。これを確認する方法はありますか? CUDA 8.x
のパッチを含めて、両方に同じものをすべてインストールしました。
私は問題が何であるかさえ明確ではありませんが、ドライバーがOptimusを使用するようにセットアップされているように見えます。
アイデア1:ソースからテンソルフローを再コンパイルすることです。Ubuntu16.x内ですべてのCPUを最適化してください。
アイデア2:上記が何もしない場合、BIOSに入り、Intel内蔵グラフィックスを強制的にインストールします..再インストールを実行し、noveuaグラフィックスをインストールしようとします..
これは「Optimus」対応のラップトップのようです。レンダリングのためにnvidia GPUを完全にオフにすることはできません。ハイブリッドモードのみを有効にしてください。おそらく、新規インストールを行います。すべてのnvidiaドライバーを削除し、Xがそのように動作するかどうかを確認します。
"So I went to BIOS and set the integrated graphics as default and
restart. Remember to switch the HDMI from the port on GTX1080 to that
on the motherboard. Now the display works well. I successfully
installed Ubuntu following its Prompt guides."
When installing the NVIDIA display driver, be sure to:
1. not install the openGL libs (there are command line options with
driver runfile installers or CUDA runfile installers to allow this)
2. make sure not to make any changes to the xorg.conf configuration.
たくさんの狩りの後、捜索..合体..問題を発見し、修正しました!はい、WindowsのIntel GPUは使用されていましたが、Linuxでは使用されませんでした... NVIDIA GPUに画面を描画させ、リソースを失いました。
以前のシステムの上に、新しいUbuntu 16.04 USBスティックを再インストールしました。
During reinstallation choose updates, but don't use 3rd party libraries
インストールしたら、Nvidia独自のドライバーではなく、Intel nouveauドライバーモードになっていることを確認する必要があります。
今、奇妙な部分が来ました
ここのユーザーは、同じ問題を指摘していました。しかし、デスクトップ展開用
基本的に...
要約すると、これを機能させるには、次のことが必要です。
1. make sure you have enabled onboard graphics in the BIOS settings (or set it as primary)
私はハイブリッドモードをしました。インテル専用オプションがないので
2. install both xorg intel driver and nvidia/cuda drivers
ここでは、フラグを渡す必要があります
--no-opengl-files //for the driver install I choose latest (384)
--no-openfl-libs // cuda 8.0 + patch here ..
必ずnouveau ..および指示に記載されているすべての手順を無効にしてください。
あなたが良いことを知る主な方法。glmark2
をインストールし、常にそれがインテルを出力していることを保証する
3. start nvidia-settings, and go to the PRIME settings page, set Intel (Power Saving Mode) as default
4. modify your .bashrc and set LD_LIBRARY_PATH to at least contain /usr/local/cuda/lib64:/usr/lib/nvidia-XXX where XXX in my case is 375.
このフォルダは私にはまったく存在しませんでした。インストール後のcudaの指示で説明されているデフォルトのLD_LIBRARY_PATH
およびPATH
を追加しました
4. logout to restart X or reboot
5. run glmark2 to confirm GL status
あなたはopenglファイルをインストールせずにインストールすべきだったので..これはおそらく不要です
<strike>6. (update) if the libGL printed from step 5 points to nvidia's driver folder, you need to remove/rename the libGL.so*/libGLX.so*/libGLdispatch.so* under nvidia driver folder so that your OS can pick up the mesa libGL library.</strike>
7. run nvidia-smi to list your dedicated NVIDIA GPU, and run your CUDA program, you should not see any errors.
これはnvidia-modprobe
を1回実行するまで機能しませんでした。その後、突然すべてが機能しました。
更新:悲しいことに、再起動は設定を壊しました。まだ修正方法がわからない...