OpenAI 深度學習基礎設施與 Kubernetes-EC2 自動擴縮器

OpenAI 宣布了其深度學習基礎設施方法,並釋出 Kubernetes‑EC2 自動擴縮器,以實現對突發 GPU 工作負載的快速擴展。

基礎設施支援完整的深度學習研究循環

OpenAI 的基礎設施旨在讓研究人員能夠快速從單一 GPU 的臨時實驗,轉向大規模、需多天訓練的工作。

範例工作流程:從 GAN 構想到 ImageNet 擴展

典型的專案從單一 GPU 的快速原型開發開始,之後擴展至在大型資料集(如 ImageNet)上使用多 GPU 訓練,這需要謹慎的實驗管理與超參數掃描。

軟體、硬體與佈署選擇

OpenAI 使用 TensorFlow、結合 AWS EC2 實例與本地 Titan X GPU、Terraform 以確保伺服器配置一致,並以 Kubernetes 作為跨三個 AWS 區域的叢集排程器。

編排使本地與分散式工作感受相似

SSH 節點提供互動式除錯,而 Kubernetes 在 Docker 容器中執行工作;平台公開 Flannel 網路,使研究人員能直接從筆記型電腦存取 TensorBoard,無需為每個埠建立 Service。

Kubernetes‑EC2 自動擴縮器處理突發需求

自動擴縮器作為普通 Pod 執行,輪詢 Kubernetes master 以計算所需容量,調整 Auto Scaling 群組大小,於終止前排空節點,處理多個 ASG、GPU 與記憶體資源,並在容量上限時溢寫至次要 AWS 區域。

對研究人員的影響

透過提供簡易介面與自動化擴展,基礎設施讓深度學習團隊專注於科學迭代而非叢集管理,且開源的自動擴縮器將相同的批次最佳化擴展能力提供給更廣大的社群。

Sources