阿里雲容器服務助力萬興科技 AIGC 應用加速

2023 年堪稱是 AIGC 元年,文生圖領域誕生了 Stable Diffusion 項目,文生文領域誕生了 GPT 家族。一時間風起雲湧,國內外許多企業投身 AIGC 創新浪潮,各大雲廠商緊隨其後紛紛推出自己的大語言模型。在文生圖領域落地的企業更多,國外的如 Midjourney,國內的如 AIGC 軟件公司萬興科技等。

萬興科技今年推出了系列創新 AIGC 應用,相關產品發佈後吸引了大量終端用戶“嚐鮮”,急需大量資源滿足日益增長的用戶需求。萬興科技將業務進一步部署到雲上,利用雲的彈性能力平衡資源和成本。同時,萬興科技借力阿里雲容器服務 ACK 和鏡像服務企業版 ACR EE,進一步提升用戶體驗。Kubernetes 是企業雲上管理資源的最佳選擇,具有很強的應用編排能力,可靠性及彈性。

AIGC 類應用容器化挑戰

AIGC 類應用相比於傳統的在線應用有比較明顯的特徵,鏡像大、冷啓動時間長。

  • 鏡像大

AIGC 應用大多采用 nvidia/cuda 作爲基礎鏡像,並安裝 Tensorflow、Pytorch、Transformer 等框架,應用鏡像往往有十幾 GB。鏡像拉取是容器啓動必不可少的一環,主要包括下載、解壓等步驟,會帶來網絡帶寬開銷和磁盤的二次寫入。隨着鏡像大小和節點規模的增加,存儲網絡下載帶寬逐漸成爲性能瓶頸,緩慢的鏡像拉取速度會嚴重影響容器部署效率和成功率。

  • 冷啓動時間長

應用冷啓動時間由兩個部分組成,Pod 啓動時間及 Pod 啓動後應用初始化時間。AIGC 類應用這兩個時間都很長。鏡像大導致 Pod 的鏡像拉取時間長。應用啓動後首先需要將模型加載到內存中然後纔可以對外提供服務。以 stable diffusion 的 v1-5-pruned.safetensors 模型爲例,模型有 7.7GB,從雲盤加載到內存中大概需要 25s。AIGC 應用的冷啓動時間從幾十秒到幾十分鐘不等,如採用 HPA 擴容策略會存在明顯的滯後性,導致業務受損。

爲解決上述問題,阿里雲推出了容器鏡像服務(ACR)加速方案及容器服務 Kubernetes 版(ACK)智能彈性 AHPA 方案。

阿里雲容器服務助力萬興科技 AIGC 應用加速

ACR 企業版爲 AIGC 應用鏡像加速

鏡像加速方案分兩部分:

鏡像緩存

運行 Pod 前首先需要拉取鏡像,鏡像拉取耗時已經成爲容器啓動的主要耗時。ACK Serverless 集羣裏,首次拉取的鏡像會自動製作鏡像緩存,第二次創建 Pod 時會基於該快照來創建,避免或者減少鏡像層的下載,從而提升 Pod 的創建速度。鏡像緩存是根據鏡像地址嚴格匹配的,當鏡像有更新時需要更新鏡像緩存。

詳情請參考文檔鏡像緩存概述[1]

P2P 鏡像加速

當大規模容器集羣批量下載鏡像時,容器鏡像存儲的網絡帶寬會成爲性能瓶頸,導致鏡像拉取緩慢。P2P 加速功能利用您計算節點的帶寬資源,進行節點之間鏡像分發,減少對容器鏡像存儲的壓力,可以大幅提升鏡像拉取速度,減少應用部署時間。

詳情請參考文檔使用 P2P 加速概述[2]

萬興科技採用的方案將這兩個能力結合在一起,將不常變化的基礎鏡像做鏡像緩存,經常更新的鏡像層採用 P2P 加速拉取,效果非常明顯:一般 20G 的鏡像拉取速度從 20min 左右加速到 30s 以內,而且同時擴容的 Pod 數量越多,加速效果越明顯。

ACK AHPA 輕鬆解決彈性滯後問題

在雲原生場景下,資源容量通常難以預估,而使用 K8s 原生的 HPA 需要面對彈性滯後以及配置複雜問題。阿里雲容器服務與達摩院決策智能時序團隊合作推出了 AHPA 彈性預測,可以根據業務歷史指標,自動識別彈性週期並對容量進行預測,提前進行彈性規劃,解決彈性滯後的問題。

AHPA 會根據歷史 Pod 的 Ready Time 以及歷史 Metrics 自動學習規律,在業務量上漲之前的一個 Ready Time 開始擴容。當業務量上漲時 Pod 已提前準備,可以及時供給資源。

詳細介紹可參考文檔 AHPA 概述[3]

萬興科技在使用 AHPA 後,在成本基本沒有變化的情況下,極大地縮短了用戶端的等待時間,可以從下圖看出,接入 AHPA 後基本上沒有任務堆積了。

綜上,AIGC 類應用與傳統應用相比,具有鏡像大、冷啓動時間長等明顯特徵。阿里雲容器服務推出的鏡像緩存、P2P 鏡像加速及 ACK AHPA 彈性預測能力可以有效解決這些問題。

鏡像緩存可以基於快照創建 Pod,避免或減少鏡像層的拉取;P2P 鏡像加速技術利用計算節點的內網帶寬資源,在節點之間分發鏡像,避免從數據源拉取,加速應用部署;AHPA 基於 RobustScaler 算法根據歷史 Pod Ready 時間訓練模型,提前擴容,減少冷啓動時間。

相關鏈接:

[1] 鏡像緩存概述

https://help.aliyun.com/zh/eci/user-guide/overview-of-image-caches-1/

[2] 使用 P2P 加速概述

https://help.aliyun.com/zh/acr/user-guide/use-p2p-acceleration-1?spm=a2c4g.750001.0.i1

[3] AHPA 概述

https://help.aliyun.com/zh/ack/ack-managed-and-ack-dedicated/user-guide/ahpa-overview-1?spm=a2c4g.750001.0.i1

原文鏈接

本文爲阿里雲原創內容,未經允許不得轉載。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章