admin管理员组文章数量:1627743
建议以下所有的终端界面(小黑窗)都用管理员身份运行。
步骤一:安装 Anaconda
首先,请确保您的计算机上已经安装了 Anaconda。如果没有,请按照anaconda官网下载安装。
-
打开终端 (Terminal) 或命令提示符 (Command Prompt)
-
运行以下命令,以确保 Anaconda 被正确配置:
conda -V
运行结果
conda 23.7.4
步骤二:安装CUDA和cuDNN
继续去官网安装cuda和cuDNN,下载对应版本,本机是cuda 11.2.0和cudnn 8.1.0.77,具体教程视频。一定要配置好环境变量。参考视频2。
注:cuDNN下载前需要注册账号,国内邮箱即可,我用的163邮箱。
步骤三:创建并激活虚拟环境
- 打开 Anaconda Prompt。
- 输入以下命令来创建一个名为
tf2x
的新虚拟环境(名称自己定),指定 Python 版本为 3.8(也可以为3.9):
conda create --name tf2x python=3.8
- 创建完成后,激活该环境:
conda activate tf2x
步骤四:安装 CUDA Toolkit 和 cuDNN
为了支持 TensorFlow-GPU,我们需要安装CUDA Toolkit 11.3和cuDNN 8.2.1以支持GPU加速。在 Anaconda Prompt 中执行以下命令:
conda install cudatoolkit=11.3 cudnn=8.2.1
注意:这里的版本号可能随着时间和需求而变化,请确保安装与您所使用的硬件兼容的版本。检查您系统的 CUDA 支持情况,并选择合适的版本进行安装。
补充说明:此步骤避免了报错runtime CuDNN library: 8.1 but source was compiled with: 8.2.1
,坑已踩过。
步骤五:安装 TensorFlow GPU 和 Keras
使用 pip 在虚拟环境中安装 TensorFlow-GPU 2.10.0 和 Keras 2.10.0:
pip install tensorflow-gpu==2.10.0 keras==2.10.0 -i https://pypi.tuna.tsinghua.edu/simple/
这里我们使用了清华大学的镜像源以加速下载速度。如果您遇到任何问题或想要使用默认的 PyPI 源,请去掉 -i https://pypi.tuna.tsinghua.edu/simple/
部分。
步骤六:安装其他依赖项
继续安装 OpenCV、Pillow、NumPy、Matplotlib、Scipy、Pandas、scikit-learn、tqdm、imutils、PyYAML、TensorBoard、Seaborn、Protobuf、Chardet 等软件包:
pip install opencv-python==4.4.0.44 pillow==8.2 numpy==1.22 matplotlib scipy pandas scikit-learn tqdm imutils PyYAML tensorboard seaborn protobuf==3.20 chardet -i https://pypi.tuna.tsinghua.edu/simple/
同样地,如果遇到问题或想使用默认的 PyPI 源,请去掉 -i https://pypi.tuna.tsinghua.edu/simple/
部分。
步骤七:查看已安装的包
安装完成后,你可以通过以下命令查看已安装的所有包及其版本信息:
conda list
本机运行结果
# packages in environment at E:\Applications\Anaconda3\envs\tf2x:
#
# Name Version Build Channel
absl-py 2.0.0 pypi_0 pypi
astunparse 1.6.3 pypi_0 pypi
ca-certificates 2023.08.22 haa95532_0
cachetools 5.3.2 pypi_0 pypi
certifi 2023.11.17 pypi_0 pypi
chardet 5.2.0 pypi_0 pypi
charset-normalizer 3.3.2 pypi_0 pypi
colorama 0.4.6 pypi_0 pypi
contourpy 1.1.1 pypi_0 pypi
cudatoolkit 11.3.1 h59b6b97_2
cudnn 8.2.1 cuda11.3_0
cycler 0.12.1 pypi_0 pypi
flatbuffers 23.5.26 pypi_0 pypi
fonttools 4.46.0 pypi_0 pypi
gast 0.4.0 pypi_0 pypi
google-auth 2.25.2 pypi_0 pypi
google-auth-oauthlib 1.0.0 pypi_0 pypi
google-pasta 0.2.0 pypi_0 pypi
grpcio 1.60.0 pypi_0 pypi
h5py 3.10.0 pypi_0 pypi
idna 3.6 pypi_0 pypi
importlib-metadata 7.0.0 pypi_0 pypi
importlib-resources 6.1.1 pypi_0 pypi
imutils 0.5.4 pypi_0 pypi
joblib 1.3.2 pypi_0 pypi
keras 2.10.0 pypi_0 pypi
keras-preprocessing 1.1.2 pypi_0 pypi
kiwisolver 1.4.5 pypi_0 pypi
libclang 16.0.6 pypi_0 pypi
libffi 3.4.4 hd77b12b_0
markdown 3.5.1 pypi_0 pypi
markupsafe 2.1.3 pypi_0 pypi
matplotlib 3.7.4 pypi_0 pypi
numpy 1.22.0 pypi_0 pypi
oauthlib 3.2.2 pypi_0 pypi
opencv-python 4.4.0.44 pypi_0 pypi
openssl 3.0.12 h2bbff1b_0
opt-einsum 3.3.0 pypi_0 pypi
packaging 23.2 pypi_0 pypi
pandas 2.0.3 pypi_0 pypi
pillow 8.2.0 pypi_0 pypi
pip 23.3.1 py38haa95532_0
protobuf 3.20.0 pypi_0 pypi
pyasn1 0.5.1 pypi_0 pypi
pyasn1-modules 0.3.0 pypi_0 pypi
pyparsing 3.1.1 pypi_0 pypi
python 3.8.18 h1aa4202_0
python-dateutil 2.8.2 pypi_0 pypi
pytz 2023.3.post1 pypi_0 pypi
pyyaml 6.0.1 pypi_0 pypi
requests 2.31.0 pypi_0 pypi
requests-oauthlib 1.3.1 pypi_0 pypi
rsa 4.9 pypi_0 pypi
scikit-learn 1.3.2 pypi_0 pypi
scipy 1.10.1 pypi_0 pypi
seaborn 0.13.0 pypi_0 pypi
setuptools 68.2.2 py38haa95532_0
six 1.16.0 pypi_0 pypi
sqlite 3.41.2 h2bbff1b_0
tensorboard 2.14.0 pypi_0 pypi
tensorboard-data-server 0.7.2 pypi_0 pypi
tensorboard-plugin-wit 1.8.1 pypi_0 pypi
tensorflow-estimator 2.10.0 pypi_0 pypi
tensorflow-gpu 2.10.0 pypi_0 pypi
tensorflow-io-gcs-filesystem 0.31.0 pypi_0 pypi
termcolor 2.4.0 pypi_0 pypi
threadpoolctl 3.2.0 pypi_0 pypi
tqdm 4.66.1 pypi_0 pypi
typing-extensions 4.9.0 pypi_0 pypi
tzdata 2023.3 pypi_0 pypi
urllib3 2.1.0 pypi_0 pypi
vc 14.2 h21ff451_1
vs2015_runtime 14.27.29016 h5e58377_2
werkzeug 3.0.1 pypi_0 pypi
wheel 0.41.2 py38haa95532_0
wrapt 1.16.0 pypi_0 pypi
zipp 3.17.0 pypi_0 pypi
其他指令,如有需要
-
如果你需要暂时离开这个虚拟环境,可以使用以下命令:
deactivate
-
如果需要删除名为"tf2x"的虚拟环境,可以使用以下命令:
conda env remove --name tf2x
-
你可以使用以下命令检查NVIDIA驱动和CUDA版本是否正确安装:
nvidia-smi
本机运行结果
Sat Dec 16 15:38:11 2023 +---------------------------------------------------------------------------------------+ | NVIDIA-SMI 546.12 Driver Version: 546.12 CUDA Version: 12.3 | |-----------------------------------------+----------------------+----------------------+ | GPU Name TCC/WDDM | Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. | | | | MIG M. | |=========================================+======================+======================| | 0 NVIDIA GeForce RTX 3070 ... WDDM | 00000000:01:00.0 On | N/A | | N/A 39C P8 19W / 115W | 1539MiB / 8192MiB | 21% Default | | | | N/A | +-----------------------------------------+----------------------+----------------------+ +---------------------------------------------------------------------------------------+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================| | 0 N/A N/A 796 C+G ...5n1h2txyewy\ShellExperienceHost.exe N/A | | 0 N/A N/A 2976 C+G ... Edition 2023.1.2\bin\pycharm64.exe N/A | | 0 N/A N/A 3236 C+G D:\ToDesk\ToDesk.exe N/A | | 0 N/A N/A 3744 C+G ...r\5.1.40.11202\widget\SpeedBall.exe N/A | | 0 N/A N/A 3788 C+G ...siveControlPanel\SystemSettings.exe N/A | | 0 N/A N/A 4644 C+G ...wekyb3d8bbwe\XboxGameBarWidgets.exe N/A | | 0 N/A N/A 5888 C+G E:\Applications\Typora\Typora.exe N/A | | 0 N/A N/A 9520 C+G C:\Windows\explorer.exe N/A | | 0 N/A N/A 10300 C+G ...GeForce Experience\NVIDIA Share.exe N/A | | 0 N/A N/A 11344 C+G ...GeForce Experience\NVIDIA Share.exe N/A | | 0 N/A N/A 12316 C+G ...nt.CBS_cw5n1h2txyewy\SearchHost.exe N/A | | 0 N/A N/A 12340 C+G ...2txyewy\StartMenuExperienceHost.exe N/A | | 0 N/A N/A 13452 C+G ...crosoft\Edge\Application\msedge.exe N/A | | 0 N/A N/A 13828 C+G ...5990\office6\promecefpluginhost.exe N/A | | 0 N/A N/A 15376 C+G ...PKQVEOA7JVZE4OA5ZMSNU5MHA\DeepL.exe N/A | | 0 N/A N/A 16720 C+G ...CBS_cw5n1h2txyewy\TextInputHost.exe N/A | | 0 N/A N/A 16908 C+G ...ns\cc cleaner\CCleaner\CCleaner.exe N/A | | 0 N/A N/A 18796 C+G ...eskGo\3.3.1484.127\DesktopMgr64.exe N/A | | 0 N/A N/A 19788 C+G ...1\extracted\runtime\WeChatAppEx.exe N/A | | 0 N/A N/A 20400 C+G E:\Applications\QQNT\QQ.exe N/A | | 0 N/A N/A 21404 C+G ...o\3.3.1484.127\Win11ContextMenu.exe N/A | | 0 N/A N/A 22832 C+G ...2.0_x64__w2gh52qy24etm\Nahimic3.exe N/A | | 0 N/A N/A 23392 C+G ... Software\CloudMusic\cloudmusic.exe N/A | | 0 N/A N/A 23852 C+G ...tings\yoga\LenovoToolMonitoring.exe N/A | | 0 N/A N/A 25528 C+G ...ekyb3d8bbwe\PhoneExperienceHost.exe N/A | +---------------------------------------------------------------------------------------+
结束语
在激活的环境tf2x
中,安装ipykernel
库,这将允许你在Jupyter Notebook中使用此环境作为内核:
conda install ipykernel
接下来,你需要为新环境创建一个内核。这可以通过运行以下命令完成,其中name
后面是你的conda
中创建的环境名称,display-name
后面是你希望在Jupyter中显示的内核名称,这里也设置为tf2x
:
python -m ipykernel install --user --name=tf2x --display-name="tf2x"
至此,您已经在名为 tf2x
的 Anaconda 虚拟环境中成功安装了 TensorFlow GPU 以及相关的依赖项。要开始使用这个环境,请确保它已经被激活,然后通过如下命令启动 Jupyter Notebook 或者 JupyterLab:
jupyter notebook
或
jupyter lab
现在,您可以在这个环境中编写和运行使用 TensorFlow GPU 的代码了。(个人建议用jupyter lab
,因为界面可以像pycharm一样,还能随意切换编译环境)
或者在pycharm中选定tf2x
环境,编译并运行以下测试代码:
# 导入Keras库
import keras
# 导入TensorFlow库
import tensorflow as tf
# 检查当前系统是否可用GPU资源
print(tf.test.is_gpu_available())
# 打印TensorFlow的版本号
print(tf.__version__)
# 打印Keras的版本号
print(keras.__version__)
# 获取TensorFlow的构建信息
build = tf.sysconfig.get_build_info()
# 打印CUDA的版本号(如果已安装)
print(build['cuda_version'])
# 打印cuDNN的版本号(如果已安装)
print(build['cudnn_version'])
本机运行结果
WARNING:tensorflow:From E:\Bravo\self_driving\AI\Tensor functions.py:3: is_gpu_available (from tensorflow.python.framework.test_util) is deprecated and will be removed in a future version.
Instructions for updating:
Use `tf.config.list_physical_devices('GPU')` instead.
2023-12-16 14:50:34.755552: I tensorflow/core/platform/cpu_feature_guard:193] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN) to use the following CPU instructions in performance-critical operations: AVX AVX2
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2023-12-16 14:50:35.581791: I tensorflow/core/common_runtime/gpu/gpu_device:1616] Created device /device:GPU:0 with 5481 MB memory: -> device: 0, name: NVIDIA GeForce RTX 3070 Laptop GPU, pci bus id: 0000:01:00.0, compute capability: 8.6
True
2.10.0
2.10.0
64_112
64_8
官方参考版本说明
TensorFlow官方版本对应说明
截取,以下是 TensorFlow 版本和相应的 Python 版本、编译器、构建工具、cuDNN 和 CUDA 版本的对应关系:
Version | Python version | Compiler | Build tools | cuDNN | CUDA |
---|---|---|---|---|---|
tensorflow_gpu-2.10.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.1.1 | 8.1 | 11.2 |
tensorflow_gpu-2.9.0 | 3.7-3.10 | MSVC 2019 | Bazel 5.0.0 | 8.1 | 11.2 |
tensorflow_gpu-2.8.0 | 3.7-3.10 | MSVC 2019 | Bazel 4.2.1 | 8.1 | 11.2 |
tensorflow_gpu-2.7.0 | 3.7-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.6.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
tensorflow_gpu-2.5.0 | 3.6-3.9 | MSVC 2019 | Bazel 3.7.2 | 8.1 | 11.2 |
以下参考文档是根据第一版教程编写的。由于之前安装的是TensorFlow GPU 2.6.0版本,运行某些代码时遇到了新的问题,并未能解决。因此,以下参考文档只是提供了一些思路,但不能保证能解决您在以后遇到的问题。为此,我决定更换为TensorFlow GPU 2.10版本,并编写了这篇新的教程。(您可以不看以下内容,因为与上述内容冲突)
-
注意,有些版本对应不上,需要按照以下版本安装,参考文章。
框架/库 版本号 备注 Tensorflow-gpu 2.6.0 目前为止最高版本 Python 3.9.18 能够支持tensorflow-gpu的最高Python版本 Tensorflow 2.6.0 CUDA 11.2.2 装最高版本12.0就没有对应的tensorflow-gpu版本了 cuDNN 8.2.1 8.1 for CUDA 11.x的不行 numpy 1.23.4 numpy版本不对的话,会导致import tensorflow as tf 这一步报错,错误信息是 …numpy has no attribute object… 需要注意的是,这些库的版本需要相互匹配才能正常工作。如果您使用的是不兼容的版本,可能会导致程序无法正常运行或者出现其他问题。
-
将numpy 1.26.2降至1.23.4
pip install numpy==1.23.4
本文标签: 环境指南教程GPUtensorflow
版权声明:本文标题:TensorFlow GPU 2.10+CUDA+cuDNN全环境设置指南及安装教程(已避坑) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1728997928a1182356.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论