Primus分布式訓(xùn)練調(diào)度框架
Primus 是一個(gè)用于機(jī)器學(xué)習(xí)應(yīng)用程序的通用分布式訓(xùn)練調(diào)度框架,管理機(jī)器學(xué)習(xí)框架(如 Tensorflow、Pytorch)的訓(xùn)練生命周期和數(shù)據(jù)分布,幫助訓(xùn)練框架獲得更好的分布式能力。
功能
-
多訓(xùn)練框架支持:Tensorflow、PyTorch、Monolith 等;
-
多調(diào)度器支持:YARN、Kubernetes 等;
-
多角色支持:如 PS-Chief-CPU、Worker-GPU、Worker-Evaluator 等,并支持多角色之間的親和反親和等特殊調(diào)度策略;
-
多編排策略:支持同時(shí)啟動(dòng),逐個(gè)啟動(dòng),基于角色的按順序啟動(dòng)等(如先啟動(dòng) PS,再啟動(dòng) Worker);
-
容錯(cuò)處理:Worker 失敗自動(dòng)拉起新 Worker,PS 失敗整體失??;
-
動(dòng)態(tài)調(diào)度:例如支持動(dòng)態(tài)擴(kuò)大縮小 Worker 數(shù);
-
多數(shù)據(jù)源數(shù)據(jù)類(lèi)型支持:HDFS、Kafka 等;
-
數(shù)據(jù)負(fù)載均衡與狀態(tài)保存:支持按 Worker 負(fù)載動(dòng)態(tài)分配 Task,如在 Worker 失敗時(shí)支持回收 Task 并進(jìn)行重新分配;
-
多線(xiàn)程高速數(shù)據(jù)讀?。褐С侄嗑€(xiàn)程讀取 HDFS 和 Kafka 后輸出到訓(xùn)練器,提高單訓(xùn)練器的吞吐。
架構(gòu)
