Ubuntuでの CUDAのバージョンの切り替え方

使いたいGPU計算ソフトがCUDAの特定のバージョンでしか動かないことがあると思います。
CUDAのバージョンの切り替え方を書いておきます。
切り替え先のバージョンがインストールしてある必要があります。

1. update-alternatives を使う方法

  • Ubuntuには、update-alternativesという機能があり、バージョンの切り替えが比較的容易にできます。
  • 今、CUDA 10.2, 11.0, 11.5 がインストールされているとします。
  • まず、update-alternatives の選択肢に入るように、update-alternatives –install をします。優先順位はそこまで重要ではないのですが、10.2を優先したいので、この中では一番小さくしました。
sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-11.5 100
sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-11.0 90
sudo update-alternatives --install /usr/local/cuda cuda /usr/local/cuda-10.2 80
  • 次に、update-alternatives –config で選びます。
sudo update-alternatives --config cuda
  • すると次のような画面になります。
$ sudo update-alternatives --config cuda
alternative cuda (/usr/local/cuda を提供) には 3 個の選択肢があります。

  選択肢    パス                 優先度  状態
------------------------------------------------------------
* 0            /usr/local/cuda-11.5    100       自動モード
  1            /usr/local/cuda-10.2    80        手動モード
  2            /usr/local/cuda-11.0    90        手動モード
  3            /usr/local/cuda-11.5    100       手動モード

現在の選択 [*] を保持するには <Enter>、さもなければ選択肢の番号のキーを押してください: 
  • 今の場合、cuda-10.2 を使いたいので 1 を押してEnterをします。

すると、以下のような表示になります。

update-alternatives: /usr/local/cuda (cuda) を提供するためにマニュアルモードで /usr/local/cuda-10.2/ を使います

パスの設定

  • NVIDIAの公式サイトの Post-installation action に、パス設定が記載されています。

  • 私は、できるだけ .bashrc をいじらないでというのを最近、モットーにしています。Ubuntuでは .bashrc の中で読み込まれる .bash_aliases があるのでそちらに追記します。.bash_aliases はその名の通り、本来はエイリアスの設定を書くものと思いますが、様々なパスをここに書いておくと、.bashrc を直接いじらなくていいので安全かと思います。

  • update-alternatives を併用すると、以下のような記載で大丈夫になります。LD_LIBRARY_PATHは、自分が使い分けをしたいCUDAの lib64 のパスをひたすら書いていきます。

# CUDA
export PATH=/usr/local/cuda/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:/usr/local/cuda-10.2/lib64:/usr/local/cuda-11.0/lib64:/usr/local/cuda-11.5/lib64${LD_LIBRARY_PATH:+${LD_LIBRARY_PATH}}
  • ターミナルを一度閉じて、再度ターミナルを起動します。

CUDA の確認

  • nvcc –version で NVCC のドライバが確認できます。
$ nvcc --version
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2019 NVIDIA Corporation
Built on Wed_Oct_23_19:24:38_PDT_2019
Cuda compilation tools, release 10.2, V10.2.89
  • CUDA 10.2 が選ばれています。
  • 他を選びたかったら、sudo update-alternatives –config cuda を実行すれば大丈夫です。

2. シンボリックリンクを使う方法

  • 現在のCUDAのバージョンを確認します。
nvcc -V
  • /usr/local/cuda へのリンクを切り替え先のバージョンのインストール場所に変更します。

  • 例:CUDA5.0に切り替える場合

sudo unlink /usr/local/cuda
sudo ln -s /usr/local/cuda-5.0 /usr/local/cuda
  • 切り替え後のバージョンを確認します。
nvcc -V
  • なおrebootは不要です。

Rとigraphを使ったネットワーク解析と可視化

Rで用いることのできるネットワーク解析ツールに igraph があります。
何かよいチュートリアルがないかと探していたところ、Katherine Ognyanova女史によるすばらしいチュートリアルを見つけました。

とてもよいものだったので、ぜひ日本語化したいと思い、Ognyanova女史に翻訳の許可を求めたところ、快諾してくださいましたので、我々の研究室の田村昌士先生が中心に翻訳してくださいました。

以下に公開します。

Rとigraphを使ったネットワーク解析と可視化のチュートリアル

Lin4Neuroのイメージファイル(isoファイル)を用いてVirtualBoxにインストールする方法

Lin4Neuro (L4N)は、isoイメージファイルおよびVirtualBoxの仮想アプライアンスを配布しています。
ここでは、isoイメージファイルを用いてVirtualBoxにL4Nをインストールする方法を解説します。

この方法は若干だけ手間がかかりますが、以下のメリットがあります。

  • ハードディスクの容量を自分で設定できる
  • これが一番大きいメリットかと思われます。

  • ログイン名などを自分の好みにあわせられる
  • ご自身で設定できます。

具体的な方法を以下に示します。Acknowledgmentとして、我々の研究室の山田典子さんが以下を準備してくださいました。
VirtualBoxのインストールまでは済んでいるものとして話をすすめます。なお、この方法では、VirtualBox Extension Packは不要です。

続きを読む