前提条件
E-HPC クラスターを使用してジョブを送信する前に、次のことを確認してください。
- 「ユーザー管理」で説明されているように、ルート以外のユーザーを既に作成していること。
- ログインノードを理解していること。
- データのインポート方法を理解し、現在のユーザーの $HOME ディレクトリにデータを配置していること。
注:ジョブの送信にルートアカウントを使用しないことを推奨します。ジョブスクリプトの誤操作は、E-HPC クラスターのデータ破損につながる可能性があるためです。
ジョブの送信
規則
次のジョブファイルパスを使用するとします。
$HOME/test.py # Job executable program
$HOME/test.data # Job data
ジョブを実行するコマンドライン
test.py -i test.data
ジョブスケジューリング
E-HPC は、2 種類の E-HPC ジョブスケジューラをサポートしています。
- PBS pro
- SLURM
- SGE(Sun GridEngine)
PBS
$ cat > test.pbs
#!/bin/sh
#PBS -l ncpus=4,mem=1gb
#PBS -l walltime=00:10:00
#PBS -o test_pbs.log
#PBS -j oe
cd $HOME
test.py -i test.data
$ qsub test.pbs
PBS ジョブスケジューリングスクリプト test.pbs:
- 3 行目では、ジョブに必要なコンピューティングリソースを 4 CPU コアと 1 GB のメモリと見積もっています。
- 4 行目では、ジョブの実行に必要な時間を 10 分と見積もっています。
- 5 行目では、出力ファイルを stdout と指定しています。
- 6 行目では、stderr と stdout の出力を、前の行で指定された出力ファイルにマージしています。
- 7 行目と 8 行目では、特定のジョブの実行コマンドを入力しています。
PBS の組み合わせの例は、「GROMACS (例 2)」と「LAMMPS (PBS ジョブの送信)」をご参照ください。
詳細は、公式の PBS User Guide をご参照ください。
SLURM
$ cat > test.slurm
#!/bin/sh
#SBATCH --job-name=slurm-quickstart
#SBATCH --output=test_slurm.log
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=1
#SBATCH --time=00:10:00
#SBATCH --mem-per-cpu=1024
cd $HOME
test.py test.data
$ sbatch test.slurm
SLURM の組み合わせの例は、「Large-scale Atomic/Molecular Massively Parallel Simulator (LAMMPS」と「Weather Research and Forecasting model (WRF)」をご参照ください。
SGE
qsub -V -b y -cwd hostname
qsub -V jobscript.sh
More detail info, please refer to qsub manual