> [!abstract] 概要(abstract の日本語訳)
> HPC データセンターは現代のデジタル社会を支える基盤である。HPC データセンターでは、科学・ビジネス・その他の意思決定プロセスを支援するために、汎用の計算集約型ワークロードと並んで機械学習ジョブが実行されるようになっている。しかし、ML ジョブが HPC データセンターの運用に与える影響を汎用ジョブと比較して理解することは、依然として望まれているが十分に研究されていない。本研究では、国家規模の本番 HPC データセンターから収集した長期的な運用データを活用し、ML ジョブと汎用ジョブが HPC データセンターの性能・障害・資源利用・エネルギー消費にどのように影響するかを統計的に比較する。本研究は次のような重要な知見を提供する: ML に関連する電力使用により GPU ノードが温度制限に達する; ML ジョブは汎用ジョブより中央値・平均値のランタイムと障害率が高い; ML ジョブと汎用ジョブの双方が高度に変動する到着プロセスと資源需要を示す; 失敗により終了するジョブに多大なエネルギーが費やされている; 並行実行中のジョブは同じ状態で終了する傾向がある。我々はクリーニング済みデータトレースを Zenodo でオープンソース公開し、分析ツールキットをソフトウェアとして GitHub で提供する。本研究はデータセンター管理者に対して運用効率の改善、研究者に対してシステム設計・スケジューリング手法などのさらなる改善のための複数の利点をもたらす。
## 論文情報
- **タイトル**: Generic and ML Workloads in an HPC Datacenter: Node Energy, Job Failures, and Node-Job Analysis
- **著者**: Xiaoyu Chu(VU Amsterdam、等貢献), Daniel Hofstätter(TU Wien、等貢献), Shashikant Ilager(TU Wien), Sacheendra Talluri(VU Amsterdam), Duncan Kampert(SURF), Damian Podareanu(SURF), Dmitry Duplyakin(NREL), Ivona Brandic(TU Wien), Alexandru Iosup(VU Amsterdam)
- **所属**: Vrije Universiteit Amsterdam / TU Wien / SURF / NREL(National Renewable Energy Laboratory)
- **媒体**: IEEE ICPADS 2024(arXiv 投稿: 2024-09-13)
- **arXiv ID**: 2409.08949
- **DOI**: 10.1109/ICPADS60453.2024.00019(IEEE Xplore: 10763608)
- **データセット**: https://doi.org/10.5281/zenodo.13685426
- **コード**: https://github.com/atlarge-research/2024-icpads-hpc-workload-characterization
## 概要
国家規模の本番 HPC データセンター(SURF Lisa, 338 ノード, 21 ラック)から収集した約 9400 万タプル・100 指標の長期運用データを用いて、汎用ジョブと ML ジョブのワークロード特性を比較分析した研究だ。ジョブデータ(SLURM)・ノードデータ(Prometheus、30 秒間隔)・結合データセットの 3 層を統合し、ノード利用率・エネルギー消費・ジョブ障害の 3 軸と、ノード-ジョブ結合解析の 4 軸を横断的に測定した。11 の観察事項・3 の主要知見・3 の実用的指針が得られ、データセットとツールキットがオープンソースで公開されている。
## 問題設定
- **入力**: 国家規模の HPC データセンター(SURF Lisa)の長期運用ログ(ジョブデータ 10 ヶ月・ノードデータ 5 ヶ月)
- **出力**: 汎用ジョブと ML ジョブの定量的特性差異の統計的比較、実用的指針
- **前提**: SLURM スケジューラ、ライブラリ(torch, cuda 等)による ML/汎用分類、Prometheus 計装
- **課題背景**: 既存 HPC データセンター研究の多くは汎用ワークロードのみを対象とし、ML/汎用の比較やジョブ-ノード結合解析は不十分だった(表VI の関連研究一覧より)
## データセットと手法
### データ収集
3 種類のデータセットを収集・統合した(表III):
- **(a) ジョブデータ**: SLURM から取得。2021-12-26 〜 2022-11-01 の 10 ヶ月、9 指標、約 160 万行。ID・日付・ノード種別・コア数・終了状態を含む
- **(b) ノードデータ**: Prometheus から取得。2022-06-30 〜 2022-11-22 の 5 ヶ月、91 指標、約 1.28 億行(16 GB)。30 秒間隔
- **(c) 結合データセット**: (a) と (b) をジョブ実行期間内のノードデータとして結合。2022-06-30 〜 2022-11-01 の重複期間、100 指標、約 9400 万行(10 GB)
### クラスタ構成(表I, II)
| 種別 | ノード数 | CPU | GPU | GPU TDP |
|---|---|---|---|---|
| CPU のみ | 287 | 16 コア/CPU | なし | — |
| GPU | 51 | 2CPU × 24 コア | 4 基(TITAN RTX / GTX 1080 Ti) | 1,120 W |
| **合計** | **338** | — | **198** | **53,040 W** |
GPU ラック(10 ラック, 計 5 ノード/ラック)の CPU+GPU TDP は 6,650 W となり、ラック冷却容量 5,500 W を超過する構造的問題がある。
**Figure 2: データ統合プロセスの例**
![[_attachments/arxiv-2409.08949/fig03-node-utilization.png]]
(Fig. 2/Fig. 3 合成クロップ。ジョブデータと 30 秒間隔ノードデータを結合し、各ジョブに関連するノードメトリクスを紐づける。)
### 特性化手法
基本統計・時系列トレンド・確率密度関数(PDF)・累積分布関数(CDF)・Pearson 相関の 5 手法を組み合わせた。
## 主要知見と観察
### 主要知見 1: ノード利用率とエネルギー(§IV)
**観察 1**: CPU と GPU のメモリは双方とも低利用率。CPU メモリ平均は CPU のみノードで 10.3%、GPU ノードで 8.1%。GPU VRAM 平均は 18.7%。
**観察 2**: GPU 温度は頻繁に制限に達する。GPU 温度利用率が 90% 超えとなる時間は 17.4%。
**観察 3**: ノード内の GPU 位置によって同じ電力使用でも温度に最大 9% の差が生じる。GPU2(位置的に隣接)が 100% TDP 時に平均 88.00% であるのに対し、GPU1 は 78.74% である(図4)。物理的に隣接する GPU のファン吸気が互いに干渉し、熱循環効果が生じる。
**Main Finding 1: ノード利用最適化の指針** — CPU-GPU の不均衡を踏まえ、GPU ヘビーなワークロード向けに CPU 設定を調整し不均衡ノードを混合ジョブで活用する。GPU 性能向上には冷却の良い位置への優先割り当てが有効。
**Figure 1: 汎用 vs. ML ワークロード全体像**
![[_attachments/arxiv-2409.08949/fig01-generic-vs-ml-summary.png]]
(Fig. 1. 汎用 vs. ML のハードウェア・ワークロード全体比較。ML ジョブはノード数の 15%・投入件数の 9% を占めるが、エネルギー消費の 39% を担う。)
### 主要知見 2: ジョブ特性と障害(§V)
**観察 4**: 汎用・ML ジョブの到着と需要は高度に変動する。日単位の投入件数は双方とも 3 桁分の変動があり、汎用の日平均 4,522 件・ML 618 件。
**観察 5**: ML ジョブは平均ランタイム 2.71 時間・待機時間 1.84 時間で、汎用(0.83 時間・4.21 時間)と比べランタイムが長く待機が短い。中央値では ML の 6.48 分は汎用の 24 秒の約 16 倍。
**観察 6**: ML ジョブ障害には日内周期性(8〜17 時集中)があり、汎用ジョブ障害は不規則・突発的なパターンを示す(図7)。
**観察 7**: ML ジョブは最大 8 ノードだが、汎用ジョブは 1〜32 ノードを使用。双方とも 99% 以上が単一ノード。
**観察 8**: 汎用ジョブは平均 13.07 コアを使用するのに対し、ML ジョブは 6.81 コア。SLURM スケジューラが 24 コア GPU ノードから ML ジョブに 3 コアを割り当てる構成(図8)。
**Main Finding 2: ML ジョブスケジューリングの指針** — ML ジョブの長いランタイムを活かしたノード電源制御(洗練されたスケジューリング)と、小さいジョブサイズを活かした専用ネットワークトポロジ・配置アルゴリズムが有効。
### 主要知見 3: ジョブ-ノード結合解析(§VI)
**観察 9**: ML ジョブは投入件数 9%・ランタイム 17% に対しエネルギー消費 39% を占める(表V)。
**観察 10**: クラスタ全体のエネルギーの約 50% が失敗・タイムアウト・メモリ不足・ノード障害など未完了ジョブに消費される。ランタイムでのタイムアウト割合は汎用・ML 双方で 26〜27% にのぼる。
**Figure 9: ジョブ状態別エネルギー・ランタイム・投入件数の配分**
![[_attachments/arxiv-2409.08949/fig09-job-state-fractions.png]]
(Fig. 9. 汎用ジョブ(上)・ML ジョブ(下)の状態別内訳。投入件数の多数が完了であっても、ランタイムとエネルギーでは未完了ジョブが約 50% を占める。)
**観察 11**: 同一ノードで並行実行中のジョブは同じ終了状態になりやすい。NODE_FAIL 状態の Pearson 相関係数は汎用 0.94・ML 0.75 と最高水準。FAILED も汎用 0.74・ML 0.37 と高い。TIMEOUT と CANCELLED は汎用・ML とも 0.5 以上の相関。
**Figure 10: ジョブ終了状態の相関(高負荷時)**
![[_attachments/arxiv-2409.08949/fig10-job-exit-state-correlation.png]]
(Fig. 10. 高負荷時のジョブ終了状態相関ヒートマップ。汎用(左・青系)と ML(右・赤系)。対角成分(同一状態間相関)が高く、特に NODE_FAIL が極めて高い。)
**Main Finding 3: チェックポイントと障害予測の指針** — 失敗によるエネルギー無駄を減らすためにチェックポイントを活用する。ジョブ終了状態の相関を理解することで障害予測の改善が期待できる。
## 新規性
既存研究(表VI)と比較した本研究の独自性:
| 分析軸 | 本研究 | 多くの既存研究 |
|---|---|---|
| ML/汎用の分離 | 両者を明確に分離して比較 | 混在または汎用のみ |
| ジョブ-ノード結合解析 | 統合データセットで両者の相関を分析 | ジョブとノードを独立に分析 |
| エネルギー分析 | 未完了ジョブのエネルギー消費を定量化 | エネルギー分析なしが多数 |
| 障害分析 | ML と汎用の障害パターン差異を比較 | 障害分析なしが多数 |
| ジョブ状態相関 | 並行ジョブの終了状態相関を初報告 | 未分析 |
## 実験設定
- **対象データセンター**: SURF Lisa(オランダ国家規模 HPC)、338 ノード(CPU のみ 287 / GPU 51)
- **データ収集期間**: ジョブデータ 10 ヶ月(2021-12 〜 2022-11)、ノードデータ 5 ヶ月(2022-06 〜 2022-11)
- **ML/汎用分類**: XALT による利用ライブラリ追跡(torch, cuda 等)
- **分析手法**: 基本統計・PDF/CDF・Pearson 相関・ピーク検知(NODE_FAIL 相関で高負荷期間を抽出)
- **前処理**: 利用率の 99.99 パーセンタイルでクリッピング、30 秒未満のジョブ(< 0.1%)は結合データセットから自然に除外
## 実験結果(定量)
| 指標 | 汎用ジョブ | ML ジョブ |
|---|---|---|
| ノード数割合 | 85% | 15% |
| 投入件数割合 | 90.72% | 9.28% |
| ランタイム割合 | 83.18% | 16.82% |
| エネルギー消費割合 | 61.32% | **38.68%** |
| 中央値ランタイム | 24 秒 | 6.48 分(約 16 倍) |
| 平均ランタイム | 0.83 時間 | 2.71 時間 |
| 平均待機時間 | 4.21 時間 | 1.84 時間 |
| 平均利用コア数 | 13.07 | 6.81 |
| 障害率 | 14%(投入件数中) | 17%(投入件数中) |
| キャンセル率 | 4% | 13% |
| NODE_FAIL 状態相関 | 0.94 | 0.75 |
| FAILED 状態相関 | 0.74 | 0.37 |
GPU 温度の 90% 超え: 17.4% の時間。エネルギーの約 50% が未完了ジョブに消費。
## 考察
ML ジョブのエネルギー過消費は、GPU TDP が高く CPU を低利用するという非対称な資源構成に起因する。GPU 冷却限界に頻繁に達することはランタイムの実質的な低下(熱スロットリング)を意味し、資源効率をさらに悪化させる。
並行ジョブの状態相関(観察 11)は、ハードウェア障害や電力サージが複数ジョブに同時影響することを示している。プライバシー制約によりユーザー情報がないため「同一ユーザーによる同時投入」の仮説は検証できなかったが、NODE_FAIL の 0.94 という極めて高い相関はハードウェア起因と考えられる。
本研究の限界:
1. **一般化性**: 単一データセンターからの知見であり、他のシステムへの適用には注意が必要
2. **因果性**: 相関が認められるが、因果関係の確定には追加分析が必要
3. **ML ジョブ分類粒度**: ML ジョブをサブカテゴリ(科学ドメイン・ジョブ種別・成熟度)に分けると追加知見が得られる可能性
## 強み / 弱点・課題
### 強み
- データセット(Zenodo)とツールキット(GitHub)のオープンソース公開による再現性確保
- ジョブデータとノードデータの結合という既存研究に少ない分析軸
- ML/汎用を明確に分離した初の包括的比較(表VI)
- 実用的指針(Actionable Insight)を 3 点提示
### 弱点・課題
- 単一データセンター(SURF Lisa)のみの観察であり、エネルギー源・冷却設計・クラスタ規模が異なる施設への一般化は限定的
- ML ジョブをモノリシックに扱い、訓練 vs. 推論・科学ドメイン等のサブカテゴリ分析なし
- プライバシー制約によりユーザー情報を欠き、並行ジョブ相関の因果解明に限界
- GPU 世代が TITAN RTX / GTX 1080 Ti であり、A100/H100 等より新しい世代での追試が必要