1、 查看虚拟环境
conda info -e
2、 创建新的虚拟环境
conda create -n deeplearning_all pip python=3.6
3、 激活新建的虚拟环境
Conda activate deeplearning_all
pip install numpy==1.16.0
pip install scipy==1.4.1
pip install pandas==0.21.0
pip install patsy==0.5.1
pip install scikit-learn==0.21.0
pip install imbalanced_learn==0.5.0
pip install statsmodels==0.11.0
# CUDA 10.1
pip install torch==1.8.1+cu101 torchvision==0.9.1+cu101 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install --no-cache-dir tensorflow-gpu==2.3.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
conda install absl-py==1.3.0
pip install keras==2.4.3 -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install matplotlib
pip install xgboost==0.90
pip install lightgbm==3.1.0
pip install bayesian-optimization==0.6.0
之后如果缺什么直接pip
ps:查看tensorflow/torch是否可以调动gpu
import tensorflow as tf
tf.config.list_physical_devices('GPU')
import torch # 如果pytorch安装成功即可导入
print(torch.cuda.is_available()) # 查看CUDA是否可用
print(torch.cuda.device_count()) # 查看可用的CUDA数量
print(torch.version.cuda) # 查看CUDA的版本号
目标主机(windows系统 anaconda版本最好一致):
在目标主机上安装anaconda:安装包下载
conda info --envs
如果想迁移的是base环境,因此需要先克隆(base环境不能直打包)
conda create -n 新环境的名称 --clone 老环境名称
conda install -c conda-forge conda-pack
文件会默认打包在C盘:/用户/用户名的文件夹中
conda pack -n 新环境名称 -o 新环境名称.tar.gz
解压至envs下新环境的文件夹下:
tar -zxvf 文件名 -C 文件夹名
conda activate 新环境
环境已经成功迁移到目标主机并且可以使用了
在安装驱动前,您需大致了解 CUDA、cuDNN、Pytorch、TensorFlow 及 Python 版本对应关系,以便根据实际配置选择适配版本,免除后续出现版本不匹配等问题。
选择 CUDA 驱动版本
CUDA(Compute Unified Device Architecture),是显卡厂商 NVIDIA 推出的运算平台。CUDA™ 是一种由 NVIDIA 推出的通用并行计算架构,该架构使 GPU 能够解决复杂的计算问题。其包含了 CUDA 指令集架构(ISA)以及 GPU 内部的并行计算引擎。
1、查看显卡算力
在选择 CUDA 驱动版本时,需先了解本文使用(Tesla P40)显卡的算力。可通过NVIDIA 官网 查询 Tesla P40 显卡算力为6.1。如下图所示:
(目标主机是T4)
2、选择 CUDA 版本
如下图所示 CUDA 版本与显卡算力的关系,Tesla P40 显卡应选择8.0以上的 CUDA 版本。如需了解更多算力与 CUDA 版本信息。
选择显卡驱动版本
确定 CUDA 版本后,再选择显卡驱动版本。您可参考如下图所示 CUDA 与驱动对应关系图进行选择。
选择 cuDNN 版本
NVIDIA cuDNN 是用于深度神经网络的 GPU 加速库。其强调性能、易用性和低内存开销。NVIDIA cuDNN 可以集成到更高级别的机器学习框架中,例如谷歌的 Tensorflow、加州大学伯克利分校的流行 caffe 软件。简单的插入式设计可以让开发人员专注于设计和实现神经网络模型,而不是简单调整性能,同时还可以在 GPU 上实现高性能现代并行计算。
cuDNN 是基于 CUDA 的深度学习 GPU 加速库,有它才能在 GPU 上完成深度学习的计算。如需在 CUDA 上运行深度神经网络,需安装 cuDNN,才能使 GPU 进行深度神经网络的工作,工作速度相较 CPU 快很多。cuDNN 版本与 CUDA 版本的对应关系请参见 cuDNN Archive
选择 Pytorch 版本
您需根据 CUDA 版本,选择对应的 Pytorch 版本,匹配版本信息请参见previous-versions
选择 TesorFIow 版本
Tensorflow 较 Pytorch 稍复杂,它还需要 Python、编译器的版本支持。CPU、GPU 版本与 Python、CUDA、cuDNN 的版本对应关系如下:
基于 CPU 版本的 TensorFlow 版本
基于 GPU 版本的 TensorFlow 版本
这里选择最优的版本:CUDA 10.1、Python 3.6、Pytorch 1.8.1、Tensorflow_gpu_2.3.0
安装显卡驱动
使用浏览器访问 NVIDIA 官网,并选择显卡的驱动版本。本文选择配置如下图所示:
下载完成后,请双击安装包,根据页面提示完成安装。
安装 CUDA
进入 CUDA Toolkit Archive,选择对应版本。本文以下载10.2版本为例,如下图所示:
进入 “CUDA Toolkit 10.2 Download” 页面,选择对应系统配置。本文选择配置如下图所示:
单击 Download,开始下载(CUDA 10.1都选择最新的一版)。
4. 下载完成后,请双击安装包,并根据页面提示进行安装。其中,请注意以下步骤:
在弹出的 “CUDA Setup Package” 窗口中,Extraction path 为暂时存放地址,无需修改,保持默认并单击 OK。如下图所示:
配置环境变量
1 在弹出菜单中选择运行。
5. 在“运行”窗口中输入 sysdm.cpl,并单击确定。
6. 在打开的“系统属性”窗口中,选择高级页签,并单击环境变量。如下图所示:
4.选择“系统变量”中的 “Path”,单击编辑。
5. 在弹出的“编辑环境变量”窗口中,新建并输入如下环境变量配置。
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\libnvvp
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.1\lib\x64
C:\Program Files\NVIDIA Corporation\NVSMI
6.连续单击3次确定,保存设置。
检查显卡驱动及 CUDA
1.在弹出菜单中选择运行。
2. 在“运行”窗口中输入 cmd,并单击确定。
3. 在 cmd 窗口中:
执行以下命令,检查显卡驱动是否安装成功。
nvidia-smi
返回如下图所示界面表示显卡驱动安装成功。下图为正在运行中的 GPU,在 GPU 运行时,该命令可查看 GPU 的使用情况。
执行以下命令,检查 CUDA 是否安装成功。
nvcc -V
返回如下图所示界面表示 CUDA 安装成功。
安装 cuDNN(见本地文档)
1.前往 cuDNN Download 页面,单击 Archived cuDNN Releases 查看更多版本。
2. 找到所需 cuDNN 版本,并下载。
3. 解压 cuDNN 压缩包,并将 bin、include 及 lib 文件夹拷贝至 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2 目录下。
4. 至此已完成 cuDNN 安装。
1、解决Could not load dynamic library ‘cudnn64_7.dll‘; dlerror cudnn64_7.dll not found
解决:下载文件到C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA目录下
2、【Python与tensorflow关联报错】ModuleNotFoundError: No module named ‘termcolor‘,但pip3 show termcolor显示包已存在
解决:卸了重装termcolor
3、NVIDIA Jetson Xavier NX上导入tensorflow报错:AttributeError: module ‘wrapt‘ has no attribute ‘ObjectProxy‘
解决:pip3 install wrapt==1.11.1
参考:大神文章