精选

NVIDIA Run:ai 现已开源,成为 NVIDIA DSX AI Factory 平台的一部分

NVIDIA 正在将完整的 NVIDIA Run:ai 平台作为开源软件提供,使客户、开发者和生态系统合作伙伴能够使用生产级 AI 工作负载和 GPU 编排功能。此版本通过将 NVIDIA Run:ai 建立为一个开放的基础,扩展了 NVIDIA DSX AI 工厂平台,使更广泛的生态系统能够更快地将差异化解决方案推向市场,以满足不断变化的客户需求。

在过去几年中,NVIDIA Run:ai 通过动态分配 GPU 资源和管理从数据处理、训练到推理的整个生命周期中的工作负载,帮助组织在 Kubernetes 上大规模运行 AI 工作负载。

通过将 NVIDIA Run:ai 平台功能开源为 NVIDIA DSX AI Factory 的一部分,每个 NVIDIA DSX 生态系统合作伙伴和 AI 云现在都可以提高工作负载吞吐量、提高 GPU 利用率,并更高效地运营共享 AI 基础设施。

本文详细介绍了开源版本,其中包括完整的 NVIDIA Run:ai 平台 和四个也可独立采用的组件: KAI Scheduler、GPU Fractioning Operator、KAI 资源管理、Workload Map。这些组件与其他平台代码共同构成了集成式 NVIDIA Run:ai 平台。平台团队和生态系统合作伙伴可以将 NVIDIA Run:ai 作为一个集成的整体,在此基础上为自己的产品和服务进行构建,或者根据自己的需求集成各个组件。

如何采用开源 NVIDIA Run:ai

NVIDIA Run:ai 可直接用作开源软件,也可通过 NVIDIA DSX 生态系统合作伙伴提供的产品加以采用。

直接部署开源平台

NVIDIA Run:ai 的完整源代码可在 NVIDIA Run:ai 库 中获取。团队可以检查代码、为其开发做出贡献、基于平台进行构建或独立采用其模块化组件。

完整的开源 NVIDIA Run:ai 平台也作为社区产品在 NVIDIA NGC 上提供,并提供用于安装集成堆栈的 Helm 图表。

注意:NVIDIA Run:ai 源代码受其适用的开源许可证的约束。从 NGC 下载社区产品需要接受适用于 NVIDIA AI 产品的 NVIDIA 软件许可协议和产品特定条款。社区产品无需付费的 NVIDIA Run:ai 订阅或 NVIDIA 支持权利,并且不包括 NVIDIA 企业支持。

通过 NVIDIA DSX 生态系统合作伙伴采用开源 NVIDIA Run:ai

开源 NVIDIA Run:ai 使 NVIDIA DSX 生态系统合作伙伴能够直接访问 AI 工作负载和 GPU 编排创新,以便在自己的 NVIDIA DSX AI 工厂解决方案中使用。通过采用完整的平台或集成单个组件,合作伙伴可以更快地将这些创新推向市场,并更快地响应不断变化的客户和运营需求。

  • Crusoe集成了NVIDIA Run:ai与Crusoe Managed Kubernetes,将GPU工作负载编排与托管Kubernetes和GPU基础设施相结合。
  • Mirantis 通过 NVIDIA Run:ai 扩展 k0rdent AI,提供生命周期管理的 Metal-to-Model AI 工厂堆栈,实现基础设施配置自动化并更大限度地提高 GPU 利用率。
  • Nebius 在 Nebius AI Cloud 中提供 NVIDIA Run:ai 作为一键式应用部署,使客户能够以简化的方式在 Nebius Kubernetes 托管服务上部署和运行完整平台。
  • OpenNebula Systems 通过 OneKS 将 NVIDIA Run:ai 与 OpenNebula AI Cloud Platform 集成,将 GPU 工作负载编排与开放和主权 AI 云的基础设施配置和生命周期管理相结合。
  • Rafay 正在扩展其 NVIDIA Run:ai 集成,将其作为完全托管服务提供。Rafay 实现了从 GPU 基础设施和集群到 NVIDIA Run:ai 控制平面和租户的整个堆栈的自动化,因此 AI 云提供商和企业可以通过自己的自助服务目录提供。
  • Saturn Cloud 集成了 NVIDIA Run:ai,帮助 AI 云运营商通过其 Token Factory 平台推出白标 AI 推理服务,将 GPU 编排与专用和多租户模型服务、每 token 计量和自动计费相结合。
  • Spectro Cloud 将 NVIDIA Run:ai 集成到 PaletteAI 中,使客户能够通过 PaletteAI Studio 进行部署,并以与 AI 基础设施相同的生命周期自动化方式进行管理。
  • vCluster 通过预先验证的部署模板提供 NVIDIA Run:ai,这些模板为每个租户提供了一个完整的环境,使运营商能够加强租户边界,同时 NVIDIA Run:ai 继续在一个 GPU 集群中进行调度。

对于 NVIDIA Enterprise AI Factory 部署,NVIDIA Run:ai 继续通过 NVIDIA 支持的商业产品提供,包括作为独立产品、通过 NVIDIA Mission Control 和 NVIDIA AI Enterprise 以及选定的云市场提供。可用性、许可和支持条款因产品而异。

对于已经拥有平台但需要填补特定能力差距的团队,以下各节将介绍何时以及如何独立使用每个模块化组件。

NVIDIA Run:ai 平台的模块化开源组件

本节将详细介绍开源版本中包含的四个组件:KAI 调度程序、GPU 分运算符、KAI 资源管理和工作负载地图。借助额外的平台代码,这些组件构成了集成的 NVIDIA Run:ai 平台。您可以将 NVIDIA Run:ai 作为集成整体,也可以根据您的独特要求集成单个组件。

KAI 调度器:NVIDIA Run:ai 背后的调度引擎

KAI Scheduler 是 Kubernetes 原生调度程序,为 NVIDIA Run:ai 平台提供支持。NVIDIA 根据 Apache 2.0 许可将 KAI Scheduler 作为开源软件发布,并将其作为沙盒项目提供给 CNCF。KAI 仍然是 NVIDIA Run:ai 背后的上游引擎,所有调度器开发都在社区库中进行,因此每次改进都通过相同的代码库进行。NVIDIA 将继续为该项目的维护人员提供支持,并与更广泛的生态系统合作,大规模推进 AI 工作负载调度。

KAI Scheduler 专为大规模 GPU 工作负载而构建,可协调:

  • 使用预调度内存模拟进行帮式调度,以便多舱作业全部或全部放置,不会被不必要地逐出
  • 公平分享 (包括基于时间的公平分享) 和配额分配,保持各团队资源共享的平衡
  • 调度决策级别的拓扑感知和 Bin – Packing
  • GPU 共享:允许多个工作负载共享单个或多个 GPU ( MIG、MPS、时间共享、HaMi、CUDA 13.4 MPS 分数)
  • 动态资源分配 (DRA) 支持

如需详细了解主要功能,请访问 kai-scheduler/ KAI-Scheduler GitHub 资源库。

使用 KAI Scheduler 处理需要公平访问集群资源和拓扑感知布局的各种 AI 工作负载。无需完整的 NVIDIA Run:ai 平台,即可将其与当前的软件堆栈一起部署在现有集群中。

关注该项目,在 CNCF Slack 上的# kai-scheduler 频道提问,并在 kai-scheduler/ KAI-Scheduler GitHub 资源库中做出贡献。

GPU 分数运算:Kubernetes 上 GPU 分数运算符

NVIDIA Run:ai 平台长期以来一直支持分数 GPU 分配,使多个工作负载能够通过硬盘内存隔离共享一个 GPU。可以按需请求分数并进行即时设置,无需管理员事先针对每个节点进行设置。在运行不需要 GPU 全部内存的工作负载 (包括交互式笔记本和适用于较小模型的推理) 的 ML 团队中,它是使用最广泛的功能之一。NVIDIA Run:ai 通过专有实现开创了这种体验。

GPU Fractioning Operator 将 CUDA 原生 GPU 分引入 Kubernetes,并且专有实现已停用,转而使用 CUDA 13.4。 中提供的原生功能。CUDA 驱动程序对每个工作负载的 GPU 显存都实施了硬限制,并且每个工作负载只能看到分配给其部分的 GPU 显存。我们仍然需要一种在 Kubernetes 上使用它的简洁方式。这就是 GPU Fractioning Operator 提供的:一个在集群上启用 CUDA GPU 分数的运算符,以及一个指标导出器,用于对使用中的分数进行监控。它是一个 Kubernetes 集成层,允许工作负载使用 CUDA 原生分数,并且与调度程序无关。

对于可能共享未充分利用的 GPU 容量的工作负载,包括笔记本电脑、开发会话和较小的模型,使用 GPU Fractioning Operator。GPU Fractioning Operator 与 KAI Scheduler 集成,可将可用的 GPU 容量转换为实际的放置决策,同时保持与其他调度器兼容。

GPU Fractioning Operator 将 CUDA 13.4 原生 GPU 分引入 Kubernetes,并与 KAI Scheduler 集成。要开始使用,请参阅 GPU Fractioning Operator 文档。

KAI 资源管理:组织层

在调度程序决定工作的放置方式的同时,KAI 资源管理器还会决定哪些人可以获得:

  • 项目和部门:组织结构或“组织层”,将资源映射到使用这些资源的团队和计划。
  • 具有组织层次结构的资源管理:能够在该组织结构中分配、保证和共享 GPU 容量,并具有公平分配和配额语义。
  • 节点池:对异构硬件进行分组和定位,以便将工作负载投放到合适的资源上。

这些功能相结合,可让平台团队超越原始 Kubernetes 调度,按照组织的实际运营方式 (按团队、按部门、按举措和按资源保证) 管理 GPU。

对于需要定义容量共享的多个团队共享的异构集群,使用 KAI 资源管理。例如,平台团队可以保证 50% 的集群用于研究,同时防止任何团队独占剩余的容量。如果您已在电子表格或每个团队的手动命名空间中跟踪配额授权,此层将取代该层。它可以与集群中的 KAI Scheduler 结合使用。

如需详细了解这些概念如何映射到实际部署,请参阅KAI 资源管理文档。

工作负载地图:适用于 Kubernetes 的工作负载管理合同

工作负载地图是 NVIDIA Run:ai 用于支持任何工作负载类型的合同。KAI Scheduler 将其用于调度和帮组语义;平台的其余部分将其用于工作负载发现、监控和生命周期管理。

在 Kubernetes 中,AI 工作负载几乎绝不是简单的部署或工作。它是 PyTorchJob、RayCluster、JobSet、KServe InferenceService、Dynamo 图形部署或公司自己的自定义资源。每种类型都有自己的内部结构、具有不同角色的组件 (驾驶员和工作人员、主管和工作人员、预填充和解码) 、自己的缩放和帮组语义,以及自己的状态报告方式。

工作负载映射提供了一种一致的方法,可在工作负载的整个生命周期中将其作为一流对象处理:

  • 描述 POD、组件和角色
  • 提交和配置
  • 利用帮式和拓扑感知进行调度
  • 持续观察状态和运行状况
  • 在准入或运行时应用策略

此工作负载管理层位于 Kubernetes 基元与调度程序、控制面板、SRE 和故障排除工具、成本工具、备份工具以及为用户提供服务的 ML 平台之间。工作负载地图并非每个工具都能为每个 CRD 构建私有的部分集成,而是会对每种工作负载类型定义一次,以便任何平台或工具都能一致地调度、观察、采取行动和治理工作负载,而无需对每个 CRD 进行硬编码。

将工作负载映射用于必须理解和管理多种 Kubernetes 工作负载类型的平台和工具,而无需对每个 CRD 进行硬编码。它作为一个 Go 库附带,可以离线处理非结构化对象,因此您无需向集群添加任何内容即可采用它。它特意缩小范围:工作负载地图描述的是工作负载结构,而不是跨集群调度、排队、自动扩展或传播。

如需了解详情,请访问 dsx-ai-factory/workload-map GitHub 资源库,并查看 采用者项目。

以下开源项目解决了互补的 AI 基础设施挑战。它们可以独立采用,也可以整合到更广泛的解决方案中,其中包括完整的 NVIDIA Run:ai 平台或选定的组件。

模型 Streamer:降低冷启动延迟

在 Kubernetes 上冷启动推理工作负载可能需要几分钟时间,在此期间,GPU 会被分配,但会在一个步骤中处于空闲状态:将模型权重从存储设备加载到 GPU 上。Model Streamer 可同时读取权重,并将其直接流式传输到 GPU 显存中,从而缩短大型模型的加载时间。

自发布以来,Model Streamer 已在整个推理堆栈中得到采用,包括推理引擎、云提供商和存储平台供应商。

推理引擎

Model Streamer 在 vLLM 和 SGLang 中集成了上游模型,可通过 --load-format runai_streamer 标志以及 ModelExpress 启用。支持范围包括本地文件系统、兼容 S3 的存储和网络文件共享,以及下文详述的多个云后端。

云

现在,主流云提供商会在自己的指南中记录 Model Streamer。

存储平台

多家 AI 数据基础设施合作伙伴已对 Model Streamer 进行独立基准测试,并发布了相关结果:

  • WEKA 加载到 GPU 显存只需 3.5 秒,比从本地 NVMe 加载快约 40%,使组织能够构建 PB 级共享模型资源库,从而加速模型就绪,而无需花费时间、精力和容量在推理环境中维护重复的模型副本。
  • VAST Data 测量为 1.7 秒,比从本地 NVMe 加载时提高 60%
  • DDN 在 4 秒内将 65.5 GB Qwen3-32B 串流到 8 个 GPU 上,并转化为成本:与使用本地存储相比,可节省高达 10% 的 GPU 日常运行时间。

在启动新副本时使用 Model Streamer,加载模型权重是主要瓶颈。

Grove:一个 API,任何推理架构

新兴的工作负载模式 (包括代理式工作流、分解服务和混合专家训练) 由多个互联组件组成,这些组件必须一起扩展。Grove 提供了一个 Kubernetes API,用于编排这些工作负载,从单个 POD 到跨越数万个 GPU 的部署。

Grove 提供拓扑感知型自动缩放和分层组调度功能,允许预填充和解码等组件以“全无”单元的形式开始。在 NVIDIA GB200 NVL72 上,它还可以自动管理 ComputeDomain 资源,从而通过单个标注实现多节点 NVLink 性能,而不是手动编写 YAML。

Grove 是 NVIDIA Dynamo 的模块化组成部分,可独立使用,并且已为多家公司的大规模训练和推理工作流提供支持。最近的工作包括支持 llm-d 和 Volcano 作为调度程序后端,并正在进行 Kueue 支持。

使用 Grove 处理具有不同角色和合扩展要求的基于图形的工作负载。

开始使用开源 NVIDIA Run:ai

NVIDIA Run:ai 现已在 NVIDIA DSX AI Factory GitHub 组织中以开源软件的形式提供。如需了解详情并开始使用,请查看以下资源:

相关开源项目包括:

我们很高兴将这项工作带给社区,并在开放环境中构建新一代 AI 工作负载和 GPU 编排。欢迎您的贡献、问题和反馈。

标签