TSUBAME2.5の使い方(ジョブの投入)

目次

この記事はTSUBAME2.5についてのもので,TSUBAME3のものではないので役に立ちません.(2017/11/10追記)
TSUBAME3.0の使い方はこちら

バッチキューへのジョブの投入の仕方を簡単に書いておきます。

まず、バッチキューとは何かという話ですが、TSUBAMEはプログラムを即実行するのではなく、待ち行列を作らせて順番に処理をさせていく方式を取っています。
これがバッチキューです。
そのためデバッグが終わったプログラムを実行する場合はこの行列にプログラムを並ばせます。
これがバッチキューへのジョブの投入です。

ジョブを投入するにはまずシェルスクリプトを1つ用意します。
名前はなんでもいいですが、ここではmyjob.shとします。
置き場所は実行プログラムと同じディレクトリでいいでしょう。
中身はこんな感じ。

#!/bin/sh
cd #{PBS_O_WORKDIR}
./a.out ←実行したいコマンド

このシェルスクリプトを所有者が実行可能でないといけないので実行権を与えます。

$ chmod u+x myjob.sh

続いてt2subコマンドを使って実際にジョブの投入を行います。

t2sub -q S -l select=1:mem=(メモリ量) ./myjob.sh
「メモリ量」の部分は使用したいメモリ量です。10gbとか100mbの様に指定します。
上限は54gbです。
メモリの指定の目安はGSICのサイトにチョロっと書いてあるので参考にしてみるといいと思います。

ジョブが終了するとOTHERS.o*******,OTHERS.e*******と様なファイルがディレクトリに現れます。
それぞれ標準出力と標準エラー出力に対応しています。
標準エラー出力の方に実際に使用されたメモリ量や実行時間などが書き込まれています。

学部生が投入できるジョブの最大実行時間は10分です。
10分を超えるとジョブは強制終了させられます。
無課金で長時間計算したい場合はメモリの中身をファイルに書き出したりすればいいんですかね...?

投入したジョブの現在の状況(実行時間など)を見たい場合はt2statコマンドを使います。

$ t2stat -n1

カテゴリー:TSUBAME
記事作成日:2017-05-30