Linux部署pytorch
背景介紹
不同的開源代碼可能需要不同的實驗環境和版本,這時候的確體現出Anaconda管理環境的好處了,分別搞一個獨立環境方便管理。
有的教程建議選擇較舊的版本,但筆者建議在條件允許的情況下安裝最新版,本次是打算使用擴散生成庫diffuser
庫,但在torch1.13+cu117
版本下會報類型錯誤,多虧有ai,很快定位到了是torch
版本過低問題,但更新的torch
也需要更高版本的cuda
,因為服務器不是筆者自己在用,貿然升級cuda
可能爆發組內矛盾,所以順路也解決了虛擬環境內如何安裝cuda的問題。
Anaconda安裝
本次服務器上已有Anaconda,有關方法可見Linux服務器上安裝Anaconda,大致步驟是到官網查找需要的版本連接,使用wget
方法下載,安裝后添加環境變量。
Linux安裝pytorch
剩下方法與Windows中安裝pytorch幾乎完全一樣,conda create -n 環境名 python=3.9
創建conda環境后,到pytorch官網找合適的版本下載。
安裝時注意版本即可,服務器虛擬環境中輸入命令后即可順利安裝。
虛擬環境安裝cuda
參照安裝cudatoolkit,首先使用conda actviate 環境名
進入先前創建的環境,出現下圖前綴變換說明切換成功:
先使用nvidia-v
查看本機的顯卡信息:
后續下載安裝的cuda版本不能高于該CUDA版本,使用conda search cudatoolkit
查找可以安裝的cuda版本:
查找到想要的版本后,直接在當前環境使用conda install cudatoolkit=11.8.0
安裝即可。
到此服務器的虛擬環境中已具有pytorch+cuda
全部所需條件。
pycharm連接服務器
Linux系統無可視化界面,更無編程所需的IDE,使用IDE遠程連接服務器編程十分必要,實現的方式也多種多樣。
文件選項內遠程開發就有選項,通過ssh連接
但該方法筆者還沒成功,涉及證書問題,不過發現了另外一種方法,可用ssh連接遠程服務器的解釋器,使用如下步驟即可:
大致原理為使用ssh協議將本地文件上傳到服務器上,服務器執行文件后結果返回給pycharm,服務器端的文件位置可通過同步文件夾選項設置。
執行代碼
import torch
print(torch.__version__)
得到如下輸出說明實驗成功:
總結
這在本科階段應該是得折騰個把禮拜的事,現在沒費多少勁就解決了,一方面是現在AI
和網絡發展的快,獲取信息太容易了;另一方面是個人成長經驗也豐富了,遇到事直到怎么解決,方向明確,報錯就解決錯,一個個解決了自然就得到想要的結果了,所謂事緩從恒,事急從權;事緩則圓,事急則亂。