トレーニングジョブを送信した後、その基本情報、設定、イベント、リソースメトリクス、ログを確認して、実行の全体像を把握できます。ジョブ名または ID で検索することで、実行中のインスタンスと過去のインスタンスを素早く切り替えることができます。
基本情報と設定
-
PAI コンソールにログインします。上部メニューから対象のリージョンを選択し、右側で対象のワークスペースを選択します。次に、[Enter DLC] をクリックします。
-
対象のジョブの名前をクリックして、その概要ページを開きます。
-
Overview タブには、ジョブの基本情報、環境情報、リソース情報が表示されます。
ページの上部には、ジョブのステータス (例: Succeeded)、期間、コンピューティングタイプ (例: General-purpose computing)、ジョブタイプ (例: PyTorchJob)、リソースグループが、作成から完了までの各フェーズのタイムラインとともに表示されます。基本情報には、ジョブ名、ジョブ ID、タグが含まれます。リソース情報には、リソースタイプ、ワーカー数、インスタンスタイプ (例:
ecs.gn7i-c8g1.2xlarge) が含まれます。環境情報には、ノードイメージの URL、データセットのマウント設定、実行コマンドが含まれます。このページには、[Fault Tolerance and Diagnosis] (自動フォールトトレランスとヘルスチェックのトグル付き)、[Network Information] (Virtual Private Cloud (VPC)、セキュリティグループ、vSwitch の詳細付き)、[Roles and Permissions] (インスタンス RAM ロールと可視性の詳細付き) などの設定セクションも含まれています。 -
ページ上部のジョブ名をクリックすると、ジョブのドロップダウンリストが開きます。リストの名前または ID によるファジー検索で、実行中のインスタンスと過去のインスタンスを素早く切り替えることができます。
ジョブイベント
イベントログには、ジョブのスケジューリングとリソース割り当ての進捗が記録されます。これらのイベントを使用して、問題を特定し、トラブルシューティングを行うことができます。
-
Event タブに切り替えて、ジョブのイベントログを表示します。
[Event] タブの左側にはイベントタイムラインが表示され、ジョブの作成、環境の準備、ジョブの実行、ジョブの完了などのステージと、それに対応する時間範囲が示されます。右側のイベントログパネルには、Job Queued、Dequeued、Pod Created、Service Created、Scheduled、Running、Succeeded など、PyTorchJob のライフサイクルイベントの詳細が表示されます。
-
Overview タブで、Instance セクションに移動します。インスタンスの Actions 列で Log をクリックし、System Log タブを選択して、ノード固有のイベントログを表示します。
システムログには、ステータスの変更 (ResourcePurchasing → NetworkInitializing → Initializing → ImagePulling → WaitingForRun → Running → Succeeded)、イメージのプル記録、コンテナの作成および起動イベントなど、Pod の完全なライフサイクルイベントが記録されます。
リソースメトリクス
主要なメトリクスには、GPU 使用率、GPU メモリ使用量、CPU 使用率、メモリ使用量、ネットワーク I/O が含まれます。これらのリソースメトリクスをリアルタイムで監視することにより、ジョブのリソース需要を把握し、使用率と消費量を追跡し、リソースの最適化を計画できます。
Monitoring タブに切り替えて、ジョブのリソースメトリクスを表示します。
リソースクォータを使用してトレーニングジョブを作成した場合、以下の監視機能も利用できます:
-
メトリクスは、[Job Dimension]、[Pod Dimension]、[GPU Dimension] ごとに利用できます。
監視ページの上部にはジョブのライフサイクルタイムラインが表示され、[Job Created]、[Queued]、[Preparing Environment]、[Running]、[Succeeded] などのステージと各ステージにかかった時間が示されます。タイムラインの下で、[Job Dimension]、[Pod Dimension]、[GPU Dimension] タブを切り替えて、対応するメトリクスを表示できます。[GPU Dimension] タブには、GPU 使用率と GPU メモリ使用量の折れ線グラフが表示されます。
-
時間やメトリクスタイプによるフィルタリング、メトリクスの分類など、インタラクティブな機能を使用できます。More をクリックしてメトリクスビューをカスタマイズし、メトリクスをソートします。DLC の監視ビューでは、メトリクスを選択して並べ替えることで、パーソナライズされたダッシュボードを作成できます。ビジネスニーズに基づいて重要業績評価指標 (KPI) を選択し、ドラッグアンドドロップで表示優先度を調整して、最も重要な項目に集中できます。
利用可能な GPU 監視メトリクスには、[GPU utilization]、[Total GPU Memory]、[GPU memory usage]、[GPU Memory Used]、[GPU Memory Interface Utilization]、[GPU Memory Bandwidth Usage]、[GPU SM Core Utilization]、[GPU Power Consumption]、[GPU Temperature] があります。目的のメトリクスを選択した後、右側の [Sort metrics] エリアでドラッグして表示順序を調整し、[OK] をクリックして設定を保存します。
-
DLC は、ジョブのリソースレベルをリアルタイムで追跡するための監視とアラートもサポートしています。詳細については、「トレーニングの監視とアラート」をご参照ください。
ジョブログ
ジョブが異常終了した場合や、実行履歴を確認する必要がある場合は、以下のいずれかの方法でジョブログを表示できます:
-
Overview タブで、Instance セクションに移動します。インスタンスの Actions 列で Log をクリックして、その特定のノードの出力ログを表示します。
-
Log タブに切り替えて、キーワードでログイベントを検索します。詳細については、「キーワードによる集計ログのクエリ」をご参照ください。以下にクエリ構文の簡単なヒントを示します:
- 基本クエリ: error: "error" を含むログを検索します。 - 複数単語クエリ: "Unexpected result": "Unexpected" と "result" の両方を含むログを検索します。 - ワイルドカードクエリ: error*: "error" で始まる単語を検索します。特殊文字はサポートされていません。 - フレーズクエリ: #"abc$def": "abc$def" という正確なフレーズに一致します。 区切り文字: ログは区切り文字で分割されます。キーワード内の区切り文字は null 文字として扱われます。区切り文字を含むコンテンツを検索するには、フレーズクエリを使用します。一般的な区切り文字には、\n\t\r,;[]{}()&^*#@~=<>/\?:'" があります。ログページでは、左側にインスタンスリストが表示され、右側に選択されたインスタンスのユーザーログが表示されます。この例では、トレーニングログはエポック 16 からエポック 18 までの検証結果を示しており、最終的な出力は
Model saved with accuracy: 98.96%となって、モデルのトレーニングが正常に完了したことがわかります。
監査ログ
PAI は ActionTrail と統合されています。ActionTrail で、お使いの Alibaba Cloud アカウントの過去 90 日間の DLC アクションイベントを表示および検索できます。詳細については、「ActionTrail」をご参照ください。
再起動レコード
ジョブの作成時に [Auto Fault Tolerance] または [Health Check] (ブロックリストと再実行) を有効にした場合、[Restart Count] をクリックして再起動レコードページに移動できます。このページには、再起動回数、再起動時刻、再起動理由、再起動結果、再起動期間などの再起動に関する情報が表示されます。
-
再起動レコードのリストで [Error Details] をクリックすると、再起動回数、再起動時刻、ノード名、インスタンス名、エラーコード、エラーメッセージ、エラーソースなど、特定の再起動に関する詳細情報を表示できます。
-
[View Aggregated Error Details] をクリックすると、詳細を含む再起動レコードの完全なリストが表示されます。
関連ドキュメント
ジョブをステータスに基づいて管理できます。詳細については、「トレーニングジョブの管理」をご参照ください。