OpenAI 超級運算基礎設施與後端系統工程

大規模超級運算:極端硬體密度的影響

OpenAI 運營的超級運算叢集規模龐大,常常揭露出第三方供應商此前未曾發現的硬體與軟體錯誤。由於模型訓練的同步特性,使得整個叢集的運行速度受限於最慢的節點,OpenAI 必須找出並解決在較小環境中可忽略的效能退化問題。

技術成果包括:

  • 核心與驅動程式貢獻:在 OpenAI 發現的效能優化常被上游合併至主線核心或納入新驅動程式發布中。
  • 計算效率:小幅程式碼變更(例如單行修正)即可帶來顯著節省,例如在整個叢集上每週減少約六天的計算時間。
  • 供應商合作:硬體供應商常透過 OpenAI 發現新問題,因為其部署在單一連續超級電腦中的硬體數量遠超過一般客戶的部署規模。

探索性 AI 工作流程的後端工程

OpenAI 的後端系統旨在支援快速且探索性的研究工作流程。研究人員常從近期的預印本(例如 arXiv)實作新方法,並需要一個不會妨礙他們快速測試理論的平台。

  • 瓶頸識別:預先了解研究需求以防止進度受阻,並對已識別的瓶頸實施快速的變通方案。
  • 複雜度管理:管理執行的「倒數第二層」,即在研究者的直覺設計與全球最大超級電腦的實體限制之間搭橋。
  • 系統可靠性:實作被動健康檢查機制,自動將異常硬體從叢集中移除,以維持穩定性。

高效能運算(HPC)專業領域

在 OpenAI 的 HPC 領域工作,需要管理在一般後端工程中常被忽視的低階系統細節。這些優化純粹源於大型 AI 訓練的效能需求。

  • 實體硬體拓撲:優化通訊,使其發生於相同的非統一記憶體存取(NUMA)領域內。
  • 直接資料傳輸:使用 Nvidia 的 GPUDirect,確保 GPU 使用同位置的 NVME 或 InfiniBand 裝置。
  • CPU 綁定:將系統行程綁定至特定 CPU,以避免與研究執行時產生的「噪音鄰居」衝突。
  • 網路穩定性:除錯高吞吐量問題,例如調查因以太網卡傳輸超過 30Gbps 而觸發的核心恐慌(kernel panic)。

Sources