@applejxd

雑記帳

HPC メモ

目次

Slurm

Simple Linux Utility for Resource Management

ステータス確認

# ノードのスペック確認
scontrol show node
# ノードの状態確認
nice watch -n 10 sinfo
# ノード障害の原因確認
sinfo -R
# キューの状態確認
# cf. https://slurm.schedmd.com/squeue.html
nice watch -n 2 squeue --format=\"%.7i %.9P %.8j %.8u %.2t %.10M %.12N %.5C %.15B\"

ジョブ投入

srun の例

srun --job-name=train --partition=part01 --nodelist=node01 \
  --gres gpu:2 --cpus-per-task=4 --output="logs/train.log" \
  bash train.sh &

sbatch の例: sbatch -vv sbatch.sh

#!/bin/bash
#SBATCH --job-name=train
#SBATCH --cpus-per-task 8
#SBATCH --gres gpu:2
#SBATCH --partition=part01
#SBATCH --output=logs/train.log
#SBATCH --exclusive

module load cuda 12.2
module load cuda 12.2/cudnn

eval "$(conda shell.bash hook)"
conda activate torch

srun python train.py

Tips

Environment Modules

マルチコア/GPU 処理

CMake を用いた実装例

マルチ GPU 処理

並列コンピュータ処理