在規模夠大的 GPU 叢集中,故障是不可避免的現實。傳統的解決方案是回到上一個檢查點,重新計算從那之後的所有工作,這既緩慢又昂貴。https://clockwork.io/ 希望讓這種做法成為過去,並願意為此提供保證。

Clockwork 防止故障中斷訓練運行的核心是 TorchPass,這是 Clockwork 的容錯產品,已於 3 月正式上市。當 GPU 或整個節點發生故障時,TorchPass 可將訓練任務的記憶體狀態(包含模型權重、梯度與最佳化器狀態)移至健康的備援 GPU——或正在執行低優先順序任務的 GPU——並讓任務繼續執行,通常只需幾分鐘即可恢復。

本週三,該公司推出 YOCO Guarantee,意為「You Only Compute Once」(你只需計算一次)。公司保證,支援的訓練任務中 90% 的故障將在無任何進度損失、無檢查點回滾且無需重新計算的情況下解決。若 Clockwork 在合約年度內未能達到此標準,客戶可獲得下次續約或擴展 25% 的折抵。

「AI 團隊需要的是模型完成,而不是節點保持運作。」——Clockwork 執行長 Suresh Vasudevan

Suresh Vasudevan 表示:「AI 團隊需要的是模型完成,而不是節點保持運作。產業一直以節點運作時間來衡量可靠性。YOCO 讓我們對唯一重要的事負責——你的模型完成。」

TorchPass 與 TorchFT 比較。圖片來源:Clockwork。

即時移轉而非回滾

Clockwork 業務長兼共同創辦人 Dan Zheng 向 The New Stack 說明目前的現況:「如果定期建立檢查點,當發生故障時,你必須回到上一個檢查點,可能是一小時或兩小時前,然後重新計算。」

這些重新計算的工作當然不是免費的。團隊必須支付昂貴的 GPU 時間來重做已經完成的工作。

TorchPass 透過在任務仍在運行時進行移轉,避開這些回滾。「從高層次來看,我喜歡把它想像成 vMotion,但這是針對 GPU 的版本,可以說是 gMotion,」Zheng 說道,vMotion 是 VMware 用來描述在不中斷的情況下將執行中的虛擬機器移轉到不同實體主機的術語。

但這個替代方案當然必須從某處取得。「如果其中一個 GPU 發生故障,而你有備援節點可用,這可以是待命節點,也可以是正在執行低優先順序任務的節點,」Zheng 表示。

團隊可以保留閒置節點作為專用備援,或是為了避免支付閒置 GPU 費用,讓 TorchPass 從低優先順序的工作中取得一個節點,關閉該任務、將節點加入訓練叢集,並重建 GPU 之間的連線,讓運行從下一個步驟繼續,而非回到上一個檢查點。

TorchPass 也不必等到故障發生。它可以在出現警示跡象時,提前移轉任務。「如果溫度超過某個閾值,你就知道 GPU 即將發生故障,」Zheng 說。「為什麼不在你還有 GPU 記憶體存取權限時就採取行動?」

圖片來源:Clockwork。

如何啟用 TorchPass

TorchPass 提供兩種模式,主要差異在於需要移轉的狀態量以及因此能達到的恢復速度。

快速選項是模型感知模式,Zheng 描述只需額外加入幾行程式碼即可。這讓 TorchPass 能精準知道要擷取哪些資料,因此移轉的資料量較少,恢復時間只需數十秒。

另一種是團隊所稱的「模型透明」模式。使用此模式時,訓練團隊無需修改訓練程式碼。「我們可以取得系統層級的快照,」Zheng 表示。這是使用 TorchPass 的較簡單方式,但相對地需要移轉更多資料,恢復時間約需數分鐘。

不過,突然當機仍然是個問題。畢竟 TorchPass 無法對已經失效的節點進行快照。在這種情況下,Clockwork 表示會從任務已執行的健康資料平行副本(原本就為了平行處理而存在的複本)重建遺失工作者的狀態。

TorchPass 也有其限制,Zheng 也承認這點。「如果整個網路都當機,那也無能為力,」他說。「就像電力完全中斷——任何人也無能為力。」

失敗運行的真正成本

在大規模環境中,故障並非罕見事件。Meta 的 FAIR 團隊研究(被 Clockwork 的公告引用)指出,1,024 個 GPU 的叢集平均故障間隔為 7.9 小時;當規模達到 16,384 個 GPU 時,則降至 1.8 小時。Clockwork 表示,結果是 GPU 叢集實際上只能達到理論效能的 30% 至 50%。但團隊認為,硬體並非瓶頸,而是可靠性模型假設故障比這些叢集實際遇到的情況少得多。

Clockwork 估計,在典型的 2,048 個 H200 GPU 部署中,故障導致的重啟每年浪費超過 600 萬美元的運算資源。

「不是為 Anthropic 和 OpenAI 而設計」

「這個解決方案不是為 Anthropic 和 OpenAI 設計的,因為他們有足夠的工程團隊,」Zheng 說。「也不是為 Google 設計的。它是為其他人設計的。」他指的是那些想要他所稱的「前沿 AI 實驗室級別的韌性」,卻不想自己打造的 AI 原生新創公司、企業、量化交易與生技公司。

隨著工作從預訓練轉向後訓練與強化學習,這個市場正在成長,這讓更多團隊需要執行大型訓練任務。Clockwork 表示,目前客戶已包括新興雲端業者 Nebius、Nscale 與 WhiteFiber,以及 DCAI 與 Uber、Wells Fargo 等企業。

認知度仍在追趕中。「我們接觸的許多人都已經習慣檢查點重啟,他們甚至不知道還有其他選擇,」Zheng 說。

測試結果

Clockwork 表示,最常見的替代方案就是現狀:團隊頻繁建立檢查點,當發生故障時就接受重新計算的成本。

另一個選擇是 Meta 於 2024 年底釋出的開源框架 TorchFT,它透過在 GPU 故障時捨棄整個副本群組來維持任務運行,直到替換完成。Clockwork 表示,這種方法即使在沒有故障時也會產生每步驟的開銷,而該公司將 TorchPass 定位為更輕量級的選擇,適用於數百至數千個 GPU 的中型任務,這些任務的故障不會每隔幾分鐘就發生。

SemiAnalysis 對 TorchPass 進行了獨立基準測試。

「廠商在投影片上說產品有效,與將它寫進合約,是有很大差別的,」SemiAnalysis 技術人員兼 ClusterMAX 基準測試主要作者 Jordan Nanos 表示。「在我們的測試中,TorchPass 在 64 個 H200 GPU 叢集上執行 GPT-OSS-120B 訓練任務時,無論是任務完成時間還是與檢查點重啟相比,都提供了最快且最高效的容錯效能。TorchPass 在 MFU 與 tokens/sec/GPU 方面也優於 TorchFT,同時恢復時間與之相當。YOCO Guarantee 正是反映了我們在測試中看到的結果,並將其納入合約。」

將可靠性作為軟體層

「我喜歡回想我在 Google 的早期日子,例如 Google File System,」Zheng 說。「你使用的是商用硬碟,但從開發者的角度來看,你希望寫入一次就能確保資料持久化。你不在乎資料中心是否需要更換硬碟。」

「我們也需要在軟體層面擁有這樣的韌性層,」他說,「讓開發者或 AI 研究人員有更高的信心。你只需專注於訓練,不必擔心基礎設施。」

可觀測性

Clockwork 最初是從一個與目前方向截然不同的專案誕生:同步伺服器時鐘。但因為這也涉及對伺服器之間延遲的極精確測量,團隊意識到可以從中學到許多關於叢集的資訊。公司從此擴展這項能力,值得注意的是,可觀測性仍是 Clockwork 核心業務的一部分。

Zheng 表示,TorchPass 與 Clockwork 的監控工具是相輔相成的。「它與 TorchPass 相輔相成,如果你發現問題,就可以進行移轉,」他說。

該公司許多新工作實際上都投入在可觀測性上。Zheng 表示,其叢集監控工具現在可以追蹤到特定連結或交換器的網路結構問題,Clockwork 正在與幾家大型雲端業者試用這項功能。他說,如果能及早發現正在劣化的 GPU 或壅塞的連結,TorchPass 就可以在故障發生前移轉任務。

YOUTUBE.COM/THENEWSTACK

科技發展迅速,別錯過任何一集。訂閱我們的 YouTube 頻道,收看所有播客、訪談、示範等內容。

Group Created with Sketch.