《火山引擎:云原生機器學習系統落地和實踐(2023)(20頁).pdf》由會員分享,可在線閱讀,更多相關《火山引擎:云原生機器學習系統落地和實踐(2023)(20頁).pdf(20頁珍藏版)》請在三個皮匠報告上搜索。
1、2023/3/271云原生機器學習系統落地與實踐郭海青火山引擎高級工程師22.云原生機器學習系統3.GPU 利用率提升實踐1.背景介紹2背景介紹在線推理服務圖片區域推薦/廣告/搜索核心服務、CV/NLP/Speech 等算法服務負載特性:延遲、效果并重NUMA 綁定,異構設備支持;波峰波谷規律明顯離線訓練:PS-Worker 架構圖片區域推廣搜億級用戶和 item 特征基礎介紹:PS 存儲模型參數;Worker 計算更新梯度;負載特性:PS 要求 Gang 性,需要保證高優資源,對穩定性要求較高,單個異常需要進行 failoverWorker 容忍部分異常,慢 worker會導致 離線訓練:R
2、ing AllReduce 架構圖片區域常見 CV/NLP/Speech 架構基礎介紹:無中心節點,worker 有序成環,互相交換梯度負載特性:Worker 資源要求同質化;網絡帶寬大,必須考慮網絡拓撲的親和性;Worker 理論上具備故障容忍和彈性能力,故障/彈性需要感知通訊拓撲的更新7云原生化的動機統一在離線編排調度體系,在此基礎上去實現資源池化,提高資源流轉效率和利用率;利用 K8s 強大的抽象能力和優秀的擴展性去滿足需求迭代,提高用戶體驗;7云原生機器學習系統9云原生機器學習系統Godel:在離線統一調度圖片區域超大規模集群調度Dispatcher 調度任務分發Scheduler 實
3、際調度和搶占Binder 解決調度沖突離線場景調度支持Gang 調度BinPacking優先級搶占Godel:在離線統一調度圖片區域圖片區域網絡拓撲調度:同 podGroup 的 pods 調度相同的網絡域中微拓撲調度:CPU、Memory、GPU 具有 Numa 親和性;調度器根據拓撲信息進行節點綁定Katalyst:資源管控系統圖片區域Katalyst Agent:資源收集和上報、單機驅逐管理CNR 存儲 NodeTopo 等信息QRM Plugins 實現 CPU、Memory 等資源管控下發SysAdvisor:單機 Qos Aware 算法組件Katalyst:資源管控系統圖片區域Q
4、oS:dedicated_cores:獨占 cpuset,可支持 numa bindingshared_cores:共享 cpuset,可切分不同 poolreclaimed_cores:超發算力13GPU 利用率提升實踐在線 GPU 共享圖片區域在離線通過 MPS+Bytecuda 進行GPU 共享實現 share GPU device plugin通過 MPS 實現 GPU spatial sharingBytecuda 劫持 cuda API 實現 timesharing 和 memory 在線 GPU 共享圖片區域Bytecuda 監控顯存使用情況并保證其在請求的 quota 之內Bytecuda 可以控制 kernel launch,類似 CPU GPU 常態混部在離線一體的彈性并池圖片區域在線 HPA 通過服務利用率擴縮容副本,空閑資源通過 virtual kubelet 接入進群AutoScaler:監控潮汐資源情況,控制訓練任務的擴縮策略Operator:調整 replicas 數量,更新通信拓撲信息Horovod Elastic/Torch Elastic:彈性訓練框架未來展望19池化精細化在離線 GPU 并池靈活高效的拆借統一聯邦精細化調度,減少碎片動態、靈活的scaling 機制