High-Performance 運算 (HPC) 系統的設計訴求是處理大量數據,並以高速執行複雜的計算。 瞭解和測量其效能對於系統優化、採購決策以及確保應用程式符合效能需求至關重要。 本檔提供 HPC 效能概念和基準檢驗方法的完整概觀。
關鍵效能計量
瞭解用來測量 HPC 系統效能的基本計量對於有意義的系統評估和比較至關重要。 它們提供客觀的比較量值、找出系統瓶頸,進而啟用效能微調,並協助預測應用程式效能。 效能
HPC 系統的計算功能是透過各種計量來測量,以量化其執行計算和指示的能力。
- FLOPS (每秒Floating-Point 作業):測量系統的原始計算能力
- 尖峰效能:系統可達到的理論最大效能
- 持續效能:實際作業期間實現的實際效能
- IPS (每秒指令數):處理器執行指令的速率
基準檢驗類別
不同類型的基準檢驗在評估系統效能方面有各種用途,從測試特定元件到評估真實世界應用程式效能。
綜合基準檢驗 (測試特定系統元件或特性) |
應用程式效能評定 (真實世界應用程式或其 Proxy) |
核心基準測試 (應用程式的小、獨立部分) |
---|---|---|
STREAM (記憶體頻寬) | 氣象研究和預報 (WRF) | NAS 平行效能評定 |
Intel MPI 效能評定 (網路效能) | GROMACS (分子動態) | DOE CORAL 基準測試 |
LINPACK (密集線性代數) | NAMD (分子動態) | ECP Proxy 應用程式 |
HPCG (疏鬆線性代數) | MILC (量子色力學) |
效能分析方法
各種技術可用來收集詳細的效能數據,並識別 HPC 系統和應用程式中的瓶頸。 最常使用的方法是 分析 ,其中它會收集運行時間數據,以瞭解程式行為和資源使用率模式、 追蹤 方法,以擷取程式執行的詳細時態資訊,以及深入分析的系統行為。
剖析
- 以時間基礎分析:在定期的時間間隔中取樣程式計數器
- 事件型分析:收集硬體計數器數據
- 通訊分析:分析訊息模式和時間
- I/O 分析:測量文件系統效能
追踪
- 時間軸分析:記錄事件的時態行為
- 訊息追蹤:分析通訊模式
- 硬體計數器追蹤:隨時間記錄硬體事件
效能優化技術
這些策略有助於將系統效率和應用程式效能發揮到 HPC 系統的不同層面。 最有效的技術通常會結合這三個類別中的元素,建立平衡的優化策略,以考慮整個系統的效能特性。 成功通常來自識別這些技術最適合您特定應用程式和系統架構的組合。
基準檢驗的最佳做法
以下是建立基準檢驗做法,可確保可靠且可重現的效能測量。
方法論
- 定義明確的目標和計量
- 選擇代表性基準
- 確保測試條件一致
- 記錄所有測試參數
- 執行多個執行以取得統計有效性
要避免的常見陷阱
- 熱身期不足
- 編譯程式選項不一致
- 樣本大小不足
- 不切實際的輸入數據集
- 忽略系統變異性
報告要求
- 系統設定詳細資料'
- 軟體堆疊資訊
- 基準檢驗參數
- 原始結果和統計分析
- 環境條件
- 優化設定