問題タブ [cudnn]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
theano - Theano が Gpu を見つけられない - Ubuntu 16.04
警告 (theano.sandbox.cuda): CUDA がインストールされていますが、デバイス gpu が利用できません (エラー: cuda を利用できません)
サンプル Theano プログラムを実行しようとすると、このエラーが発生します。
このスレッドで提案されているすべての修正を試しました。
nvcc --version
出力:
nvcc: NVIDIA (R) Cuda コンパイラ ドライバ
Copyright (c) 2005-2015 NVIDIA Corporation
Built on Tue_Aug_11_14:27:32_CDT_2015 Cuda
コンパイル ツール、リリース 7.5、V7.5.17
nvidia-smi
出力:
gcc バージョン:
私はこれをしばらくの間機能させようとしてきましたが、誰かが私を正しい方向に向けてほしいと思っています。
amazon-ec2 - g2.2xlarge インスタンスに CUDA 8.0 および Tensorflow 0.12 を含む cuDNN 5.1.5 をインストールできない
私が取った手順は以下のとおりです。ステップ中に、./configure
(必要に応じて) v5.1.5 を指定する代わりに cuDNN バージョン (v5) のシステム デフォルトを許可しない限り、cuDNN の環境バージョン (v5) がターゲット バージョンと一致しないというエラーが表示されます。 (5.1.5)。Nvidia から CUDA 8.0 用の cuDNN v5.1.5 ファイルをダウンロードしたので、困惑しています。
さらに、https://github.com/tensorflow/tensorflow/blob/master/third_party/gpus/cuda_configure.bzlの 240 行目あたりを掘り下げた後、bazel configure スクリプトがチェックするバージョンは、 cuDNN バージョンのメジャー数字を考慮に入れます (cudnn.h 内のメジャー、マイナー、パッチの数字はそれぞれ 5、1、5 です)。したがって、どのようにしてバージョン 5.1.5 をインストールできるようになるかはわかりません。多分私はそれを間違って見ていますか?
いずれにせよ、g2.2xlarge インスタンスに CUDA 8.0 と Tensorflow 0.12 を使用して cuDNN 5.1.5 をインストールする方法はありますか?
ありがとう!
手順
(注:これらは機能しますが、必要に応じて5.1.5ではなく、cuDNN 5.0をインストールします)
プロビジョニング
- 次のプロビジョニング手順に従ってください: https://medium.com/@giltamari/tensorflow-getting-started-gpu-installation-on-ec2-9b9915d95d6f#.2hv67eeek
(つまり、以下を含みません
sudo apt-get update && sudo apt-get -y upgrade
)
依存関係とツールのインストール
- 以下に慣れる:
- http://expressionflow.com/2016/10/09/installing-tensorflow-on-an-aws-ec2-p2-gpu-instance/
- http://ramhiser.com/2016/01/05/installing-tensorflow-on-an-aws-ec2-instance-with-gpu-support/
- https://alliseesolutions.wordpress.com/2016/09/08/install-gpu-tensorflow-from-sources-w-ubuntu-16-04-and-cuda-8-0-rc/
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install -y build-essential git python-pip libfreetype6-dev libxft-dev libncurses-dev libopenblas-dev gfortran python-matplotlib libblas-dev liblapack-dev libatlas-base-dev python-dev python-pydot linux-headers-generic linux-image-extra-virtual unzip python-numpy swig python-pandas python-sklearn unzip wget pkg-config zip g++ zlib1g-dev libcurl3-dev
sudo pip install -U pip
Cuda 8 のインストール
wget https://developer.nvidia.com/compute/cuda/8.0/prod/local_installers/cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64-deb
sudo dpkg -i cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64-deb
rm cuda-repo-ubuntu1604-8-0-local_8.0.44-1_amd64-deb
sudo apt-get update
sudo apt-get install -y cuda
cuDNN のインストール
- cuDNN の最新バージョンをダウンロードしてインストールします。cuDNN をダウンロードするには、NVIDIA 開発者サイトにログインする必要があるため、wget を使用してファイルをフェッチすることはできません。NVIDIA から次のファイルをダウンロードし、AWS インスタンスにアップロードします。
- Linux で CUDA 8.0 用の cuDNN 5.1 をダウンロードします。
- scp -i ssh-key.pem パス/to/downloaded/cudnn ubuntu@ec2{インスタンス}.us-west-1.compute.amazonaws.com:~/
sudo tar -xzvf cudnn-8.0-linux-x64-v5.1.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
環境を構成する
- の最後に以下を入れます
~/.bashrc
:export CUDA_HOME=/usr/local/cuda
export CUDA_ROOT=/usr/local/cuda
export PATH=$PATH:$CUDA_ROOT/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_ROOT/lib64:$CUDA_ROOT/extras/CUPTI/lib64
source ~/.bashrc
sudo reboot
ベゼルの取り付け
sudo add-apt-repository -y ppa:webupd8team/java
sudo apt-get update
echo debconf shared/accepted-oracle-license-v1-1 select true | sudo debconf- set-selections
echo debconf shared/accepted-oracle-license-v1-1 seen true | sudo debconf- set-selections
sudo apt-get install -y oracle-java8-installer
sudo apt-get install pkg-config zip g++ zlib1g-dev
https://github.com/bazelbuild/bazel/releases/download/0.3.2/bazel-0.3.2-installer-linux-x86_64.sh
ローカルマシンからec2インスタンスへのscpchmod +x bazel-0.1.4-installer-linux-x86_64.sh
./bazel-0.1.4-installer-linux-x86_64.sh --user
rm bazel-0.1.4-installer-linux-x86_64.sh
bazel version
Tensorflow のビルドとインストール
git clone --recurse-submodules https://github.com/tensorflow/tensorflow
cd tensorflow
TF_UNOFFICIAL_SETTING=1 ./configure
- 以下を除くすべてに対してEnter/デフォルトを押します。
- CUDA バージョン = 8.0、CUDA 依存関係 = 3.0 (k520 gpu)
bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg
sudo pip install --upgrade /tmp/tensorflow_pkg/tensorflow-0.12.0rc1-cp27-cp27mu-linux_x86_64.whl
caffe - Caffe で cuDNN を一時的に無効にする
私のtrain_valファイルのすべての単一レイヤーでengine:Caffeを設定せずに、CaffeでcuDNNを一時的に無効にすることは可能ですか? リファクタリングの目的で決定論的な結果を得たいと考えていますが、それを行っていないときは cuDNN を使用し続けます。