多版本cuda執行與編譯環境

2021-10-13 10:04:00 字數 1301 閱讀 4933

基本環境:

nvidi-smi後cuda版本為11.0

預裝了兩個版本的cuda分別為cuda-10.0和cuda-11.0

**執行環境要求cuda-10.0

使用conda當前虛擬環境的cudatoolkit版本為10.0,**執行一直報錯,報錯資訊如下

cublas runtime error : the gpu program failed to execute at /opt/conda/condabld/pytorch_1544202130060/work/aten/src/thc/thcblas.cu:416
資料查詢後,感覺是cuda版本的問題,就安裝了cuda-10.0並進行了切換。

**執行出錯,有兩個版本的問題需要注意,乙個是編譯時使用的cuda版本,還有乙個是執行時使用的cuda版本。

之前一直以為nvidi-smi命令之後顯示的cuda版本是執行時的cuda版本,其實不是的。真正執行時的版本還是torch**在執行時去查詢的。查詢本地的cuda_home。

具體操作過程如下:

安裝了需要版本的cuda

cuda切換,更換軟連線的方式,不是很優雅,先這麼地吧

rm -rf /usr/local/cuda

sudo

ln -s /usr/local/cuda-10.0/ /usr/local/cuda/

把cuda_home寫進 .bashrc檔案,雖然看到說在找執行時cuda的時候通過軟連線就可以了,但是保險起見,還是又寫了一遍

export cuda_home=/usr/local/cuda-10.0/
執行時cuda版本檢查

進入python環境

>>

>import torch.utils.cpp_extension

>>

>torch.utils.cpp_extension.cuda_home

輸出顯示的是執行時的cuda版本,此處為』/usr/local/cuda-10.0』

如果想要檢視編譯時的cuda

>>

>import torch

>>

>torch.version.cuda

因為我安裝的conda環境,編譯時的cuda環境應該與虛擬環境中toolkit的版本是一致的。

接下來就是對**的編譯和執行了,沒再報錯了

參考:

搭建python多版本執行環境

一 環境介紹 linux vm 0 170 centos 3.10.107 1 tlinux2 kvm guest 0049 預設python版本2.7 gcc gcc 4.8.5 20150623 red hat 4.8.5 5 python2.7從2019開始就不再維護了,但是很多專案的 還是2...

多版本cuda 共存使用

實驗室伺服器多人使用,使用的tf框架版本不同,所需要的cuda不同。因此,需要共存使用。首先,在安裝cuda前,先確保顯示卡驅動是最新的 因為可以向下相容,如果驅動版本較老無法使用cuda9.0 進入控制台,ctrl alt f1 關閉圖形介面,sudo service lightdm stop 解...

Linux多cuda版本切換

多cuda版本的切換依靠軟連線來實現 我們首先檢視我們的所有的cuda版本,預設儲存在 usr local路徑下,可以看到我們當前有9.0 9.2 10.0 10.1 10.2的五個版本的cuda root zjy cu90 92 100 101 102 cd usr local root zjy ...