跳到主要內容
AI News HubLIVE
站內改寫2 分鐘閱讀

AWS 推出 SOCI 索引映象,加速 SageMaker AI 作業啟動

文章摘要

AWS 為 SageMaker AI 訓練和處理作業推出 SOCI 索引映象,透過懶載入將容器映象下載移出關鍵路徑,容器啟動時間從數分鐘縮短至數秒,且無需修改作業定義。

來源AWS Machine Learning Blog作者: Kanwaljit Khurmi
AWS 推出 SOCI 索引映象,加速 SageMaker AI 作業啟動
回報錯誤

更正管道尚未開通,可先複製下方文章資訊留存。

查看更正說明
直接讀正文

AWS 近日宣佈為 Amazon SageMaker AI 訓練和處理作業提供 Seekable OCI(SOCI)索引支援,旨在消除容器映象完整下載帶來的啟動延遲。對於深度學習容器映象,下載往往需要數分鐘,這段時間不僅計費,還拖慢了模型迭代速度。SOCI 索引透過懶載入機制,僅獲取啟動容器所需的檔案,其餘部分在程式碼執行時後臺流式傳輸,從而將作業啟動時間從分鐘級降至秒級。

SOCI 是一種開源技術,其索引作為後設資料對映映象內所有檔案,並以 OCI 相容工件的形式儲存在 Amazon ECR 中,與原始映象關聯但獨立存在,因此映象摘要和現有簽名不受影響。當使用者建立 SageMaker AI 作業時,服務會自動檢查映象是否帶有 SOCI 索引:若有,則懶載入;若無,則標準下載;若索引無法讀取或懶載入失敗,則回退到標準下載,確保作業始終能執行。

在基準測試中,AWS 對比了標準下載與 SOCI 懶載入在多種映象大小(1.8 GB 至 35.4 GB)和例項型別(如 ml.g4dn、ml.g5、ml.p4d、ml.p5 等)上的表現。結果顯示,標準下載時間隨映象增大而線性增長,從 48 秒到 7 分 17 秒不等,而懶載入始終保持在 3 至 11 秒,提升約 8 至 46 倍。對於 13.2 GB 映象,在 13 種例項配置上標準下載需 3 分 16 秒至 4 分 20 秒,懶載入僅需 6 至 8 秒,約 34 倍加速,且不受例項型別和大小影響。

訓練效能方面,從第二個 epoch 開始,懶載入映象與標準下載映象的 epoch 時間相同(在執行間波動範圍內)。首個 epoch 因需獲取框架首次訪問的檔案,會多出 3 至 16 秒,但每個作業總體仍提前 1 至 6 分鐘完成。對於啟動時讀取大量映象內容的場景,如 torch.compile、JIT 編譯 CUDA 擴充套件或載入內建大模型,首個 epoch 開銷會增加,但淨節省仍為正,作業整體提前 2 至 3.5 分鐘完成。

採用 SOCI 索引有兩種方式:一是使用預索引的 AWS 深度學習容器(DLC),這些映象標籤帶有 -soci 字尾,覆蓋 PyTorch、TensorFlow、vLLM 和 SGLang 等框架;二是為自己的自定義映象建立索引。建立索引需要在 Linux 主機上安裝 containerd、SOCI snapshotter 及 nerdctl 或 Finch 等工具,透過 nerdctl image convert --soci 命令生成索引並推送至 ECR。使用者還可透過部署 CFN ECR SOCI Index Builder 在 CI/CD 中自動構建索引。

使用索引映象時,只需在作業定義中引用帶有 -soci 標籤的映象即可,無需更改 API 或作業配置。使用者可透過 aws ecr batch-get-image 命令驗證映象是否包含 SOCI 索引。需要注意的是,該功能僅適用於 Amazon ECR 私有倉庫中的映象,其他倉庫或透過私有 Docker 登錄檔拉取的映象不適用;映象越小,提升幅度越有限,小於約 4 GB 的映象收益相對較小。

展開要點與分析

文章情報

投資人進階

要點

  • SOCI 索引使 SageMaker AI 懶載入容器映象,僅獲取啟動所需檔案,其餘後臺流式傳輸。
  • 基準測試顯示,下載時間在不同映象大小和例項型別上提升 8 至 46 倍。
  • 訓練效能基本不受影響,僅首個 epoch 有 3-16 秒額外開銷,但每個作業淨節省 1-6 分鐘。
  • 使用者可透過預索引的 AWS 深度學習容器或為自己的映象建立索引來採用,無需更改作業定義。

要點與分析由自動化流程生成,可能有誤,請結合原始來源核實。