みらいテックラボ

音声・画像認識や機械学習など, 管理人が興味のある技術の紹介や実際にトライしてみた様子などメモしていく.

深層学習用に低火力PCを組み立てた(3)

人工知能技術戦略会議等主催 第1回AIチャレンジコンテスト[1][2]で入賞賞品としていただいたNVIDIA GTX-1060 Founders Editionを活用しようと, 「低火力コンピューティング」のPCを組み立てた.

前回は,「1) X Window Systemの描画が遅い」件について, 対策を紹介した.
今回は, もう一つの「2) NVIDIAのドライバをインストールすると, ログインループする」件について, 対策を紹介する.

関連記事:

4. 不具合2)の対策
4.1 NVIDIAドライバのインストール
ここからGTX-1060対応のLinux 64bitドライバをダウンロードし, インストールした.

$ chmod a+x NVIDIA-Linux-x86_64-384.59.run

$ sudo ./NVIDIA-Linux-x86_64-384.59.run

$ reboot

今度も, ログインループになり, 抜け出せない.
NVIDIAのドライバが, X Window Systemに影響を与えているようだ.

ctrl+alt+F1で仮想コンソールに入り, Xの起動ログを確認.

$ less /var/log/Xorg.0.log

[     9.197]
X.Org X Server 1.18.4
Release Date: 2016-07-19
[     9.197] X Protocol Version 11, Revision 0
[     9.197] Build Operating System: Linux 4.4.0-83-generic x86_64 Ubuntu
[     9.197] Current Operating System: Linux moonlight 4.4.0-91-generic #114-Ubuntu SMP Tue Aug 8 11:56:56 UTC 2017 x86_64
   :
[     9.205] (EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)

GLX(OpenGL Extension to the X Window System)は, OpenGLX Window System をつなぐバインディングを提供するが, これの初期化に失敗しているようだ.
それも, "Compatible NVIDIA X driver not found"といっている.
確か, 最初にNVIDIAドライバのインストールを試した時に, "--no-opengl-files"オプションを付けてインストールすると, ログインループが治ったという記事[3]があった.
これを試してみることにしたが, X Window Systemの部分がすでに変更されていて気持ちが悪いので, NVIDIAのドライバをuninstallするのではなく, Ubuntuの再インストールからやり直した.

$ sudo ./NVIDIA-Linux-x86_64-384.59.run --no-opengl-files

$ reboot

今度は, 問題なくloginできた.
ついでに, Xの起動ログを確認したが, NVIDIAが邪魔している様子はない.

[     2.913] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[     2.913] (II) AIGLX: enabled GLX_ARB_create_context
[     2.913] (II) AIGLX: enabled GLX_ARB_create_context_profile
[     2.913] (II) AIGLX: enabled GLX_EXT_create_context_es{,2}_profile
[     2.913] (II) AIGLX: enabled GLX_INTEL_swap_event
[     2.914] (II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
[     2.914] (II) AIGLX: enabled GLX_EXT_framebuffer_sRGB
[     2.914] (II) AIGLX: enabled GLX_ARB_fbconfig_float
[     2.914] (II) AIGLX: enabled GLX_EXT_fbconfig_packed_float
[     2.914] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[     2.914] (II) AIGLX: enabled GLX_ARB_create_context_robustness
[     2.914] (II) AIGLX: Loaded and initialized i965
[     2.914] (II) GLX: Initialized DRI2 GL provider for screen 0

最後に, NVIDIAのドライバが動作しているか確認しておく.

$ lspci | grep NVIDIA
01:00.0 VGA compatible controller: NVIDIA Corporation Device 1c03 (rev a1)
01:00.1 Audio device: NVIDIA Corporation Device 10f1 (rev a1)

$ nvidia-smi
Fri Aug 11 14:21:02 2017
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 384.59                 Driver Version: 384.59                    |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX 106...  Off  | 00000000:01:00.0 Off |                  N/A |
|  0%   33C    P0    25W / 120W |      0MiB /  6072MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

特に問題なく, 動いていそう.
よっしゃ!!

次回で最後となるが, 深層学習の環境構築(CUDA, cuDNN, Tensorflow, Keras等)について紹介する.

----
参照URL:
[1] オプトDSL・DeepAnalyticsコンテスト『人工知能技術戦略会議等主催 第1回AIチャレンジコンテスト』
[2] 第1回AIチャレンジコンテスト(料理分類部門)に挑戦してみた!! (3) - みらいテックラボ
[3] Ubuntu14.04にNVIDIAドライバーをインストールしたらGUIログインできなくなったときの話 - Qiita




はじめてのCUDAプログラミング―驚異の開発環境[GPU+CUDA]を使いこなす! (I・O BOOKS)

はじめてのCUDAプログラミング―驚異の開発環境[GPU+CUDA]を使いこなす! (I・O BOOKS)


CUDA by Example 汎用GPUプログラミング入門

CUDA by Example 汎用GPUプログラミング入門



CUDA高速GPUプログラミング入門

CUDA高速GPUプログラミング入門