CentOS6.7での chainer 1.7.0 with CUDA のインストール
はじめに
インストールのハマりどころ
- python 2.7系でも python 3.5系でもインストールは楽だった
- しかし、Chainerの最新版では gcc 4.8 以上が必要とされているが、CentOS6.7のでは 4.4 どまりである
- ちなみに、GPGPU (CUDA)を使わない場合は4.4でも問題ないが
python train_mnist.py -g 0
をすると死ぬ
- core がない、などのエラーがでる
- あれ自分の環境は?と思った人は、とりあえず
python -c 'import cupy'
をして何もエラーがなければ問題は無い
- Chainerをインストール(コンパイル)するときだけgcc-4.8が使えれば良く、実行時には必要とされないようだ
インストール手順のメモ
gcc 4.8を使えるようにする
python train_mnist.py -g 0
をすると死ぬ
- core がない、などのエラーがでる
- あれ自分の環境は?と思った人は、とりあえず
python -c 'import cupy'
をして何もエラーがなければ問題は無い
gcc 4.8を使えるようにする
wgetを使う方法がやたらと見つかるが、ここではyum
からSCL (Software Collection; devtools-3) を使う方法で試してみる。
$ sudo yum install centos-release-scl-rh
$ sudo yum install devtoolset-3-gcc-c++
1行目でリポジトリが追加される。なお、鍵はない模様。/etc/repos.d/
を眺めておくと良い。
2行目でscl-utils
、devtoolset-3-gcc
やdevtoolset-3-binutils
あたりもインストールされる。
なお、gcc
などがインストールされる先は/opt/rh/devtoolset-3/
以下であり、既存のgcc
が上書きされたりパスを自動で通すことはない。
今回は一時的に新しいgcc
とg++
が使いたいのだが、他のSCLコレクションとは違ってshellを動かす必要があるみたい。ということで、
$ scl enable devtoolset-3 bash
これで動く。バージョンを一応確認しておくと、
$ gcc -v
4.9という文字が見えるはず。
Chainerのインストール
いろいろ試行錯誤したあとにこのページを見つけていると思われるので、キャッシュ消しつつインストールする。
$ pip unistall chainer
$ pip install chainer --no-cache
終わったらちょっとだけ確認。
$ python -c 'import cupy'
何もエラーが出なければOK。
後は、mnist回してみましょう。
最後に
年のため、ログアウトしてからもう一度ログインしても、動くことをテストしておいた方が良いかもしれません。
Author And Source
この問題について(CentOS6.7での chainer 1.7.0 with CUDA のインストール), 我々は、より多くの情報をここで見つけました https://qiita.com/naoh16/items/2693645ab2733faf1aa5著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .