RTX 3090的深度学习环境配置指南:Pytorch、TensorFlow、Keras。配置显卡

最近刚入了3090,发现网上写的各种环境配置相当混乱而且速度很慢。所以自己测了下速度最快的3090配置环境,欢迎补充!

基本环境(整个流程大约需要5分钟甚至更少)

py37或py38
cuda11.1
tf2.5(tf-nightly)或 tf1.15.4
pytorch1.8
keras2.3

(1)安装gcc

sudo apt install build-essential
gcc -v #查看gcc版本

(2)官网下载对应版本显卡驱动及cuda:(以下版本对应11.1cuda,此处安装cuda是为了tf的某个缺失的文件)

wget https://developer.download.nvidia.com/compute/cuda/11.1.0/local_installers/cuda_11.1.0_455.23.05_linux.run
sudo sh cuda_11.1.0_455.23.05_linux.run

(3)安装Anaconda并换源

bash Anaconda3-5.2.0-Linux-x86_64.sh
vim ~/.bashrc
export PATH=/home/yukyin/anaconda3/bin:$PATH(在文件末尾处添加该语句)
source ~/.bashrc

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda config --set show_channel_urls yes
之后vim ~/.condarc,把defaults删掉

(4)创建虚拟环境,一般用py37或py38(以下都在虚拟环境中操作)

conda create -n exp38 python==3.8
conda activate exp38 

(5)安装pytorch

官网下载cuda11.1轮子:torch-1.8.1+cu111-cp38-cp38-linux_x86_64.whl

pip install torch-1.8.1+cu111-cp38-cp38-linux_x86_64.whl #在轮子所在的目录下操作

(6)装tf2.5(不要装tensorflow-gpu==2.4.0rc0,会报错'NoneType' object has no attribute 'TFE_MonitoringDeleteBuckets')

pip install tf-nightly-gpu -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
pip install tf-nightly -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
conda install cudatoolkit=11.0
cp /usr/local/cuda-11.1/targets/x86_64-linux/lib/libcusolver.so.11.0.0.74 /home/yukyin/anaconda3/envs/exp382/lib/
mv /home/yukyin/anaconda3/envs/exp382/lib/libcusolver.so.11.0.0.74 /home/yukyin/anaconda3/envs/exp382/lib/libcusolver.so.11.0

(7)装tf1.15

pip install nvidia-pyindex -i http://pypi.douban.com/simple --trusted-host pypi.douban.com
pip install nvidia-tensorflow -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

(8)装keras2.3

pip install keras==2.3 -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

(10)测试(使用cuda10.2也可以测试使用gpu,但貌似不能把数据写入gpu)

pytorch

tensorflow-2.5或1.15.4

keras(测试需要改部分源码_get_available_gpus())

import tensorflow as tf
import keras.backend.tensorflow_backend as tfback
print("tf.__version__ is", tf.__version__)
print("tf.keras.__version__ is:", tf.keras.__version__)
 
def _get_available_gpus():
    if tfback._LOCAL_DEVICES is None:
        devices = tf.config.list_logical_devices()
        tfback._LOCAL_DEVICES = [x.name for x in devices]
    return [x for x in tfback._LOCAL_DEVICES if 'device:gpu' in x.lower()]
tfback._get_available_gpus = _get_available_gpus

from keras import backend as K
K.tensorflow_backend._get_available_gpus()

后记:不需要单独配cuda、cudnn,在虚拟环境里搞就行了。

 

 

 

 

 

 

 

 

参考:https://zhuanlan.zhihu.com/p/279401802

posted @ 2021-11-10 17:12  StarZhai  阅读(1411)  评论(0编辑  收藏  举报