グリッドで実行中のアプリケーションはジョブとみなされます。このあとの各節では、ジョブの状態、リソースの使用状況、およびスケジューリングポリシーを確認する方法について説明します。この情報は、あるジョブに関するデータの「概要」、「使用状況」、「割り当て」といった異なる表示形式で表示されます。各ジョブの複合タスクなど、各ジョブに関する詳細情報も表示できます。
「ジョブの概要」タブで、ジョブの状態を一覧で確認し、パフォーマンスに影響する可能性がある要因を確認することができます。ジョブ ID をクリックすると、詳細情報を示す「ジョブの詳細」ページが表示され、きわめて詳細な情報を参照できます。
「ジョブの概要」タブには、次のフィールドがあります。
状態 – ジョブの状態が、次の各文字で示されます。
d (削除) — qdel(1) を使用してジョブが削除されたことを示します。
r (実行中) — ジョブが実行されようとしているところか、すでに実行中であることを示します。
R (再起動) — ジョブが再起動されたことを示します。この状態は、ジョブの移行、または qsub のマニュアルページの -r セクションに示す理由の一つが原因です。
s (一時停止) — すでに実行を開始したジョブが、qmod(1) を使用して一時停止されたことを示します。
S (一時停止) — すでに実行を開始したジョブが属しているキューが一時停止されたために、そのジョブも一時停止されたことを示します。
t (転送中) — ジョブが実行されようとしているところか、すでに実行中であることを示します。
T (しきい値) — 対応するキューの 1 つ以上の一時停止しきい値を超えたために、すでに実行を開始しているあるジョブが一時停止状態になっており (詳細は、queue_conf のマニュアルページを参照)、その結果、そのジョブが一時停止されていることを示します。
w (待機中) — 重要なリソースまたは指定された条件を待つためにジョブが一時停止されたことを示します。
これらの状態については、qstat(1) のマニュアルページを参照してください。また、『N1 Grid Engine ユーザーズガイド』の「ジョブとキューの監視と制御」も参照してください。
ID – ジョブ ID は、ジョブの一意の識別情報であり、「ジョブの詳細」ページにアクセスする手段でもあります。
名前 – ジョブの名前です。ジョブに名前を割り当てると、ジョブ ID だけを使用するよりもわかりやすく、追跡が容易になります。
ユーザー – ジョブを送信したユーザーの名前です。
プロジェクト – ジョブが割り当てられているプロジェクトの名前です。qsub(1)の -P オプションで指定されたプロジェクトまたは送信したユーザーのデフォルトのプロジェクトです。
部署 – ユーザーが属する部署の名前です。現在の部署の定義を表示するには、qconf コマンドの -sul オプションおよび -su オプションを使用します。
優先度 – ジョブの振り分け優先度です。この優先度によって保留中のジョブ一覧での位置が決まります。振り分け優先度は 10 進数で、数値が大きいほど優先順位が高くなります。優先度の値は、チケットポリシーと緊急度ポリシーの設定に基づいて動的に決定されます。
稼動時間/保留時間 – ジョブの実行が開始されてから経過した時間です。キューにあるジョブの場合は、ジョブの実行を待っている時間です。
タスク – 現在実行中のタスクです。一部のジョブは、単一のタスクから構成されます (タスク ID は常に 1)。並列ジョブや配列ジョブはそれぞれ複数のタスクで構成されます。タスクは通常、1 から昇順で番号が付けられます。ジョブの送信方法によっては、1、3、5、のように番号がとばされる場合もあります。ジョブの実行時には、各タスクは別々に実行されるため、別個の構成情報、環境、およびトレースがあります。タスク番号をクリックすると、タスクに関する詳細情報が「Task Details」ページに表示されます。
「ジョブ」の「ユーザー」、「プロジェクト」、および「部署」は、権利付与ポリシー (チケットポリシー) で使用し、ジョブの振り分け優先度に反映させることができます。たとえば、1 つの部署のジョブは、別の部署のジョブよりも、振り分け優先度が常に高くなるようにできます。
振り分け優先度は、次の 3 つの上位レベルのスケジューリングポリシーから計算されます。「Entitlement」、「緊急度」、および「Custom」(「POSIX」) 。N1GE のスケジューリングポリシーおよび振り分け優先度に関する詳細は、sge_priority のマニュアルページ、および『Scheduler Policies for Job Prioritization in the Sun N1 Grid Engine 6 System』(www.sun.com/blueprints/1005/819-4325.html) を参照してください。
「ジョブ」の「使用状況」タブには、ジョブによるグリッドの計算資源の使用状況に関連した情報や、ジョブの振り分け優先度で考慮するそのほかの要素に関連した情報が表示されます。「概要」表示とは異なり、実行中のジョブと一時停止しているジョブだけが表示されます。「使用状況」表示には、次の列項目があります。
状態 – ジョブの状態が、次の各文字で示されます。
d (削除) – qdel を使用してジョブが削除されたことを示します。
r (実行中) – ジョブが実行されようとしているところか、すでに実行中であることを示します。
R (再起動) – ジョブが再起動されたことを示します。この状態は、ジョブの移行、または qsub(1) コマンドの -r セクションに示す理由の一つが原因です。
s (一時停止) – すでに実行を開始したジョブが、qmod(1) を使用して一時停止されたことを示します。
S (一時停止) – すでに実行を開始したジョブが属しているキューが一時停止されたために、そのジョブも一時停止されたことを示します。
t (転送中) – ジョブが実行されようとしているところか、すでに実行中であることを示します。
T (しきい値) – 対応するキューの 1 つ以上の一時停止しきい値を超えたために、すでに実行を開始しているあるジョブが一時停止状態になっており (queue_conf(5) のマニュアルページを参照)、その結果、そのジョブが一時停止されていることを示します。
w (待機中) – 重要なリソースまたは指定された条件を待つためにジョブが一時停止されたことを示します。
これらの状態については、qstat のマニュアルページを参照してください。また、『N1 Grid Engine ユーザーズガイド』の「ジョブとキューの監視と制御」も参照してください。
ID – ジョブ ID は一意の識別情報であり、「ジョブの詳細」ページにアクセスする手段でもあります。
名前 – ジョブの名前です。ジョブに名前を割り当てると、ジョブ ID だけを使用するよりもわかりやすく、追跡が容易になります。
キュー – このジョブのキューインスタンスです。
CPU – ジョブが使用した CPU 時間です。
メモリー – ジョブが使用しているメモリー容量です。
共有 – システム全体でジョブに権利があると計算された共有資源です。
実行時間 – ジョブの振り分け後の実行時間です。
NTickets – 標準化されたチケットの優先度です。チケットポリシーの「優先指定」コンポーネントを使用して、特定の「ユーザー」、「プロジェクト」、または「部署」の権利を増加できます。優先指定チケットを割り当てることで、緊急度ポリシーの優先度の割り当てに影響を与えずに権利を変更できます。
NUrgency – 標準化された緊急度の優先度です。この優先度には 3 つの要素が寄与します。 期限、待機時間、およびリソース要件です。
NPOSIX – 標準化された POSIX の優先度です。管理者はこの値を使用して特定のジョブの優先度を自由に上げることができます。
タスク – 現在実行中のタスクです。一部のジョブは、単一のタスクで構成されます。この場合、タスク ID は常に 1 です。並列ジョブや配列ジョブはそれぞれ複数のタスクで構成されます。タスクは通常、1 から昇順で番号が付けられます。ジョブの送信方法によっては、1、3、5、のように番号がとばされる場合もあります。ジョブの実行時には、各タスクは別々に実行されるため、別個の構成情報、環境、およびトレースがあります。タスク番号をクリックすると、タスクに関する詳細情報が「Task Details」ページに表示されます。
CPU 使用量またはメモリー使用量の値が空白の場合は、そのジョブの使用状況の情報が報告されていないことを示します。使用状況が報告されたかどうかあとで再び確認してください。
各列の意味については、QMON のマニュアルページを参照してください。
標準化されたチケット、緊急度、および POSIX の各優先度は、N1GE のスケジューラで、ジョブの振り分けの優先順位の決定に使用される 3 つの上位レベルのポリシーです。それぞれで、総合的な優先順位に寄与する要素が計算されます。これら 3 つのポリシー寄与要素を有意義にするために、これらを 0 と 1 の間の数値にそれぞれ標準化します。
「ジョブ」の「割り当て」タブには、ジョブが享受する振り分け優先度に寄与し、スケジューリングポリシーを構成している要素に関する情報が表示されます。この表示を使用して、優先度のポリシーが実際に効果があるかどうかを確認し、キュー内のジョブの全体的な優先順位を決定しているコンポーネントのトラブルシューティングを行うことができます。
ジョブの優先順位は次の 3 つのポリシーに基づいて決定されます。
チケットポリシー
カスタム (POSIX) ポリシー
緊急度ポリシー
計算式の最初の部分であるチケットは、設定されている権利指向型のスケジューリングポリシーを実装するためにスケジューラによって行われる計算を示します。チケットから、スケジューラ内部の論理的な処理がわかります。この機能によって、自分が望んでいるポリシーがどんなものであっても、実際にそれに従っていることを容易に確認できます。また、問題や予期しなかった動作の診断にも使用できます。
上位レベルからジョブに割り当てられたチケット数は、ジョブの権利に正比例します。数が多いほど権利が多くなります。権利が多いジョブは通常は優先度が高いですが、総合的な優先順位はほかの 2 つの要素の影響も受けます。ただし、緊急度ポリシーとカスタムポリシーを意図的に無効にした場合は、権利付与 (チケット) ポリシーだけが有効になります。
優先順位の計算式の 2 つめの部分はカスタム (POSIX) 優先度です。管理者はこの値を使用して特定のジョブの優先度を自由に上げることができます。
優先順位の公式の 3 つめの部分である緊急度は、ジョブの所有者ではなく、ジョブの個々の特性だけから計算されます。緊急度の値は、次の 3 つの情報の合計から得られます。期限、待機時間、およびリソース要件です。
N1GE のスケジューリングポリシーおよび振り分け優先度の詳細は、sge_priority のマニュアルページと『Scheduler Policies for Job Prioritization in the Sun N1 Grid Engine 6 System』(www.sun.com/blueprints/1005/819-4325.html) を参照してください。
状態 – ジョブの状態が、次の各文字で示されます。
d (削除) – qdel(1) を使用してジョブが削除されたことを示します。
r (実行中) – ジョブが実行されようとしているところか、すでに実行中であることを示します。
R (再起動) – ジョブが再起動されたことを示します。この状態は、ジョブの移行、または qsub(1) コマンドの -r セクションに示す理由の一つが原因です。
s (一時停止) – すでに実行を開始したジョブが、qmod(1) を使用して一時停止されたことを示します。
S (一時停止) – すでに実行を開始したジョブが属しているキューが一時停止されたために、そのジョブも一時停止されたことを示します。
t (転送中) – ジョブが実行されようとしているところか、すでに実行中であることを示します。
T (しきい値) – 対応するキューの 1 つ以上の一時停止しきい値を超えたために、すでに実行を開始しているあるジョブが一時停止状態になっており (queue_conf(5) のマニュアルページを参照)、その結果、そのジョブが一時停止されていることを示します。
w (待機中) – 重要なリソースまたは指定された条件を待つためにジョブが一時停止されたことを示します。
これらの状態については、qstat のマニュアルページを参照してください。また、『N1 Grid Engine ユーザーズガイド』の「ジョブとキューの監視と制御」も参照してください。
ID – ジョブ ID は一意の識別情報であり、「ジョブの詳細」ページにアクセスする手段でもあります。
名前 – ジョブの名前です。ジョブに名前を割り当てると、ジョブ ID だけを使用するよりもわかりやすく、追跡が容易になります。
チケット – ジョブのチケットの合計数です。ジョブに割り当てられているチケット数が多いほど、ジョブの優先順位が高くなります。この値は、標準化される前の「生の」値です。
優先指定– 優先指定チケット数です。優先指定チケットを割り当てることで、緊急度ポリシーの優先度の割り当てに影響を与えずに権利を変更できます。
Func – 機能チケット数です。
ツリー – 共有ツリーのチケット数です。共有ツリーは、ユーザーとプロジェクト、およびユーザーとプロジェクトから構成される任意のグループ階層の長期的なリソースの権利を定義します。
POSIX – POSIX の優先度です。この機能によって、ジョブの優先順位を上げることができます。この値は、標準化される前の「生の」値です。
緊急度 – 期限、待機時間、およびリソース要件から構成される、ジョブの合計緊急度です。この値は、標準化される前の「生の」値です。
リソース – 緊急度に寄与するリソース条件です。
待機 – 緊急度に寄与する待機時間です。
Ddln – 緊急度に寄与する期限です。
タスク – 現在実行中のタスクです。一部のジョブは、単一のタスクで構成されます。この場合、タスク ID は常に 1 です。並列ジョブや配列ジョブはそれぞれ複数のタスクで構成されます。タスクは通常、1 から昇順で番号が付けられます。ジョブの送信方法によっては、1、3、5、のように番号がとばされる場合もあります。ジョブの実行時には、各タスクは別々に実行されるため、別個の構成情報、環境、およびトレースがあります。タスク番号をクリックすると、タスクに関する詳細情報が「Task Details」ページに表示されます。
チケット、POSIX、および緊急度の標準化された値は「ジョブ」の「使用状況」タブで確認できます。
各列の意味については、qmon のマニュアルページを参照してください。
特定のジョブ表示のタブでジョブ ID を選択すると、そのジョブに関する詳細情報を表示できます。表示される「ジョブの詳細」ページでは、情報が次の 3 つの表で表示されます。「ステータスの概要」、「使用状況の詳細」、および「スケジュールの詳細」。
「ステータスの概要」表には、ジョブ環境、リソース要求、送信オプションなどに関連するさまざまなプロパティーの詳細情報が表示されます。
「使用状況の詳細」表には、そのジョブの現在のリソース使用状況が表示されます。たとえばジョブが開始されたばかりであるか、ジョブが保留中のため、この情報がない場合は、この表は空になります。複数のタスクがあるジョブについては、各タスクの使用状況が別個の行に表示されます。
「スケジュールの詳細」表には、そのジョブのスケジュール情報が表示されます。
このページのほとんどのフィールドは参照すればわかる内容になっています。詳細は、qstat のマニュアルページを参照してください。
「Task Details」ページでは、選択したタスクに関する詳細情報が 4 つの表に表示されます。3 つのジョブ表示のタブに表示される各タスクに関する情報がこの 1 ページに表示されます。このページ内の情報はすべて、問題が発生しているジョブの診断に役立ちます。
「Task Details」ページの各表の情報は、ジョブのスプールディレクトリ内の異なるファイルに対応しています。ジョブのスプールディレクトリ内の情報については、『N1 Grid Engine 6 管理ガイド』を参照してください。次の表があります。
タスクの概要
構成
環境
トレース
「タスクの概要」表には、ジョブのタスクに関する基本的な情報が表示されます。
グループ ID の追加 — ジョブの制御と監視に使用されている追加グループ ID を1 行で示します。
PE ホストファイル — 並列ジョブのホストの設定を示すファイルです。各関連ホスト、ジョブがスプールされているキュー、およびホストあたりの予約スロット (タスク) 数が含まれます。
エラー — ジョブの開始時に重大なエラーが発生した場合のエラーメッセージが含まれます。たとえば、「Execd cannot start shepherd」。
シェファーディング PID — shepherd のプロセス ID です。
ジョブ PID — ジョブ (shepherd の子プロセス) のプロセス ID です。
終了ステータス — ジョブの数値の終了コードを 1 行で示します。