anoconda环境中pytorch和tensorflow环境的兼容

问题:pytoch和tensorflow的cuda版本如果不一致,但是.bashrc中只能一次设置一个cuda路径。每次激活tensorflow或者pytorch的虚拟环境时,要重新去.bashrc文件中添加对应环境的cuda路径,这样非常的麻烦。
解决方法:
一、每次使用不同cuda版本的环境时,手动修改.bashrc文件中对应环境的cuda路径。

1.激活tensorflow环境时(cuda6)
打开.bashrc文件,在最后写上cuda的路径,保存并退出:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/mnt/cuda_libs/cudnn/v6.0/cuda/lib64"
export CUDA_HOME=/mnt/cuda_libs/cudnn/v6.0/cuda

运行文件,并重启terminal

source .bashrc

激活环境

source activate tensorflow #激活环境

2.激活pytorch环境时(cuda10.1)
打开.bashrc文件,在最后写上cuda的路径,保存并退出:

export PATH="/data/cuda_libs/cuda-10.1/bin:$PATH" 
export CUDA_HOME="/data/cuda_libs/cuda-10.1/"
export LD_LIBRARY_PATH="/data/cuda_libs/cuda-10.1/lib64/"

运行文件,并重启terminal

source .bashrc

激活环境

source activate pytorch#激活环境

二、不用每次都修改.bashrc文件中cuda路径的简单方法
1.新建一个文件夹:

tools:
– pytoch.sh
– tensorflow.sh
分别往pytoch.sh 和 tensorflow.sh中写入cuda的路径,即:
pytoch.sh中:

export PATH="/data/cuda_libs/cuda-10.1/bin:$PATH" 
export CUDA_HOME="/data/cuda_libs/cuda-10.1/"
export LD_LIBRARY_PATH="/data/cuda_libs/cuda-10.1/lib64/"

tensorflow.sh中:

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/mnt/cuda_libs/cudnn/v6.0/cuda/lib64"
export CUDA_HOME=/mnt/cuda_libs/cudnn/v6.0/cuda

2.在.bashrc文件找到alias语句,在语句下面添加:

alias act_tf='source ~/tools/tf.sh'
alias act_th='source ~/tools/pytorch.sh'

保存并退出,运行文件,并重启terminal

source .bashrc

3.激活环境

act_tf  # 激活tensorflow环境
act_th # 激活pytorch环境

你可能感兴趣的:(tensorflow,python,pytorch)