HAMi vGPU 容量规划:一张 GPU 到底能切给多少个任务?
HAMi 支持在 Kubernetes 中对 GPU 等加速器做虚拟化和共享,本文从容量规划、隔离、监控和风险控制角度给出运维建议。
GPU 共享听起来很简单:把一张卡切成几份,提高利用率。但在生产环境里,真正难的是容量规划。切得太少,资源还是浪费;切得太碎,任务互相影响,排查成本会上升。
HAMi 进入 CNCF Incubating 后,说明云原生 GPU 虚拟化正在从“可尝试”走向“可认真评估”。它可以按显存、核心、设备数量等维度分配虚拟化加速器资源,适合推理、小模型训练、开发测试和多租户平台。
容量规划的三个指标
第一是显存。很多推理任务不是算力先满,而是显存先满。规划 vGPU 时,要先统计模型加载后显存、峰值显存和 batch 变化。
第二是计算利用率。显存够不代表性能够。如果多个任务同时高强度计算,延迟会抖动,吞吐也可能下降。
第三是稳定性边界。共享 GPU 的任务最好按业务等级分组,不要把关键生产推理和实验任务混在同一张卡上。
推荐策略
开发测试环境可以激进一些,例如提高共享密度,让更多人能拿到资源。生产推理环境要保守,优先保证延迟和隔离。训练任务则要看框架特性,大任务一般仍适合独占或队列化调度。
对于平台团队来说,HAMi 不应该单独使用,而要和监控、配额、队列、审计结合。至少需要看每张卡的分配情况、显存使用率、计算利用率、任务失败率和用户占用时间。
风险点
不要承诺“共享后性能完全不变”。GPU 共享提升的是资源利用率,不是魔法扩容。对延迟敏感的业务要做压测,对训练任务要观察收敛速度和稳定性。
HAMi 的合理定位是云原生 AI 平台里的资源效率组件,而不是替代所有 GPU 调度能力。
