심층 학습용 서버 설정

5259 단어 pyenv콘다

우분투16.04



게이트웨이 서버



사용자 이름과 공개 키를 게이트웨이 서버 관리자에게 보내 계정을 만들 수 있습니다.
#秘密鍵・公開鍵の作成
$ ssy-keygen -t rsa

GPU 서버



GPU 서버 관리자에게 계정을 만들어 달라고 한다.
#ログインしてパスワードの設定
$ passwd



강력한 보완을 사용하고 싶기 때문에 zsh를 설치.
그 밖에는 fish 좋지만, command1 && command2 를 사용할 수 없거나 for문의 형식이 bash, zsh와 달리 익숙하지 않았다.
#インストール
$ sudo apt install zsh
$ chsh -s /usr/bin/zsh

CUDA



버전 확인, CUDA:8, cuDNN:6
$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

$ cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
#define CUDNN_MAJOR    6

시스템의 파이썬


$ python3 -V
Python 3.5.2
$ python3 -m venv system35
The virtual environment was not created successfully because ensurepip is not
available.  On Debian/Ubuntu systems, you need to install the python3-venv
package using the following command.

    apt-get install python3-venv

You may need to use sudo with that command.  After installing the python3-venv
package, recreate your virtual environment.

Failing command: ['/home/natsuki/system35/bin/python3', '-Im', 'ensurepip', '--upgrade', '--default-pip']

venv를 포함하지 않음

system의 python2.7에서 chainer와 tensorflow가 설정되어 있음을 확인할 수 있습니다.
확인 된 샘플 프로그램 /usr/local/torch7/convnet-benchmarks/chainer/alex.py

pyenv



system의 환경을 더럽히지 않고 사용자 디렉토리에 라이브러리를 넣거나 Python의 버전을 올리거나 Anaconda를 넣고 싶다.
#インストール
$ git clone https://github.com/pyenv/pyenv.git ~/.pyenv
~/.zshrc 에 다음을 추가

~/.zshrc
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
source ~/.zshrc 현재 인터프리터에서도 활성화합니다.

아나콘다



pyenv로 들어가는 Anaconda와 Python의 버전 대응표


anaconda3-5.0.0
anaconda3-5.1.0
anaconda3-5.2.0
anaconda3-5.3.0


3.6.8
3.6.4
3.6.5
3.7.0


다음과 같이 빌드 이름을 확인하여 CUDA 버전에 해당하는 tensorflow-gpu를 찾습니다.
$ conda search tensorflow-gpu



Python3.7계에서는 동작하지 않는 것을 확인할 수 있었으므로, Python3.6.8의 anaconda3-5.0.0을 인스톨 한다.
$ pyenv install anaconda3-5.0.0
$ pyenv global anaconda3-5.0.0

다음과 같이 버전과 빌드를 지정하여 tensorflow-gpu를 설치합니다.
$ conda install tensorflow-gpu=1.2.1=py36cuda8.0cudnn6.0_0

GPU가 보이는지 확인


from tensorflow.python.client import device_lib
device_lib.list_local_devices()



비고


$ pip install tensorflow-gpu

그렇다면 공유 라이브러리 libcublas.so의 의존성을 해결할 수 없었습니다. conda 는 편리합니다.

감사의 말



연구실 선택의 상담을 타 준 친구와 예산을 이끌어 온 선생님께 감사.

좋은 웹페이지 즐겨찾기