Ubuntu Weekly Recipe

第456回 Ubuntu 16.04 LTSでCUDA 8.0を使用する

この記事を読むのに必要な時間:およそ 15 分

スクリプト版を使ってインストール

スクリプト版はNVIDIA製ドライバーと同じく,インストーラースクリプトをダウンロードして実行するだけです。インストーラースクリプトはシェルスクリプトとバイナリアーカイブが結合したフォーマットになっています。

スクリプトのダウンロード
$ wget https://developer.nvidia.com/compute/cuda/8.0/prod/local_installers/cuda_8.0.44_linux-run

スクリプト情報の表示
$ bash cuda_8.0.44_linux-run --info
Identification: NVIDIA CUDA PACKAGE
Target directory: pkg
Uncompressed size: 1429144 KB
Compression: gzip
Date of packaging: Wed Sep 14 16:30:19 PDT 2016
Built with Makeself version 2.1.4 on linux-gnu
Build command was: /home/buildmeister/nightly/rel/gpgpu/toolkit/r8.0/build/makeself-2.1.4/makeself-cuda.sh \
    "pkg" \
    "cuda-linux64-uber-21122537.run" \
    "NVIDIA CUDA PACKAGE" \
    "./cuda-installer.pl"
Script run after extraction:
     ./cuda-installer.pl
pkg will be removed after extraction

スクリプトのヘルプ
$ bash cuda_8.0.44_linux-run --help
Options:
  --silent
    Performs an installation with no further user-input and minimal
    command-line output based on the options provided below. Silent
    installations are useful for scripting the installation of CUDA.
    Using this option implies acceptance of the EULA. The following flags
    can be used to customize the actions taken during installation. At
    least one of --driver, --uninstall, --toolkit, and --samples must
    be passed if running with non-root permissions.

  --driver
    Install the CUDA Driver.

(後略)

いろいろオプションが表示されますが,基本的に対話形式で設定していきます。オプションを指定することで対話部分を飛ばすことは可能ではあるものの,初めてインストールするなら一通り見ておいたほうがいいでしょう。

ちなみにNVIDIA製ドライバーのインストーラーはncursesを用いたCUIなスクリプトでしたが,CUDAのインストーラーはコンソールにひたすら文字が表示されるだけのPerlスクリプトです。

$ sudo bash cuda_8.0.44_linux-run
(EULAが表示されるので,スペースキーで最後までスクロールする)

(EULAに同意する場合は「accept」と入力)
Do you accept the previously read EULA?
accept/decline/quit: accept

(NVIDIA製ドライバーをインストールするかどうか:インストール済みなら「no」)
Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 367.48?
(y)es/(n)o/(q)uit: no

(CUDAツールキットをインストールするかどうか:「yes」)
Install the CUDA 8.0 Toolkit?
(y)es/(n)o/(q)uit: yes

(ツールキットのインストール先:既定の設定をそのまま利用するならEnter)
Enter Toolkit Location
 [ default is /usr/local/cuda-8.0 ]:

(バージョンに依存しないパスにするためにシンボリックリンクを作るかどうか)
Do you want to install a symbolic link at /usr/local/cuda?
(y)es/(n)o/(q)uit: yes

(CUDA 8.0のサンプルコードをインストールするか:インストールしなくても可)
Install the CUDA 8.0 Samples?
(y)es/(n)o/(q)uit: yes

(サンプルコードのインストール先)
Enter CUDA Samples Location
 [ default is /home/shibata ]:

Installing the CUDA Toolkit in /usr/local/cuda-8.0 ...
Missing recommended library: libGLU.so
Missing recommended library: libX11.so
Missing recommended library: libXi.so
Missing recommended library: libXmu.so

  => デスクトップ環境がインストールされていないと上記メッセージが表示される。
     X11やOpenGLが必要なサンプルが動かないだけ。

Installing the CUDA Samples in /home/shibata ...
Copying samples to /home/shibata/NVIDIA_CUDA-8.0_Samples now...
Finished copying samples.

===========
= Summary =
===========

Driver:   Not Selected
Toolkit:  Installed in /usr/local/cuda-8.0
Samples:  Installed in /home/shibata, but missing recommended libraries

Please make sure that
 -   PATH includes /usr/local/cuda-8.0/bin
 -   LD_LIBRARY_PATH includes /usr/local/cuda-8.0/lib64, or, add /usr/local/cuda-8.0/lib64 to /etc/ld.so.conf and run ldconfig as root

To uninstall the CUDA Toolkit, run the uninstall script in /usr/local/cuda-8.0/bin

Please see CUDA_Installation_Guide_Linux.pdf in /usr/local/cuda-8.0/doc/pdf for detailed information on setting up CUDA.

***WARNING: Incomplete installation! This installation did not install the CUDA Driver. A driver of version at least 361.00 is required for CUDA 8.0 functionality to work.
To install the driver using this installer, run the following command, replacing <CudaInstaller> with the name of this run file:
    sudo <CudaInstaller>.run -silent -driver

  => ドライバーをインストールするかどうかで「no」と答えたことによる警告。
     上記のようにあとからドライバーだけインストールすることも可能。

Logfile is /tmp/cuda_install_13277.log

これでスクリプトを用いた必要なファイルのインストールは完了です。

アンインストールしたい場合は,一緒にインストールされたアンインストールスクリプトを実行してください。

$ sudo uninstall_cuda_8.0.pl

著者プロフィール

柴田充也(しばたみつや)

Ubuntu Japanese Team Member株式会社 創夢所属。数年前にLaunchpad上でStellariumの翻訳をしたことがきっかけで,Ubuntuの翻訳にも関わるようになりました。