非root使用者安裝或升級CUDA和CUDNN版本
很多框架的版本都受限於CUDA和CUDNN的版本,而如果沒有伺服器的root許可權的話,這將很不方便。
非root使用者也是可以修改CUDA和CUDNN版本的。親測有效。
方法來自:
https://blog.csdn.net/sinat_20280061/article/details/80421532
環境:
Ubuntu==16.04.2
GPU: GTX 1080Ti
原CUDA==8.0.61
原CUDNN==5.1.10
升級為:
CUDA==10.0
CUDNN==7.4.1
當CUDA版本過低時,無法支援新版本的tensorflow。於是升級CUDA是很關鍵的。
方法是,安裝cuda到某個路徑下,然後修改個人環境變數來指定這個cuda路徑。這樣就可以換成新版本的CUDA並且不影響伺服器主環境。
第一步,下載cuda安裝包:
https://developer.nvidia.com/cuda-downloads
選擇對應版本的CUDA,installer type為runfile(local)。
下載完成以後,輸入:
./cuda*.run
會出現很長一段協議,需要你往下翻,按空格可以快速跳躍。 接下來會問你是否接受EULA協議,當然是接受。
接下來會問你是否安裝Accelerated Graphics Driver,選擇no
然後下載CUDNN,網址為https://developer.nvidia.com/cudnn
這個需要先註冊,註冊之後選擇 cuDNN library for Linux,就是下圖的第3個。
解壓下載的檔案:
tar -xzvf cudnn*.tgz
得到一個名為cuda的資料夾,把資料夾下的東西copy到cudaa目錄:
cp cuda/include/cudnn.h cudaa/include/ cp cuda /lib64/libcudnn* cudaa/lib64 chmod a+r cuda/include/cudnn/h cudaa/lib64/libcudnn*
然後,設定個人環境變數
vim ~/.bashrc
在文尾加上:
export PATH="/home/liweilia/cudaa/bin:$PATH"
export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/cudaa/lib64/"
最後,啟用:
source ~/.bashrc
到這裡就已經成功了,可以驗證以下:
echo $LD_LIBRARY_PATH
輸出為:
/usr/local/cuda/lib64::/home/cudaa/lib64/
路徑下含有我們設定的目錄,證明已經啟用成功了。