linux 多用戶多版本cuda管理

一带族、對某用戶指定特定版本 cuda

  1. 查看 /usr/local 下的已有的 cuda 版本

    xxxxxxx@xx: ls /usr/local/cuda*
    /usr/local/cuda-10.1:
    bin    cuda-9.2  EULA.txt  include  libnsight  nsight-compute-2019.4.0  nsight-systems-2019.3.7.5  nvvm share  targets  version.txt cuda-10.1  doc       extras    lib64    libnvvp    nsightee_plugins     nvml         samples    src    tools
    
    /usr/local/cuda-9.0:
    bin  doc  extras  include  jre  lib64  libnsight  libnvvp  nsightee_plugins  nvml  nvvm  pkgconfig  samples  share  src  tools  version.txt
    
    /usr/local/cuda-9.2:
    bin  cuda-9.0  cuda9.0  doc  extras  include  jre  lib64  libnsight  libnvvp  nsightee_plugins  nvml  nvvm  pkgconfig  samples  share  src  tools  version.txt
    
  2. 在該用戶的 ~/.bashrc 中添加/修改環(huán)境變量衙荐,以使用 cuda-10.1 為例:

    export PATH=$PATH:/usr/local/cuda-10.1/bin
    export LD_LIBRARY_PATH=/usr/local/cuda-10.1/lib64:$LD_LIBRARY_PATH
    export LIBRARY_PATH=/usr/local/cuda-10.1/lib64:$LIBRARY_PATH
    
  3. 來源:https://zhuanlan.zhihu.com/p/35834028

二、多版本 cuda 切換

  1. 更改用戶的 ~/.bashrc 中的環(huán)境變量拓瞪,以使用 cuda 代替 cuda-10.1

    export PATH=$PATH:/usr/local/cuda/bin
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/cuda/lib64  
    export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/cuda/lib64  
    
  2. /usr/local/cuda 軟鏈到某一個(gè)版本的 cuda枝誊,以 cuda-10.1 為例:

    sudo ln -s /usr/local/cuda-10.1 /usr/local/cuda
    
  3. 以上命令運(yùn)行之后顽聂,用戶的 cuda 版本就被設(shè)定為了 10.1, 如果要更改版本逻淌,則必須先刪除舊的軟鏈接么伯,然后重新鏈接

    # 如果要修改 `/usr/local/cudaa` 的鏈接,必須先刪除卡儒,再重新鏈接
    sudo rm -rf cuda
    sudo ln -s /usr/local/cuda-10.1 /usr/local/cuda
    
  4. 來源

三箭券、cuda版本隨conda環(huán)境自動(dòng)變化

假設(shè)此時(shí)服務(wù)器上安裝了兩個(gè)CUDA版本邪意,分別為CUDA 8.0(/usr/local/cuda-8.0)和CUDA 9.0(/usr/local/cuda-9.0)力崇,并且在本機(jī)上配置了一個(gè)版本(例如8.0)的環(huán)境變量($CUDA_HOME, $LD_LIBRARY_PATH)爸黄。沒配置更好,這里配置是為了驗(yàn)證切換虛擬環(huán)境時(shí)指定的CUDA版本是否發(fā)生相應(yīng)的改變擎鸠。假設(shè)虛擬環(huán)境的路徑為 /home/username/.conda/envs/cuda_test摆屯。

總體方法為設(shè)定啟動(dòng)虛擬環(huán)境以及退出時(shí)需要執(zhí)行的腳本,為了使虛擬環(huán)境啟動(dòng)時(shí)環(huán)境變量不同于本機(jī)環(huán)境糠亩,退出時(shí)又恢復(fù)為本機(jī)環(huán)境。步驟如下:

  1. 創(chuàng)建啟動(dòng)虛擬環(huán)境以及退出時(shí)需要執(zhí)行的腳本
    mkdir -p /home/username/.conda/envs/cuda_test/etc/conda/activate.d
    mkdir -p /home/username/.conda/envs/cuda_test/etc/conda/deactivate.d
    
  2. 編輯啟動(dòng)腳本
    vim /home/username/.conda/envs/cuda_test/etc/conda/activate.d/activate.sh
    
    輸入以下內(nèi)容
    ORIGINAL_PATH=$PATH
    ORIGINAL_CUDA_HOME=$CUDA_HOME
    ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
    export CUDA_HOME=/usr/local/cuda-9.0
    export PATH=$CUDA_HOME/bin:$PATH
    export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
    
  3. 添加執(zhí)行權(quán)限
    chmod +x /home/username/.conda/envs/cuda_test/etc/conda/activate.d/activate.sh
    
  4. 編輯退出腳本 vim
    vim /home/username/.conda/envs/cuda_test/etc/conda/deactivate.d/deactivate.sh
    
    輸入以下內(nèi)容
    export PATH=$ORIGINAL_PATH
    export CUDA_HOME=$ORIGINAL_CUDA_HOME
    export LD_LIBRARY_PATH=$ORIGINAL_LD_LIBRARY_PATH
    unset ORIGINAL_PATH
    unset ORIGINAL_CUDA_HOME
    unset ORIGINAL_LD_LIBRARY_PATH
    
  5. 添加執(zhí)行權(quán)限
    chmod +x /home/username/.conda/envs/cuda_test/etc/conda/deactivate.d/deactivate.sh
    
  6. 來源:https://bluesmilery.github.io/blogs/a687003b/#CUDA%E5%AE%89%E8%A3%85
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末准验,一起剝皮案震驚了整個(gè)濱河市赎线,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌糊饱,老刑警劉巖垂寥,帶你破解...
    沈念sama閱讀 217,277評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異另锋,居然都是意外死亡滞项,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,689評(píng)論 3 393
  • 文/潘曉璐 我一進(jìn)店門夭坪,熙熙樓的掌柜王于貴愁眉苦臉地迎上來文判,“玉大人,你說我怎么就攤上這事室梅∠凡郑” “怎么了疚宇?”我有些...
    開封第一講書人閱讀 163,624評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長赏殃。 經(jīng)常有香客問我敷待,道長,這世上最難降的妖魔是什么仁热? 我笑而不...
    開封第一講書人閱讀 58,356評(píng)論 1 293
  • 正文 為了忘掉前任榜揖,我火速辦了婚禮,結(jié)果婚禮上抗蠢,老公的妹妹穿的比我還像新娘举哟。我一直安慰自己,他們只是感情好物蝙,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,402評(píng)論 6 392
  • 文/花漫 我一把揭開白布炎滞。 她就那樣靜靜地躺著,像睡著了一般诬乞。 火紅的嫁衣襯著肌膚如雪册赛。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,292評(píng)論 1 301
  • 那天震嫉,我揣著相機(jī)與錄音森瘪,去河邊找鬼。 笑死票堵,一個(gè)胖子當(dāng)著我的面吹牛扼睬,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播悴势,決...
    沈念sama閱讀 40,135評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼窗宇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了特纤?” 一聲冷哼從身側(cè)響起军俊,我...
    開封第一講書人閱讀 38,992評(píng)論 0 275
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎捧存,沒想到半個(gè)月后粪躬,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,429評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡昔穴,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,636評(píng)論 3 334
  • 正文 我和宋清朗相戀三年镰官,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片吗货。...
    茶點(diǎn)故事閱讀 39,785評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡泳唠,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出宙搬,到底是詐尸還是另有隱情警检,我是刑警寧澤孙援,帶...
    沈念sama閱讀 35,492評(píng)論 5 345
  • 正文 年R本政府宣布,位于F島的核電站扇雕,受9級(jí)特大地震影響拓售,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜镶奉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,092評(píng)論 3 328
  • 文/蒙蒙 一础淤、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧哨苛,春花似錦鸽凶、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,723評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至亿蒸,卻和暖如春凑兰,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背边锁。 一陣腳步聲響...
    開封第一講書人閱讀 32,858評(píng)論 1 269
  • 我被黑心中介騙來泰國打工姑食, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人茅坛。 一個(gè)月前我還...
    沈念sama閱讀 47,891評(píng)論 2 370
  • 正文 我出身青樓音半,卻偏偏與公主長得像,于是被迫代替她去往敵國和親贡蓖。 傳聞我的和親對象是個(gè)殘疾皇子曹鸠,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,713評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容