客户案例|蔚来汽车 × HAMi | 提升自动驾驶工作负载 GPU 利用率
探索蔚来汽车如何采用混合 GPU 共享策略,利用 HAMi 实现 CI 流水线 GPU 利用率提升 10 倍、模拟工作负载 GPU 小时数减少 30%,在 600 张 GPU 规模的自动驾驶 AI 基础设施中实现显著效率提升。
公司概述
蔚来汽车运营大规模云基础设施以支持自动驾驶工作负载,包括模型训练、模拟、CI/测试和在线推理。团队专注于 GPU 性能优化,并参与其综合自动驾驶平台的 GPU 和计算资源规划决策。
大规模 GPU 集群:约 80 个节点上的 600 张 GPU
多样化自动驾驶工作负载:训练、模拟、CI/测试、推理
专注于 GPU 性能优化和资源规划
针对不同工作负载类型的混合 GPU 共享策略
蔚来汽车
领先的电动汽车公司,拥有自动驾驶 AI 平台
挑战:多样化工作负载下的 GPU 低利用率
蔚来汽车的大规模云基础设施支持多样化的自动驾驶工作负载。这种多样性导致工作负载 - 资源不匹配,产生了持续的效率挑战,存在几个具体痛点。
CI 和测试任务
CI 任务的大部分执行时间花费在 CPU 密集型操作(编译、文件获取、预处理)上。GPU 仅间歇性使用,在整卡分配下平均利用率仅为 5–10%。
模拟工作负载
模拟流水线处理视频流、雷达数据和推理验证。单个任务的计算需求相对较低,适合在共享 GPU 上并发执行。
在线推理
许多推理服务仅需 ¼ 或 ½ 张 GPU。为这些小工作负载分配整张 GPU 既低效又昂贵。
GPU 集群规模受限
GPU 集群规模有限,部分容量来自按时间计费的公共云提供商。GPU 低利用率浪费了 GPU 小时数并增加运营成本。
基于 HAMi 的混合 GPU 共享策略
蔚来汽车采用了混合 GPU 共享策略,根据工作负载特征选择不同的 GPU 分配机制,而不是强制执行单一方法。HAMi 通过调度器扩展和设备插件集成,为 Kubernetes 提供细粒度 GPU 共享能力。
评估的方法
NVIDIA MIG
提供强隔离但仅支持预定义的分区大小,难以匹配更细粒度的需求(例如 1/6 或 1/8 张 GPU)。
时间分片
允许工作负载以最小开销自由竞争 GPU 资源。但它缺乏对内存和计算使用的严格限制,不适合某些生产工作负载。
HAMi(CNCF Sandbox 项目)
支持对 GPU 内存和计算分配进行细粒度控制,实现基于实际工作负载需求的比例分配,开销最小。
生产策略:组合多种方法
蔚来汽车没有替代现有机制,而是将它们组合起来以实现不同工作负载类型的最佳效率。
MIG:用于算法开发以及需要强隔离的环境
HAMi:用于 CI 任务以及选定的推理和模拟工作负载
时间分片:用于可以容忍资源竞争的工作负载
实施细节
HAMi 部署在约 50–70 个活动节点上,涵盖 400–560 张 GPU
资源分配设计
对于模拟工作负载,蔚来汽车将 GPU 内存(VRAM)作为主要约束,因为计算能力不足可以通过调度延迟缓解,但内存耗尽会立即触发 OOM 失败。
分区越细并不总是越好。对于某些模拟工作负载,分配约 1/6 张 GPU 提供了最佳效率。更小的分区(如 1/8)引入了额外的调度和虚拟化开销,降低了整体吞吐量。
影响:效率大幅提升
混合 GPU 共享策略在多种工作负载类型上提供了可衡量的改进,提高了整体系统吞吐量,同时直接降低了 GPU 成本。
CI 工作负载利用率
5% → 30-50%
通过将 GPU 分区为 ¼ 或更小的分数,CI 流水线中的有效 GPU 利用率提高了约 4 倍
模拟 GPU 小时数
-30%
细粒度 GPU 共享使总体 GPU 小时数减少约 30%
模拟任务持续时间
3 天 → 2 天
端到端模拟任务从约 3 天减少到约 2 天
部署规模
400-560 张 GPU
使用 HAMi 的 50-70 个节点
总基础设施
600 张 GPU
跨约 80 个节点支持自动驾驶工作负载
策略
混合
HAMi + MIG + 时间分片实现最佳结果
经验教训
蔚来汽车的 HAMi 部署为大规模实施 GPU 虚拟化的组织提供了宝贵的见解。
GPU 分区优化
GPU 分区并非'越细越好'。每个工作负载都有最佳分区大小。过度碎片化可能会降低效率。
性能验证
版本升级需要性能验证。新的 GPU 虚拟化组件可能会引入性能回归。蔚来汽车采用了分阶段升级策略,在允许不同的 HAMi 组件以不同版本运行之前验证性能基准。
生产安全
运营变更必须确保生产安全。对于在线推理工作负载,设备插件升级遵循类似蓝绿部署的流程:首先迁移流量,部署新 Pod,然后逐步停用旧实例。
工具链兼容性
工具链兼容性至关重要。某些编译器或库功能(如指针或地址分析)可能与 GPU 拦截机制冲突。需要在功能和稳定性之间仔细权衡。
“蔚来汽车的 HAMi 部署展示了细粒度 GPU 共享如何显著提高自动驾驶工作负载的基础设施效率。通过将 HAMi 与 Kubernetes 以及现有的 GPU 分配机制(如 MIG 和时间分片)相结合,蔚来汽车在不牺牲稳定性的前提下提高了 GPU 利用率,减少了总体 GPU 小时数,并提高了工作负载吞吐量。”