ジョブは、Elastic High Performance Computing(E-HPC)の基本的なコンピューティング単位です。ジョブは、シェルスクリプトと実行可能ファイルで構成されます。ジョブは、指定されたキューとスケジューラによって決定される順序で実行されます。 E-HPCコンソールでは、ジョブの送信、ジョブの停止、またはジョブのステータスの表示ができます。このトピックでは、E-HPCコンソールを使用してジョブを送信する方法について説明します。
前提条件
クラスタとクラスタノードが[実行中] 状態であること。
ユーザーが作成されていること。詳細については、「ユーザーの管理」をご参照ください。
ジョブファイルがインポート準備ができていること。 E-HPCでは、次のいずれかの方法を使用してジョブファイルをインポートできます。
ジョブを送信する前に、クラスタにログオンし、rsyncやSecure Copy Protocol(SCP)などのリモート転送ソリューションを使用してジョブファイルをインポートします。
ジョブを送信するときに、オブジェクトストレージサービス(OSS)バケットに保存されているジョブファイルをインポートします。
ジョブを送信するときに、ローカルディレクトリに保存されているジョブファイルをインポートするか、新しく作成されたジョブファイルを選択します。
手順
E-HPC コンソールにログオンします。
上部ナビゲーションバーの左上隅で、リージョンを選択します。
左側のナビゲーションペインで、[ジョブとパフォーマンス管理] > [ジョブ] を選択します。
[ジョブ] ページで、[クラスタ] ドロップダウンリストからクラスタを選択します。
[ジョブの送信] タブをクリックします。
[ジョブの送信] タブで、必要なパラメータを設定します。次の表に、主要なパラメータを示します。
パラメータ
説明
ジョブテンプレート
ジョブの送信元となる設定済みテンプレート。詳細については、「ジョブテンプレートの管理」をご参照ください。
ジョブ名
ジョブの名前。ジョブファイルを自動的にダウンロードして解凍する必要がある場合は、ジョブファイルにジョブと同じ名前を付けます。
コマンドライン
スケジューラに送信するジョブ実行コマンド。コマンドまたはスクリプトファイルの相対パス(例:/home/test/job.pbs)を入力できます。このパラメータは、以下のシナリオで異なる設定になります。
スクリプトファイルが実行可能な場合は、相対パス(例:
./job.pbs)を入力します。スクリプトファイルが実行可能でない場合は、実行コマンド(例:
/opt/mpi/bin/mpirun /home/test/job.pbs)を入力します。スケジューラがPBSの場合は、コマンドの前に2つのハイフン(-)を追加します(例:--/opt/mpi/bin/mpirun /home/test/job.pbs)。
キュー
クラスタの作成時にキューに計算ノードを追加した場合は、ジョブをキューに送信します。そうでない場合、ジョブは実行に失敗します。キューに計算ノードを追加しなかった場合、ジョブはスケジューラのデフォルトキューに送信されます。計算ノードが存在するキューを選択する必要があります。そうでない場合、ジョブは失敗します。
タスク数量
ジョブの実行に使用される計算ノードの数。
タスク数
各計算ノードがジョブの実行に使用するタスクの数、つまりプロセスの数。
最大メモリ
計算ノードがジョブを実行するときに使用できる最大メモリ。このパラメータを指定しない場合、メモリは無制限です。
最大実行時間
ジョブの最大実行時間。実際の実行時間が最大実行時間を超えると、ジョブは失敗します。このパラメータを指定しない場合、実行時間は無制限です。
スレッド数量
タスクで使用されるスレッドの数。このパラメータを指定しない場合、スレッド数は 1 です。
GPU数量
計算ノードがジョブを実行するときに使用される GPU の数。このパラメータを指定する場合は、計算ノードが GPU アクセラレーテッドインスタンスであることを確認してください。
優先度
ジョブの優先度。有効な値: 0 ~ 9 。値が大きいほど、優先度が高くなります。クラスタスケジューリングポリシーを設定するときに、ジョブの優先度でジョブをスケジュールするように指定すると、優先度の高いジョブが最初にスケジュールされて実行されます。
最初に実行したいジョブに高い優先度を設定できます。
ジョブ配列を有効にする
スケジューラのジョブ配列機能を有効にするかどうかを指定します。ジョブ配列は、類似した独立したジョブのコレクションです。ジョブ配列を設定して、ジョブ実行ルールをカスタマイズできます。
形式: X-Y:Z 。 X は最小インデックス値です。 Y は最大インデックス値です。 Z はステップサイズです。たとえば、 2-7:2 は、3 つのジョブを実行する必要があり、それらのインデックス値が 2 、 4 、および 6 であることを示します。 Z のデフォルト値: 1 。
後処理コマンド
ジョブの実行結果に対して後続の操作(たとえば、生成されたジョブデータの OSS バケットへのパッケージ化またはアップロード)を実行するために使用されるコマンド。
標準出力リダイレクトパス
Linuxシェルを使用してリダイレクトされた stderr および stdout の出力ファイルパス。パスには、出力ファイル名が含まれています。
stdout:標準出力
stderr:標準エラー
クラスタユーザーは、パスに対する書き込み権限を持っている必要があります。デフォルトでは、出力ファイルはスケジューラの設定に基づいて生成されます。
標準エラーリダイレクトパス
変数
ジョブに渡されるランタイム変数。実行可能ファイルの環境変数を使用してアクセスできます。
ジョブファイルをクラスタにアップロードします。
OSSバケットに保存されているジョブファイルを使用する
E-HPCでは、ジョブを送信する前に、OSSバケットからジョブファイルをインポートできます。また、E-HPCコンソールでジョブを送信するときに、OSSバケットに保存されているジョブファイルを指定することもできます。詳細については、「OSSバケットからクラスタへのジョブファイルのインポート」をご参照ください。 E-HPCコンソールでジョブを送信するときにOSSバケットに保存されているジョブファイルを指定するには、次の手順を実行します。
[OSS ジョブファイルの使用] タブで、[ファイルの選択] をクリックします。[ファイルの選択] ダイアログボックスで、ジョブファイルを選択し、[OK] をクリックします。
ZIPファイル、TARファイル、またはGZIPジョブファイルを指定する場合は、[解凍] をオンにして、解凍コマンドを指定する必要があります。
説明OSSバケットからジョブファイルを選択すると、ジョブファイルと同じ名前のフォルダ(例:JobName)が /home/user ディレクトリに自動的に作成されます。次に、ジョブファイルがダウンロードされ、必要に応じて /home/user/JobName ディレクトリに解凍されます。
ジョブファイルの編集
[ジョブファイルの編集] タブをクリックします。
[ジョブファイルの編集] タブで、[クラスタファイルブラウザ] をクリックします。表示されるダイアログボックスで、クラスタのユーザー名とパスワードを入力して、Workbenchを使用してクラスタにログオンします。必要に応じて、ジョブファイルの作成、編集、または削除ができます。
[ジョブの送信] タブの右上隅にある [ジョブの送信] をクリックします。表示されるダイアログボックスで、クラスターのユーザー名とパスワードを入力します。ジョブがクラスターに送信されます。その後、E-HPC によってジョブが実行されます。
結果
ジョブを送信した後、[ジョブ] ページでジョブを表示できます。
ジョブを見つけて、[アクション] 列の [詳細] をクリックします。 [ジョブの詳細] パネルで、ジョブ名、ジョブ ID 、開始時刻、ジョブが最後に更新された時刻、ジョブの実行情報など、ジョブの詳細を表示できます。