超算平台使用命令及常見問題匯總
命令 | 功能 | 示例 |
---|---|---|
module avail | 查看可用的軟件列表 | |
module load [modulesfile] | 加載需要使用的軟件 | module load cuda/10.0 |
module show [modulesfile] | 查看對應軟件的環境(安裝路徑、庫路徑等) | module show cuda/10.0 |
module list | 查看當前已加載的所有軟件 | |
module unload [modulesfile] | 移除使用 module 加載的軟件 | module unload cuda/10.0 |
module 其它用法,可使用 module --help 中查詢。module 加載的軟件環境只在當前登陸窗口有效,退出登陸后軟件環境就會失效。用戶如果需要經常使用一個軟件,可以把 load 命令放在~/.bashrc 或者提交腳本里面。
.bashrc
打開.bashrc
$ vim ~/.bashrc
使用.bashrc
先按Esc,然后輸入
:wq 保存后退出vim
:wq! 為強制儲存后退出
:w 保存但不退出(常用)
:w! 若文件屬性為『只讀』時,強制寫入該檔案
:q 離開 vim (常用)
:q! 若曾修改過檔案,又不想儲存,使用 ! 為強制離開不儲存檔案。
:e! 將檔案還原到最原始的狀態!
建議在文件最后追加寫入.bashrc
torch報錯
Linux下激活虛擬環境
$ source activate env
linux上安裝完torch后仍報錯:
Traceback (most recent call last):
File "cifar10_tutorial.py", line 58, in <module>
import torch
ImportError: No module named torch
是因為還要進行環境配置:
首先進入:
$ vim ~/.bashrc
添加下面的語句:
. /home/yourdirectory/torch/install/bin/torch-activate
# added by Anaconda3 installer
export PATH="/home/yourdirectory/anaconda3/bin:$PATH"
然后更新一下環境變量就可以了
$ source ~/.bashrc
sh文件
運行腳本:
$ sbatch --gpus=1 ./run.sh
.sh文件是在windows系統編輯的情況下,Linux系統不識別這個文件,執行“dos2unix 文件名字” 轉換下文件格式,之后再提交
腳本 run.sh 示例 1,python 程序運行腳本示例:
\#!/bin/bash
\#加載環境,此處加載 anaconda 環境以及通過 anaconda 創建的名為 pytorch 的環
境
module load anaconda/2020.11
source activate pytorch
\#python 程序運行,需在.py 文件指定調用 GPU,並設置合適的線程數,batch_size
大小等
python train.py
查看顯存狀態
$ parajobs
JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
9987110 gpu .jobscri paraai_t R 1:52 1 g0028
9987110 作業 GPU 利用率為:
g0028: pci.bus_id, utilization.gpu [%], utilization.memory [%], memory.total [MiB],
memory.free [MiB], memory.used [MiB]
g0028: 00000000:85:00.0, 0 %, 0 %, 16160 MiB, 16160 MiB, 0 MiB
取消作業
執行 scancel 作業 ID 取消作業
$ scancel 2011812
查看輸出文件
$ cat slurm-作業號.out
實時查看輸出
$ tail -f slurm-作業號.out
如果遇到報錯,Ctrl+C退出
有些python程序可能默認沒有輸出到slurm文件里,可以run.sh 腳本里加上 export PYTHONUNBUFFERED=1 提交試試