云原生 AI 前沿:Kubeflow Training Operator 统一云上 AI 训练

本文探讨了Kubeflow Training Operator如何通过All-in-One方案解决Kubeflow训练Operators的问题,旨在提供统一的分布式训练体验。目前,多个operator已合并到tf-operator,用户在即将发布的Kubeflow 1.4中可用。未来,将关注提高灵活性、增强与其他组件的交互和提升稳定性。
摘要由CSDN通过智能技术生成

分布式训练与 Kubeflow

当开发者想要讲深度学习的分布式训练搬上 Kubernetes 集群时,首先想到的往往就是 Kubeflow 社区中形形色色的 operators,如 tf-operator、mpi-operator。

这些服务于各种深度学习训练(TensorFlow、PyTorch、MXNet 等)的 operators 主要的工作包括

  1. 在 Kubernetes 集群上创建 Pod 以拉起各个训练进程
  2. 配置用作服务发现的信息(如 TF_CONFIG)以及创建相关 Kubernetes 资源(如 Service)
  3. 监控并更新整个任务的状态

事实上,Kubeflow 的训练 Operators 已经成为在 Kubernetes 上运行分布式训练任务的实际标准

不仅各大公有云厂商都已经基本收录或集成了 Kubeflow 的训练 operators,社区上其他与深度学习训练相关的项目(如用以自动机器学习的 Katib,又如提供自动化编排功能的 Flyte)都对接了 Kubeflow 中的 operators 作为下发创建分布式训练任务的工具。

Kubeflow Operators 的问题

在 2019 年初,Kubeflow 社区启动了 kubeflow/common 项目用以维护 operator 之间重复使用的部分代码。经过一年多的迭代和重构,在 2020 年中该项目逐渐稳定并开始接入训练 operator 。当前,tf-operator、mxnet-operator 和 xgboost-operator 即为构建在 kubeflow/common 项目之上的训练 operators。

然而,整个 Kubeflow 训练 operators 的项目维护依然存在许多挑战。

主要包括

  1. 大量开发者的精力耗费在针对不同训练框架的功能增强和故障修复上
  2. 难以将测试和发布的基础功能与服务在不同 operators 之间复用
  3. 第三方组件需要对接大量不同的 operators
  4. 新的训练框架需要开发完整的对应的 operator 才能使用,开发成本过高
  5. 众多的 operators 对刚刚接触 Kubeflow
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值