[Tensorflow-2.x-gpu] python3 configure tensorflow-2.xgpu環境<2>
1.背景
前のブログを参照してください:
[tensorflow-2.x-gpu] python3 configuration tensorflow-2.x gpu environment(1)
https://blog.csdn.net/jn10010537/article/details/108917295
Anaconda3を使用してtensorflow-2.xGPUをインストールします。
最近システムを再インストールした後、ブログの実装をたどったところ、再インストールしたコンピューターにNVIDIAのcudaがインストールされていなかったため、GPUを使用できないことがわかりました。
私は数週間前に私のラップトップを同僚に貸しました、そして彼は私のコンピューターにcudaをインストールするべきでした。したがって、tensorflow-2.x gpuをインストールした後、トレーニングと推論にgpuを直接使用できます。
このブログは、フラッシュ後の新しいwindows10システムを示してい
ます。tensorflow-2.xgpuをインストールし、cuda、cuDnnを構成し、最後にGPUを高速化に使用します。
説明:
CUDA(Compute Unified Device Architecture)は、一般的なGPUコンピューティング用の並列コンピューティングプラットフォームおよびプログラミングモデルです。これはC言語に基づいており、グラフィックチップ上でプログラムを実行できる複数のC言語で拡張されています。
CUDAは、ディープニューラルネットワークGPUアクセラレーションライブラリcuDNN(CUDAディープニューラルネットワーク)を提供します。これにより、畳み込み、プーリング、正規化、活性化関数レイヤーなどの標準操作の迅速な実装が完了します。
2.TF公式ウェブサイトでのGPUサポート
GPUサポートについてはtensorflowの公式ウェブサイトを確認してください:
https ://tensorflow.google.cn/install/gpu
GPUサポートの説明は次のように要約されます
。UbuntuおよびWindowsの場合、GPUサポートを実現するには、CUDA®をサポートするグラフィックカードをインストールする必要があります。
つまり、グラフィックカードがCUDAフレームワークでサポートされているかどうかを確認してから、CUDAソフトウェアをインストールし、cudnn(深層学習加速ライブラリ)を構成し、GPUを使用して深層学習加速トレーニングと推論を行うためにtensorflow-gpuをインストールする必要があります。
注:ここに含まれるグラフィックカードはNカード、つまりNvidiaのGPUです。
以下は、TF公式Webサイトでのcuda環境変数の構成です。
3.グラフィックカードの計算能力を確認します
たとえば、私のものはGeForce RTX2060です。
対応する計算能力は7.5です。GPU
はCUDAフレームワークをサポートし、ディープラーニングアクセラレーションをサポートします。
Nvidiaの公式ウェブサイトリンクを参照してください:
https ://developer.nvidia.com/zh-cn/cuda-gpus
4.TF公式Webサイトでテスト済みのビルド構成を表示します
https://tensorflow.google.cn/install/source#gpu
Linux-GPUビルド構成は次のとおりです。
Windows-GPUのビルド構成は次のとおりです。
私のオペレーティングシステムはwindows10
です。tensorflow-gpuのバージョン1.xと2.0の両方を使用できます。以下で選択した領域のtensorflow-gpuバージョン:
tensorflow-gpu1.13.0〜2.0.0、最も頻繁に使用します:
選択グループの組み合わせは次のとおりです。
シリアルナンバー | ソフトウェアパッケージ | バージョン |
---|---|---|
1 | Python | 3.6.8 |
2 | tensorflow-gpu | 1.14.0 |
3 | 奇跡 | 10.0 |
4 | cuDNN | 7.4 |
5.tensorflow-gpuをインストールします
whlをダウンロードした後、pipのインストールに清華ミラーソースを使用することをお勧めします。
次のように、最初にtensorflow_gpu-1.14.0-cp36-cp36m-win_amd64.whlをダウンロードしてから、以下をインストールします。
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple tensorflow_gpu-1.14.0-cp36-cp36m-win_amd64.whl
何度もインストールしない場合は、使用しているネットワークが貧弱である可能性があります。ダウンロード帯域幅の広いネットワークに変更するか、仕事を休んでいる人が少ないときにインストールすることを選択してください。
注意:下载tensorflow的whl时,你可能遇到RC标志,下面解释一下:
RC->Release Candidate 预发行版
一般出了预发行版后,正式版就要出了。
インストールする前に、pythonパッケージを確認してください。
C:\Users\Administrator>pip list
Package Version
---------- -------
pip 21.0.1
setuptools 40.6.2
インストール後、pythonパッケージを確認してください。
E:\E05_project\packages>pip list
Package Version
-------------------- -------
absl-py 0.11.0
astor 0.8.1
cached-property 1.5.2
gast 0.4.0
google-pasta 0.2.0
grpcio 1.35.0
h5py 3.1.0
importlib-metadata 3.4.0
Keras-Applications 1.0.8
Keras-Preprocessing 1.1.2
Markdown 3.3.3
numpy 1.19.5
pip 21.0.1
protobuf 3.14.0
setuptools 53.0.0
six 1.15.0
tensorboard 1.14.0
tensorflow-estimator 1.14.0
tensorflow-gpu 1.14.0
termcolor 1.1.0
typing-extensions 3.7.4.3
Werkzeug 1.0.1
wheel 0.36.2
wrapt 1.12.1
zipp 3.4.0
注:
テンソルフローをインポートすると、この時点でエラーが報告されます。エラーは次のとおりです。
C:\Users\Administrator>python
Python 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 24 2018, 00:16:47) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
Traceback (most recent call last):
File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\platform\self_check.py", line 75, in preload_check
ctypes.WinDLL(build_info.cudart_dll_name)
File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\ctypes\__init__.py", line 348, in __init__
self._handle = _dlopen(self._name, mode)
OSError: [WinError 126] 找不到指定的模块。
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\__init__.py", line 28, in <module>
from tensorflow.python import pywrap_tensorflow # pylint: disable=unused-import
File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\__init__.py", line 49, in <module>
from tensorflow.python import pywrap_tensorflow
File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\pywrap_tensorflow.py", line 30, in <module>
self_check.preload_check()
File "D:\D02_pythonDevelop\D02_01_Python3\install_python3.6.8\lib\site-packages\tensorflow\python\platform\self_check.py", line 82, in preload_check
% (build_info.cudart_dll_name, build_info.cuda_version_number))
ImportError: Could not find 'cudart64_100.dll'. TensorFlow requires that this DLL be installed in a directory that is named in your %PATH% environment variable. Download and install CUDA 10.0 from this URL: https://developer.nvidia.com/cuda-90-download-archive
>>> print(tf.__version__)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
NameError: name 'tf' is not defined
>>>
上記のtensorflowバージョン1.14.0エラーレポートをインポートインポートします(私のノートブックグラフィックカードはGeForce RTX2060、対応する計算能力は7.5、CUDAフレームワークをサポートします!)
cmdターミナルにnvcc --versionと入力して、cudaバージョンを表示し
ます。私のコンピュータにはcudaがインストールされていません!cudaのインストールを続行する必要があります
6.cudaをインストールします
6.1 CUDAツールキットの
ダウンロード:ちなみに、cuda_10.0.130_411.31_win10.exeをダウンロードしました
:Visual Studio Community2019がラップトップにインストールされています。
ダウンロードアドレス:
https :
//developer.nvidia.com/zh-cn/cuda-downloadsしかし、このリンクから11.1がダウンロードされたので、ブログ投稿の後にcuda_10.0.130_411.31_win10.exeのリソースをアップロードします。
6.2 NVIDIA CUDA 10.0を
インストールして、システムディスク(私のシステムディスクはCドライブ)にcudaをインストールしないようにします。
クリックして同意し、続行します(A)
インストールするときは、カスタム(高度な)インストールを選択してください。
インストールコンポーネントを選択します。
システムディスクの外部にインストールします。次のように
CUDAドキュメント、サンプル、およびCUDA開発をシステムディスクとは別にインストールします。
インストールディレクトリは次のようにカスタマイズされます。
CUDA開発 | D:\ D03_GeneralDevelop \ D03_01_cuda \ install \ cuda_development |
---|---|
CUDAドキュメント | D:\ D03_GeneralDevelop \ D03_01_cuda \ install \ cuda_documentation |
サンプル | D:\ D03_GeneralDevelop \ D03_01_cuda \ install \ cuda_samples |
ここでは、msvs2017のバージョンを確認する必要があります。このマシンは2019年であり、この問題は一時的に影響しません。
6.3 cuda環境変数の構成
カスタムインストールディレクトリの下にあるbinフォルダー、つまり
D:\ D03_GeneralDevelop \ D03_01_cuda \ install \ cuda_development \ bin
をシステム環境変数に追加します。
cmdターミナルにnvcc--versionともう一度入力して、cudaバージョンを表示します。
テンソルフローを再度インポートし、次のようにエラーを報告し続けます。
アピールプロンプトに従って、cuDNN 7をインストールする必要があります(上記の構成テーブルに従って、7.4を選択します)
7.cuDNNをダウンロードして構成します
-7.1 cudnn-10.0-windows10-x64-v7.4.2.24.zipをダウンロードし、解凍されたbin、include、およびlibフォルダーをcuDNNフォルダーにコピーします。
-7.2 cuDNNフォルダーをインストールディレクトリに切り取ります:D:\ D03_GeneralDevelop \ D03_01_cuda \ install \ cuda_development
追加-7.3:
D:\ D03_GeneralDevelop \ D03_01_cudaは\ cuda_development \ cuDNN \ binにインストール\
\ D03_GeneralDevelop \ D03_01_cuda \インストール\ cuda_development \ libnvvp:D
D:\ D03_GeneralDevelop \ D03_01_cudaは\ \ cuda_development \エクストラ\ CUPTI \ libx64をインストールする
システム環境への変数の中で。
もう一度インポートします。
8.tensorflowのGPUの使用を確認します
import tensorflow as tf
hello = tf.constant("hello, world!")
sess = tf.Session()
sess.run(hello)
次のように実行します。