返回资讯中心
外部精选
软件工程
#开发者实时流

Nvidia 开源 Snapshot 系统,GPU 工作负载可秒级恢复

来源标题:Start and Restore GPU Workloads in Seconds with Nvidia Snapshot

NVIDIA 推出开源工具 Snapshot,可在 Kubernetes 上对 GPU 工作负载做检查点与恢复,保存完整的 CPU 和 GPU 内存状态。恢复推理副本仅需 3.6 至 42.7 秒,相比耗时数分钟的冷启动提速 8 至 36 倍。该系统支持张量并行、数据与专家并行等多 GPU 场景,可在 8 块 GPU 上处理最大 1TB 的检查点。

Hacker News 最新mehdizare2026/11/12 · 今天20 分钟阅读

以下正文由 AI 翻译自 Hacker News 最新(原文版权归原站所有),可能存在偏差,重要内容请以原文为准。

NVIDIA Snapshot 是 NVIDIA DSX AI Factory Platform 新增的开源组件,它让已初始化的 GPU 工作负载可以在推理副本之间复用——从而加快启动和恢复速度。

当推理需求激增或某个副本发生故障时,空闲的 GPU 并不会立刻转化为服务容量。初始化一个 LLM 工作负载——也就是所谓的冷启动——可能需要数分钟,从而延迟扩缩容和恢复。

Snapshot 是一个面向 Kubernetes 上 GPU 工作负载的 checkpoint 与恢复系统。它会捕获一个完全初始化的工作负载——包括 CPU 和 GPU 内存——并在兼容的基础设施上恢复该状态,使推理容量在数秒内而非数分钟内上线。图 1 展示了启动流程。Snapshot 跳过了重复的工作负载初始化;基础设施供给和容器镜像加载不在所测量的恢复路径之内。

图 1. 冷启动流程:供给机器、加载容器镜像、启动推理引擎、将模型权重加载到 GPU 内存、使用 torch.compile 编译,以及捕获 NVIDIA CUDA graphs

本文介绍 Snapshot 如何对 GPU 工作负载进行 checkpoint 和恢复、平台团队如何集成它,以及在三种推理引擎上恢复时间与冷启动的对比。

Snapshot 最初是为 NVIDIA Dynamo 推理 worker 开发的,它提供的 checkpoint 与恢复能力可以被其他推理引擎、调度器、控制器和平台集成。

Snapshot 为 GPU Pod 提供两种操作:

这两种操作都使用 Kubernetes 自定义资源。要对一个已经在运行的 Pod 进行 checkpoint,创建一个 PodSnapshot 并指定该 Pod 的名称。要从模板启动一个 Pod 并在其就绪后立即进行 checkpoint,则改为创建一个 SnapshotJob。要执行恢复,请向新 Pod 添加注解 nvidia.com/restore-from,并指定要从中恢复的 PodSnapshot。工作负载只需进行少量握手,即可在 checkpoint 前暂停、在恢复后继续运行。代码仓库中提供了适用于 vLLM、SGLang 和 NVIDIA TensorRT LLM 的现成示例。

Snapshot 可以将单节点上跨多个 GPU 的兼容工作负载作为单个 checkpoint 工件跨 rank 进行 checkpoint 和恢复。这为大型混合专家(MoE)模型的快速启动提供了支持,可采用张量并行(TP)、数据和专家并行(DEP)以及解码上下文并行(DCP)等并行策略。工作负载必须满足 Snapshot 的 checkpoint/恢复和运行时兼容性要求。请参见示例配置。

设计合作伙伴还在自己的工作负载上评估了 Snapshot:

以下基准测试展示了 Snapshot 如何在 vLLM、SGLang 和 NVIDIA TensorRT LLM(TRT-LLM)上加速推理启动——模型范围从 6 亿参数到在 8 块 GPU 上具有 1 TB checkpoint 的混合专家(MoE)模型。在所有测试配置中,Snapshot 都能在 45 秒内恢复一个副本,比冷启动快 8 倍到 36 倍。

每种配置都在相同的硬件和软件栈上使用两种策略进行了测试:

两项测量都不包括拉取容器镜像和设置容器运行时。KV cache 释放在每次 checkpoint 之前触发,因此不属于工件的一部分。

表 1 还报告了 checkpoint 时间和大小:捕获一个完全初始化的副本需要多长时间,以及存储的工件需要多少存储空间。这是每个模型和配置的一次性成本。

图 2 至图 4 比较了 vLLM、SGLang 和 TensorRT LLM 在所测试的模型和并行配置下的冷启动时间和 Snapshot 恢复时间。表 1 提供了每种配置的数据,包括 checkpoint 时间和大小。所有时间单位均为秒。在图表中,TEP8 表示跨八块 GPU 的张量和专家并行。

图 2. vLLM:针对所测试的每个模型和并行配置,冷启动与 Snapshot 的对比。Snapshot 使每个副本在 4.7 至 39.6 秒内上线

图 3. SGLang:针对所测试的每个模型和并行配置,冷启动与 Snapshot 的对比。Snapshot 使每个副本在 3.6 至 42.7 秒内上线

图 4. TensorRT LLM(TRT-LLM):针对所测试的每个模型和并行配置,冷启动与 Snapshot 的对比。Snapshot 使每个副本在 7.79 至 33.55 秒内上线

模型引擎并行方式权重大小(GB)Checkpoint 大小(GB)Checkpoint 时间(s)冷启动(s)Snapshot

(原文较长,此处译出前 6000 字,完整内容请点「打开原文」。)

正文由 探How 从来源站点 RSS 同步,内容未经改写;遇到排版缺失或需要图片、视频时请以原文为准。

打开原文
去社区讨论 →