之前參加AI Cup的時候跟資工系的蘇木春教授借了一台GPU server來給組員遠端做使用,這是當時撰寫的一些簡單規範,從hackMD拿過來這邊放當備份。

!運行你的程式前,請先做以下事項

查詢有沒有人在用gpu,使用率很高的話,請在跑的時候指定沒人用的gpu

nvidia-smi

一些會常用的指令

下載python

工作站裡面沒有python3.8,只有到3.6,所以需要自己下載,步驟如下,一次請只輸入一條指令。

sudo apt update
sudo apt install software-properties-common
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt install python3.8

成功安裝的話運行這個,理論上會出現Python 3.8.12

python3.8 --version

傳送檔案

要傳送檔案到工作站的話,ssh下可以使用以下指令,之後輸入一下密碼就好了

scp -P 22 要傳送的檔案 user@140.115.0.0:~/data(目的地)
scp -P 22 -r 要傳送的檔案目錄 user2@140.115.0.0:~/data(目的地)

安裝虛擬環境

pip install virtualenv
python3.8 -m virtualenv venv --python=python3.8

開啟虛擬環境

source ./venv/bin/activate

跑模型

在yolov5底下開啟venv虛擬環境之後,輸入以下指令

nohup python3.8 -m torch.distributed.launch --nproc_per_node 2 train.py --img 1280 --batch 16 --epochs 200 --data train.yaml --weights yolov5s.pt --device 0,1

離開ssh時讓模型繼續跑

進入一個程序管理器

tmux

接下來執行完跑模型的操作之後依序按下ctrl+b和d,就可以退出當前程式,並讓程式在背景運行

下載模型

訓練完的模型從伺服器裡面下載回來做使用。

scp -r -P 22 user@140.115.0.0:~/project/yolov5/runs/train/exp2 G:\project

下載解壓縮套件

因為圖片太多了,基本上都是壓縮成一個檔案上傳,但伺服器端沒有解壓縮的套件

sudo apt install zip

之後就可以使用

unzip 檔案名稱

來解壓縮到當前路徑

建立資料夾

如果要在本地和遠端都建立一個專案來跑的話,請先在遠端home/user?之下先建立檔案路徑,可以使用以下指令

mkdir 資料夾名稱

跑文本識別

python3 -m paddle.distributed.launch --gpus '0,1'  tools/train.py -c configs/rec/rec_icdar15_train.yml