--- title: 会話型処理 --- [toc] ## 会話型実行のためのコマンド{#command} 会話型実行はSlurmのインタラクティブバッチ機能を使用して行います。簡易に実行するためのツールとして _**tssrun**_ コマンドを用意しています。 tssrun コマンドの後ろに実行したいプログラムおよび引数を指定することでジョブを実行することが可能です。 ジョブ実行時に自動的に設定される環境変数については[こちら](/run/tips#env_val)をご参照ください。 コマンド | 説明 | 実行例 | 備考 :-----------------------------------------------:|:--------------------:|:----------------:|------------------------------------------------------------ tssrun | 計算ノードでプログラムを実行する | tssrun ./a.out | ### コマンドオプション{#option} オプション | 説明 | 指定例 :-----------------------------:|:-------------------------------------------------------------:|:---------------------: -p _QUEUENAME_ | バッチ処理用キューの指定 | tssrun -p gr19999b ./a.out -t _HOURS_:_MINUTES_:_SECONDS_ | 経過時間上限値の指定(単位は時:分:秒) | tssrun -p gr19999b -t 1:0:0 ./a.out --rsc p=_PROCS_:t=_THREADS_:c=_CORES_:m=_MEMORY_
or
--rsc g=_GPU_ | ジョブ割当リソース量の指定。詳細は[こちら](/run/resource#resouce) | tssrun -p gr19999b --rsc p=4:t=8:c=8:m=2G ./a.out
or
tssrun -p gr19999b --rsc g=1 ./a.out --x11 | 計算ノードでGUIプログラムを実行する | tssrun -p gr19999b --x11 xeyes * 指定例に、*gr19999b* と記載の部分はご自身のキュー名に変更していただく必要があります。 * コマンドを入力すると、いくつかのメッセージが表示された後、プログラムの実行が開始されて結果が表示されます。 * 会話型実行用の計算ノードが混雑している場合、メッセージ表示後すぐに実行が開始されないことがあります。 * パーソナルコース、グループコース用のキューで会話型実行を行うことも可能です。 ## ジョブの投入 **実行例1:** システムBのMPIプログラムの場合 ```nohighlight $ tssrun -p gr19999b --rsc p=4 ./a.out salloc: Granted job allocation 102362 salloc: Waiting for resource configuration salloc: Nodes cnode3 are ready for job My name is cnode3. My rank is 1. My name is cnode3. My rank is 2. My name is cnode3. My rank is 3. My name is cnode3. My rank is 0. salloc: Relinquishing job allocation 102362 exit code: 0 ``` **実行例2:** GUIプログラムを実行する場合 ```nohighlight $ tssrun -p gr19999b --x11 xeyes salloc: Granted job allocation 102366 salloc: Waiting for resource configuration salloc: Nodes <計算ノード名> are ready for job (Xアプリケーションが起動する) ``` ## ジョブ情報の確認{#report} tssrunコマンドによる会話型実行では、ジョブ情報を確認することが可能です。 コマンド | オプション | 説明 | 実行例 :------:|:-----:|:----------------------:|:------------------: sacct | -j _JOBID_ | 会話型実行のジョブ情報を表示する | sacct -j 102362 コマンドとオプションに続けて、ジョブIDを指定する必要があります。ジョブIDは、tssrunコマンド実行時に表示される `salloc: Granted job allocation XXXXXX`のXXXXXXの部分です。 会話型実行の終了後、24時間以上経過したものについては表示できません。 #### 会話型実行が異常終了した場合のメッセージ 会話型実行が異常終了した場合、ジョブ情報中に終了理由が表示されます。 * メモリ制限による終了 (ノード全体のメモリの圧迫によるもの) ```nohighlight Can't malloc: Cannot allocate memory ``` * 経過時間制限による終了 ```nohighlight slurmstepd: error: *** STEP 102368.0 ON <計算ノード名> CANCELLED AT 2022-11-04T15:34:36 DUE TO TIME LIMIT *** ```