新闻

NVIDIA 详细介绍了 Kubernetes 人工智能框架工作负载地图

NVIDIA 表示,工作负载地图提供了一种跨框架描述 Kubernetes 工作负载的共享方式,支持 JobSet、KAI Scheduler 和 Run:人工智能。

NVIDIA 详细介绍了 Kubernetes 人工智能框架工作负载地图

NVIDIA 提出了 Workload Map,这是其 DSX 人工智能工厂平台中的一个开源组件,用于一次性描述 Kubernetes 工作负载,并在不同框架和工具间重复使用该结构。公司表示,该方法旨在减少管理分布式人工智能作业时对独立框架解析器和适配器的需求。

分布式人工智能作业的共享工作负载描述

据NVIDIA称,在Kubernetes上运营人工智能工厂需要对分布式工作负载有共同理解,包括pod模板、副本计数和状态。公司表示,JobSet和LeaderWorkerSet等工作负载类型通常需要单独的定制适配器,调度器、控制器或仪表盘才能解释它们。Workload Map旨在提供可重复使用的结构描述,方便跨系统调用。

NVIDIA 用 JobSet 示例展示了这个问题。在帖子中描述的任务清单中,分布式培训任务包括一 leader job和二 worker jobs,每个 pod 请求 四 GPU。公司表示,清单代表了总共 12 个 GPU 的请求。它还说 kubectl 显示 JobSet、其 三 Jobs 及其 pod 作为独立的资源条目,而平台仍需定义来理解角色并汇总资源请求。

定义的工作原理

NVIDIA 表示,Workload Map(前称 Karta)作为 Kubernetes CRD 和一个解释工作负载定义的 Go 库发布。每个定义都指定了特定工作负载类型的 pod 模板、副本计数和状态字段的查找位置。公司表示,这使得调度器和平台工具能够解释支持的工作负载类型,而无需为每个框架维护独立的解析代码。

对于JobSet,NVIDIA表示定义将本地状态字段映射到共享词汇中。示例中帖子说JobSet不报告普通运行状态,因此Workload Map定义通过复制JobsStatus上的jq表达式推导,并将完成和失败条件映射到共享类别。帖子还描述了子组件路径,用于识别JobSet复制的作业、Pod模板、副本缩放和实例ID。

公司表示,Workload Map 包含了 JobSet、PyTorchJob、RayCluster、RayJob、RayService、KServe、Knative、MPIJob、NVIDIA NIM、LeaderWorkerSet、Milvus、Grove PodCliqueSet 和 NVIDIA Dynamo 的预建定义。通过编写 YAML 定义,还可以添加额外的工作负载类型。

在检查、调度和可视化领域的应用

NVIDIA 表示,同一个 JobSet 定义可以在多个工作流中使用。为了检查,工作负载映射 CLI 会从集群读取工作负载,并通过其工作负载定义进行渲染。在帖子示例中,CLI 输出识别了领导者和工作者角色,并报告了工作负载共有 12 个 GPU。NVIDIA 还展示了早期的 Karta CLI 视图,将 JobSet 分为领导者和工作者角色并列出节点位置。

关于调度,帖子称工作负载地图可以包含帮派调度指令。NVIDIA表示,KAI调度器在其Pod分组器中将工作负载地图作为无原生插件的工作负载类型的备份,而匹配的定义则能提供帮派入驻和分组决策所需的结构和分组信息。

为了平台可视化,NVIDIA 表示 NVIDIA Run:人工智能可以通过目录定义的单次 API 调用注册工作负载类型,然后将 JobSet 作为一工作负载管理。帖子中表示,同一定义支持 CLI、KAI 调度器和 NVIDIA Run:人工智能,用于检查、调度和平台可视化。

采用与可获得性

NVIDIA 表示,工作负载地图在 Apache 2.0 许可下提供,并在 NVIDIA Run:人工智能 中用于生产环境。公司还表示,Elotl 的 Nova 在选择分布式工作负载集群时,使用 Workload Map 来解读工作负载结构和资源需求。

帖子称工作负载地图可通过NVIDIA DSX 人工智能 Factory GitHub组织获取。NVIDIA建议,在Kubernetes上运行人工智能工作负载的用户可以从工作负载目录开始,查找他们已有框架的定义,或调整一以适应自定义工作负载类型。公告未说明发布日期2026-11-02之后的新产品发布日期。

登录收藏文章 免费账号:建立研究收藏,随时回来继续阅读。