天天看點

CUDA、cuDNN免安裝方法

每次部署環境時都要安裝CUDA、cuDNN,并確定tensorflow與CUDA、cdDNN版本對應,這些操作真心繁瑣且枯燥。思考了一下,從應用調用層面出發:

export LD_LIBRARY_PATH=`pwd`:/usr/local/cuda9.0
           

采用指令模型運作時,我們大部分應用都是采用上述的環境變量形式注冊動态庫;若IDE是pycharm,隻要在‘Edit Configurations’中‘Defaults’選項中選擇‘Python’,将上面的代碼複制到‘Environment variables’中即可。

然後我們下載下傳CUDA、cuDNN動态庫,可以複制别人安裝好的so檔案即可,隻要6個so檔案即可:

libcublas.so.9.0.103
libcudart.so.9.0.103
libcudnn.so.7.1.4
libcufft.so.9.0.103
libcurand.so.9.0.103
libcusolver.so.9.0.103
           

檔案名稱的so後面是版本号。如圖我拷貝了CUDA9.0.103+cuDNN7.1.4

CUDA、cuDNN免安裝方法

将上圖的cuda9.0檔案夾拷貝到新機器的‘usr/local/’檔案夾中,在終端運作run.sh腳本自動生成軟連結,這樣新機器就可以的CUDA、cdDNN就配置好了。

CUDA、cuDNN免安裝方法

貼下run.sh腳本代碼:

#!/bin/bash
# 動态庫
so=(
`pwd`/libcublas.so.9.0.103
`pwd`/libcudart.so.9.0.103
`pwd`/libcudnn.so.7.1.4
`pwd`/libcufft.so.9.0.103
`pwd`/libcurand.so.9.0.103
`pwd`/libcusolver.so.9.0.103
)
# 軟連結
link=(
`pwd`/libcublas.so.9.0
`pwd`/libcudart.so.9.0
`pwd`/libcudnn.so.7
`pwd`/libcufft.so.9.0
`pwd`/libcurand.so.9.0
`pwd`/libcusolver.so.9.0
)
# 删除舊的軟連接配接
for link_f in ${link[*]}
do
  if [ -f $link_f ];then
  rm $link_f
  fi
done

# 建立新的軟連結
for ((i=0;i<6;i++))
do
  echo ${so[${i}]}
  if [ -f ${so[${i}]} ];then
  ln -s ${so[${i}]} ${link[${i}]}
  fi
done

           

注意,若拷貝的版本号不一緻需要在run.sh腳本中修改下版本号。

方法總結:

1、将CUDA、cuDNN的6個so檔案複制到新機器的 /usr/local/cuda 目錄下

2、在 /usr/local/cuda 目錄下運作 run.sh 腳本生成軟連結

3、配置環境變量:也就是一開始說的指令運作和pycharm運作的方式

提供一個so下載下傳:CUDA9.0.103+cuDNN7.1.4

連結: https://pan.baidu.com/s/1aAXIkHgoI-liZlXPdosAbg

提取碼: srnn

裡面包含了run.sh腳本。

繼續閱讀