ubuntu 安裝多個CUDA版本並可以隨時切換

2021-10-07 16:42:42 字數 4113 閱讀 2859

cuda是什麼就不介紹了,直接講怎麼實現cuda多版本的共存和實時切換。

1、安裝多個版本的cuda

這裡,我們以cuda9-1版本和cuda9-0版本為例(先安裝哪個無所謂) 

首先,在cuda版本庫中選擇自己需要的cuda版本。 

然後,選擇對應的安裝包,這裡選擇runfile型別的安裝檔案,以便後面設定每個cuda的安裝路徑。 

安裝過程中在建立軟鏈結時需要注意一下,如果你是第一次安裝cuda,那麼毫無疑問輸入y(yes),但是如果你是安裝額外版本的cuda,是否選擇y(yes)就要看你的具體需求而定,簡言之,就是如果你希望啟用當前安裝的cuda版本,就選y,如果你只是想安裝這個版本,而暫時還不想啟用該版本時,就選n。

#先執行下面的命令安裝相關依賴,

#否則會出現`missing recommended library`錯誤

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

sudo sh cuda_8.0.61_375.26_linux.run #開始安裝

#..一堆協議說明...

#直接按q退出協議說明.

zerozone@zerozone: accept/decline/quit: accept #接受協議

install nvidia accelerated graphics driver for linux-x86_64 375.26?

y)es/(n)o/(q)uit: n #是否顯示卡驅動包,由於已經安裝顯示卡驅動,選擇n

install the cuda 8.0 toolkit?

(y)es/(n)o/(q)uit: y #是否安裝工具包,選擇y

enter toolkit location

[ default is /usr/local/cuda-8.0 ]: #工具包安裝位址,預設回車即可

do you want to install a symbolic link at /usr/local/cuda?

(y)es/(n)o/(q)uit: y #新增鏈結**注意這個連線,如果你之前安裝過另乙個版本的cuda,除非你確定想要用這個新版本的cuda,否則這裡就建議選no,因為指定該鏈結後會將cuda指向這個新的版本**

install the cuda 8.0 samples?

(y)es/(n)o/(q)uit: y #安裝樣例

enter cuda samples location

[ default is /root ]: #樣例安裝位址預設即可

# ***安裝資訊***

installing the cuda toolkit in /usr/local/cuda-8.0 ...

missing recommended library: libxi.so

missing recommended library: libxmu.so

#注意,這裡出現了missing recommended library錯誤,

#是因為博主在第一次安裝時,沒有新增最開始的那條安裝相關依賴的指令,

#之後我新增了依賴後,再次安裝,就沒有missing錯誤了

installing the cuda samples in /root ...

copying samples to /root/nvidia_cuda-8.0_samples now...

finished copying samples.

**********=

= summary =

**********=

driver: not selected

toolkit: installed in /usr/local/cuda-8.0

samples: installed in /root, but missing recommended libraries

please make sure that

- path includes /usr/local/cuda-8.0/bin

- ld_library_path includes /usr/local/cuda-8.0/lib64, or, add /usr/local/cuda-8.0/lib64 to /etc/ld.so.conf and run ldconfig as root

to uninstall the cuda toolkit, run the uninstall script in /usr/local/cuda-8.0/bin

please see cuda_installation_guide_linux.pdf in /usr/local/cuda-8.0/doc/pdf for detailed information on setting up cuda.

***warning: incomplete installation! this installation did not install the cuda driver. a driver of version at least 361.00 is required for cuda 8.0 functionality to work.

to install the driver using this installer, run the following command, replacing with the name of this run file:

sudo .run -silent -driver

logfile is /tmp/cuda_install_6388.log

# ***安裝完成***

配置cuda相關環境變數 

修改~/.bashrc檔案(或~/.zhsrc) 在檔案末尾新增環境變數

tensorflow官方安裝歷程要求注意的是:配置path和ld_library_path和cuda_home環境變數.

vim ~/.bashrc #修改配置檔案(如果你用的是zsh,則需要修改 ~/.zshrc檔案)

#在檔案結尾處新增

export ld_library_path=$ld_library_path:/usr/local/cuda/lib64

export path=$path:/usr/local/cuda/bin

export cuda_home=$cuda_home:/usr/local/cuda

在安裝了多個cuda版本後,可以在/usr/local/目錄下檢視自己安裝的cuda版本,如下圖所示: 

這裡,cuda-9.0和cuda-9.1就是我們安裝的兩個cuda版本了,而cuda是乙個軟鏈結,它指向我們指定的cuda版本(注意上面在設定環境變數時,使用的是cuda,而不是cuda-9.0和cuda-9.1,這主要是為了方便我們切換cuda版本,可以讓我們不用每次都去該環境變數的值)

可以使用stat命令檢視當前cuda軟鏈結指向的哪個cuda版本,如下所示: 

可以看到,檔案型別是symbolic link,而指向的目錄正是/usr/local/cuda-9.0,當我們想使用cuda-9.1版本時,只需要刪除該軟鏈結,然後重新建立指向cuda-9.1版本的軟鏈結即可(注意名稱還是cuda,因為要與bashrc檔案裡設定的保持一致)

可以看到,檔案型別是symbolic link,而指向的目錄正是/usr/local/cuda-9.0,當我們想使用cuda-9.1版本時,只需要刪除該軟鏈結,然後重新建立指向cuda-9.1版本的軟鏈結即可(注意名稱還是cuda,因為要與bashrc檔案裡設定的保持一致)
想切換其他版本的cuda,只需要改動建立軟鏈結時cdua的正確路徑即

ubuntu下安裝多個cuda和cudnn

參考部落格 大概意思指的是安裝pytorch版本時候編譯的cuda版本是7050,而現在使用的是cuda8.0以上的新版本在呼叫pytorch,所以造成不匹配.可能原因 每乙個pytorch版本都有對應的cuda版本,可能是在安裝pytorch的時候,選擇的pytorch版本所對應的版本cuda版本...

ubuntu多個cuda與cudnn版本切換

因為要用到tf2.2,需要用到cuda10.1,所以加裝cuda10.1與cudnn7.6.5,並且可以隨時切換舊版本cuda sudo sh cuda 10.1.105 418.39 linux.run accept 取消安裝driver install a symlink already exi...

ubuntu下的CUDA安裝

安裝指南 準備工作 在終端輸入 lspci grep i nvidia 檢視自己的顯示卡型號是否是nvidia官網上列出來的支援cuda的型號。將在軟體中心安裝的有關nvidia的軟體都給刪除掉。在終端執行 sudo apt get remove purge nvidia 兩種安裝方式 本人喜歡第一...