# 4. HPC Slurm 工作派送排程 ###### tags: `課程教學` > 課程重點: 學習如何派送 台灣杉二號 slurm job ## :memo: Where do I start? ## :a:**01** 撰寫台灣杉slurm 排程函示庫 請修改下方 計畫代號 * #SBATCH -A GOV109189 ### 登入台灣杉二號主機 請將以下文字檔案儲存成 job.slurm ``` #!/work/u00cjz00/binary/bash5.0/bin/bash #SBATCH -A GOV109189 ### project number, Example MST109178 #SBATCH -J _t2demo_ ### Job name, Exmaple jupyterlab #SBATCH -p gp4d ### Partition Name, Example ngs1gpu #SBATCH --nodes=1 ### Nodes, Default 1, node number #SBATCH --ntasks-per-node=1 ### Tasks, Default 1, per node tasks #SBATCH -c 4 ### Cores assigned to each task, Example 4 #SBATCH --gres=gpu:1 ### GPU number, Example gpu:1 #SBATCH --time=0-1:00:00 ### Runnung time, days-hours:minutes:seconds or hours:minutes:seconds #SBATCH -o genai_%j.out ### Log folder, Here %j is job ID #SBATCH -e genai_%j.err ### Log folder, Here %j is job ID ## 您的程式部分 ##### -> 執行程式01 sleep 120 ##### -> 執行程式02 singularity exec --nv /work/u00cjz00/nvidia/pytorch_22.12-py3.sif python3 -c 'import torch; print(torch.cuda.is_available())' ``` ## :a:**02** 派送工作 ``` ## 建立 genai_log目錄, 切換至genai_log目錄, 並派送工作, log會以genai_xxxxxx.out 以及 genai_xxxxxx.err 模式呈現 mkdir -p ~/genai_log cd ~/genai_log sbatch /work/u00cjz00/slurm_jobs/demo/demo_case/job.slurm ``` ## :a:**03** 觀看自己派送工作執行狀況 ``` ## 觀看執行狀況 squeue -u $(whoami) ``` ## :a:**04** 刪除JOB ``` ## 刪除JOB, 接續步驟三產出的 job id scancel $jobID ``` ## :a:**05** 全部JOB刪除 ``` ## 全部JOB刪除, 列出 PID 並砍掉 Process squeue -u $(whoami) | grep -v JOBID | awk '{print $1}' | xargs scancel ``` ## :movie_camera: slurm操作操作影片 {%youtube Xl1liXv14As %}