跳到主要内容

Overview

什么是 GPU 管理?

GPU 管理功能通过 GPU 仪表板管理所有 GPU 组件的状态,这是一个面向操作员的功能,并通过物理/逻辑容量、池请求和 GPU 资源的分配来管理 GPU 的使用状态。

您可以通过单一界面管理整个生命周期,从 GPU 池的创建到分配、优化再到监控。

关键特性

  • GPU Capacity: 通过将物理 GPU 硬件的实际容量作为池进行管理来提高利用率。
    • NodeCapacity: 每个 GPU 节点的整体容量信息
    • GpuCapacity: 单个 GPU 设备的详细信息
    • Profile: 映射实际分配的 pod 信息(工作负载跟踪)的目的
    • SpecAndCount: 用于管理提供的 MIG 或 GPU 资源
  • GPU Pool Management: 按工作负载类型对 GPU 进行分组或分开,并在项目级别作为池进行管理。
  • GPU Monitoring: 通过功耗、SM 活动和内存错误来测量 GPU 使用情况

架构参考

GPU 通过 Nvidia 在 Nvidia H100 和 H200 配置中提供的 GPU 管理堆栈进行管理,GPU 的生命周期(容器调度、每个负载的资源、隔离等)是基于 Kubernetes 以集成方式进行管理的。 因此,分配的 GPU 在 Kubernetes 上应用相同的工作负载行为原则(例如,通过应用分发进行资源分配)。

LayerElementRoleFeature
物理Kubernetes 节点物理服务器托管服务器资源的物理基础设施
GPU 硬件物理 GPU负责与 AI 相关的计算
逻辑Kubernetes Api ServerAPI 服务器对 Kubernetes 的控制
操作员GPU 管理GPU 资源管理和配置
MCM
(多集群管理)
集群管理Kubernetes 集群管理和 GPU 资源
容量容量管理GPU 池与物理资源之间的资源管理对象
GPU 池管理您的使用分配给最终用户
的托管对象,作为逻辑资源

GPU 管理方法

GPU 以 MIG 的形式管理 GPU 资源,MIG 被划分为物理 GPU 和 GPUaaS 上的独立 GPU 实例,GPUaaS 是自 A100 以来由 Nvidia 引入的基于硬件的 GPU 虚拟化技术。

MIG(多实例 GPU)配置

多实例 GPU(MIG)是 NVIDIA 的一项创新技术,允许将单个 GPU 划分为多达七个独立的 GPU 实例。每个实例都有专用的内存、缓存和流处理器,并在硬件级别上完全隔离。这提供了一个安全的多租户环境,其中一个实例的故障不会影响其他实例。

  • 最大化资源效率
    • 多个用户同时使用一台昂贵的 GPU(例如,A100)
    • 成本效益高的工作负载使用,不需要完整的 GPU 性能
    • 通过最小化闲置 GPU 资源来提高投资回报率
  • 多租户支持
    • 在多个项目或团队之间安全地共享同一 GPU
    • 确保每个实例之间的完全隔离(内存、计算资源)
    • 一个实例的故障不会影响其他实例
  • 工作负载的自定义分配
    • 推理任务:即使在少量内存的情况下也能提供足够的性能
  • 开发/测试:支持快速迭代开发,使用小型资源
    • 批处理:同时并行运行多个小作业
  • 提高运营效率
    • 减少 GPU 队列延迟(可用实例更多)
    • 增加调度和资源调度的灵活性
    • 基于使用情况的准确成本分配
  • 可扩展性和管理的便利性
    • 在不增加物理 GPU 的情况下容纳更多用户
    • 集中管理 GPU 资源
    • 通过动态资源重新分配进行优化

完整 GPU 配置

MIG 并不适合所有工作负载,在需要高性能、大规模并行处理的环境中,利用完整的 GPU 是最有效的。 完整 GPU 的使用主要用于大规模训练(深度学习)、LLM 训练(GPT-3 等)、大模型推理、高性能模拟和科学计算,主要用于多 GPU、微调等。 它是将整个 GPU 独占用于一个工作负载。它针对训练大规模 AI 模型或高性能计算任务进行了优化。

CategoryMIG (Multi-Instance GPU)Full GPU
资源结构GPU 的硬件级分区(1 到 7 个实例)将整个 GPU 作为单一资源使用
隔离级别硬件级隔离(内存和缓存的隔离
共享资源(基于单个 GPU 的资源)
性能高密度多租户最大性能,高带宽利用率
适用工作负载推理,小规模微调大规模训练,多 GPU 训练

Billing Method: GPUaaS 提供了一项计费服务,自动跟踪 GPU 池的使用情况并生成计费数据。GPU 使用在项目级别批准池使用请求后变为可计费,并且分配给池的资源专用于该项目,无法与其他项目共享。