首页/AI/大模型部署与运维速查/持久化模式:减少 GPU 初始化开销
推理环境与 GPU50 条

持久化模式:减少 GPU 初始化开销

默认情况下 GPU 无任务时驱动会卸载其状态,首个任务承担初始化延迟;开启持久化模式让驱动保持加载,适合推理服务常驻、任务频繁拉起的场景。

持久化模式解决什么

GPU 长时间没有任务时,默认行为是驱动卸载它维护的上下文状态,下一个任务到来时要重新初始化,首个请求因此明显偏慢。持久化模式让驱动保持常驻,代价是空闲时也占着一部分资源,适合推理服务常驻、任务频繁拉起的机器。

基本信息

开启命令nvidia-smi -pm 1
固化方式nvidia-persistenced 服务
生效范围重启后丢失,需开机自启
查看nvidia-smi --query-gpu=persistence_mode --format=csv
适合服务常驻、任务频繁启停

典型使用场景

  • 推理服务常驻但请求稀疏,想避免每次冷启动的初始化开销
  • 系统重启后希望状态自动恢复,而不是靠人手工敲命令
  • 批量任务频繁拉起短进程,逐个初始化累加起来很可观
  • 排查首请求延迟异常偏高,先确认这项设置是否开着

开启与固化

开启与固化
sudo nvidia-smi -pm 1                                      # 开启(重启后失效)
sudo systemctl enable --now nvidia-persistenced            # 固化:重启自动恢复
nvidia-smi --query-gpu=index,persistence_mode --format=csv  # 逐卡确认状态
sudo nvidia-smi -pm 0                                      # 关闭,用于对照验证

现象与原因对照

现象原因处理
首个请求特别慢驱动卸载状态后重新初始化开启持久化并固化
状态偶尔变回 Disabled驱动重载或服务没开机自启用 systemd 固化并定期核对
空闲时显存少量占用持久化保留上下文属正常代价,无需处理
数据中心驱动常与 nvidia-persistenced 配合常驻;单卡且任务长跑的机器收益有限,任务频繁启停时体感才明显。
判断是否真生效别只看一次命令返回:要确认重启后状态仍是 Enabled,并对照首个请求延迟是否真的下降。
状态字段要逐卡看:多卡机器上个别卡可能未生效,把它写进部署清单,换卡或换驱动后重新确认一次。
收益可以用首个请求延迟量化:开与关各跑一轮对照,把差值记进基线;换卡换驱动之后,这个基线仍然能作为参照。

易错点

  • 未开持久化的机器首个请求偏慢:初始化开销容易被误判成服务性能问题,先去查状态
  • 只用 nvidia-smi -pm 1 不固化:重启后悄悄失效,问题隔一段时间又出现一次
  • 在共享机器上改动持久化设置:这是驱动级设置,影响同机所有卡与用户,改前先确认归属
  • 把持久化当性能优化大杀器:它只消掉初始化开销,稳态吞吐不会因此变好

数据来源与参考

  • NVIDIA 驱动持久化模式文档(docs.nvidia.com/deploy/driver-persistence)
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌