Linux 使用技巧階段性總結
(For more information, please go to Alan D. Chen , upgrading~~)
Anaconda與conda區別:
conda可以理解為一個工具,也是一個可執行命令,其核心功能是包管理與環境管理。包管理與pip的使用類似,環境管理則允許用戶方便地安裝不同版本的python並可以快速切換。
conda的設計理念——conda將幾乎所有的工具、第三方包都當做package對待,甚至包括python和conda自身。
Anaconda則是一個打包的集合,里面預裝好了conda、某個版本的python、眾多packages、科學計算工具等等。
兩份重要的課程,一定要仔細看喲~。
下面的常用命令是較為常用的語句。
在Linux系統中查考GPU 的使用情況可以使用:
Linux查看Nvidia顯卡信息及使用情況,查看GPU 的使用情況:
nvidia-smi
;(顯示所有GPU的當前信息狀態)watch -n 1 nvidia-smi
(實時查看GPU)
-
顯示的表格中:
Fan: 風扇轉速(0%--100%),N/A表示沒有風扇
Temp: GPU溫度(GPU溫度過高會導致GPU頻率下降)
Perf: 性能狀態,從P0(最大性能)到P12(最小性能)
Pwr: GPU功耗
Persistence-M: 持續模式的狀態(持續模式耗能大,但在新的GPU應用啟動時花費時間更少)
Bus-Id: GPU總線,domain🚌device.function
Disp.A: Display Active,表示GPU的顯示是否初始化
Memory-Usage:顯存使用率
Volatile GPU-Util:GPU使用率
ECC: 是否開啟錯誤檢查和糾正技術,0/DISABLED, 1/ENABLED
Compute M.: 計算模式,0/DEFAULT,1/EXCLUSIVE_PROCESS,2/PROHIBITED
附加選項:
nvidia-smi –i xxx
指定某個GPU
nvidia-smi –l xxx
動態刷新信息(默認5s刷新一次),按Ctrl+C停止,可指定刷新頻率,以秒為單位
nvidia-smi –f xxx
將查詢的信息輸出到具體的文件中,不在終端顯示
-
nvidia-smi -q
:查詢所有GPU的當前詳細信息
-
附加選項:
nvidia-smi –q –u
顯示單元而不是GPU的屬性
nvidia-smi –q –i xxx
指定具體的GPU或unit信息
nvidia-smi –q –f xxx
將查詢的信息輸出到具體的文件中,不在終端顯示
nvidia-smi –q –x
將查詢的信息以xml的形式輸出
nvidia-smi -q –d xxx
指定顯示GPU卡某些信息,xxx參數可以為MEMORY, UTILIZATION, ECC, TEMPERATURE, POWER,CLOCK, COMPUTE, PIDS, PERFORMANCE, SUPPORTED_CLOCKS, PAGE_RETIREMENT,ACCOUNTING
nvidia-smi –q –l xxx
動態刷新信息,按Ctrl+C停止,可指定刷新頻率,以秒為單位
在Linux服務器上將常會遇到
CUDA out of memory
在機器學習領域,通常認為是batch size 設置過大所致,但是這里還有另外的情況。
在開啟tmux的情況下,使用命令行啟動深度學習程序,這個過程是不能夠通過“ctrl + c”來強行停止的,但是可以通過tmux 進行python + 命令,這個時候可以通過
watch -n 1 nvidia-smi
1.查看GPU的占用情況,同時查看一下進程使用
top
top命令:可以實時動態地查看系統的整體運行情況,是一個綜合了多方信息監測系統性能和運行信息的實用工具。通過top命令所提供的互動式界面,用熱鍵可以管理。輸入top后可以看到如下的界面,實時顯示進程情況。
2.殺死進程
我們可以通過 進程的名字和進程的ID(PID)來結束進程。
結束命令:
kill:通過進程ID來結束進程
killall:通過進程名字結束進程
這樣可以殺死進程,解放memory。