企业资讯
深入探索Fractional H100 GPU 实现高效的模型服务指南
发布时间: 2024-07-03 14:28

NVIDIA A100 和 H100 GPU 为 ML 模型提供高性能推理。我们希望在现有硬件条件下获得尽可能高的性能,因此我们开始使用 H100 GPU 的一项功能,该功能允许我们将单个物理 GPU 拆分为两个模型服务实例。这些实例通常以低 20% 的成本达到或超过 A100 GPU 的性能。


NVIDIA H100 GPU 支持多实例 GPU (MIG),这让我们可以在Fractional GPU 上为模型提供服务。我们可以为每个 H100 GPU 获得两个 H100 MIG 模型,每个模型的计算能力约为完整 GPU 的一半。将 H100 GPU 分成两Fractional可以让模型推理的硬件选择更加灵活。


与使用 A100 GPU 相比,H100 MIG 模型服务实例在推理方面具有多项优势:

对于使用 TensorRT 优化的工作负载,其性能与 A100 GPU 相同或更佳,但标价却降低了 20%。

支持FP8,扩展量化模型的选项。

提高跨云提供商和地区的 GPU 的灵活性和可用性。


本指南详细介绍了 MIG 的工作原理、Fractional H100 GPU 提供的规格以及在基于 H100 MIG 的实例上提供模型的预期性能。


一、多实例 GPU 的工作原理


MIG 是随 NVIDIA 的 Ampere 架构一起推出的,并且也支持 Hopper 和 Blackwell。MIG 可以将 GPU 拆分为多个分数 GPU,每个 GPU 都可以运行独立的模型服务器。


Fractional GPU 由 GPU 的计算和内存的物理切片组装而成:

7 个计算切片均匀划分芯片上的流式多处理器。

8 个内存切片均匀划分芯片上的 VRAM。


乍一看,7 个计算切片似乎有些奇怪。这并不是因为有任何为开销预留的计算,而是因为 H100 GPU 有 140 个流式多处理器 (SM),它们均匀分布在 7 个切片中,每个切片有 20 个 SM。H100 GPU 中还有 7 个 NVDEC 和 JPEG 图像解码器;每个切片分配一个。内存更简单:8 个内存切片中的每一个都有 10 GB 的 VRAM 和 GPU 总内存带宽的八分之一。


H100 GPU 上有19 种不同的配置文件,这意味着您可以将卡分成 19 种不同的配置,但我们使用单个配置文件将卡分成两个 MIG 3g.40gb 实例。


3g.40gb 名称表示该实例具有三个计算切片和 40 GB 的 VRAM。我们之所以选择这个特定的配置文件,是因为它在模型服务中非常有用,并且与 A100 GPU 的性能非常接近。


二、H100 MIG 与 A100 规格


我们使用的 H100 GPU 的Fractional计算能力是完整 H100 GPU 的七分之三,内存是完整 H100 GPU 的一半。但这些规格与 A100 GPU 相比如何?


与 80GB SXM A100(最强大的 A100 变体 - 我们使用它进行模型推理)相比,分数 H100 GPU(也是 SXM)具有更强大的计算能力,但内存带宽更差。




总而言之,与 A100 GPU 相比,H100 MIG 具有:

支持的精度计算量提高了 36%

支持FP8精度

一半的内存,内存带宽降低 18%


但性能不仅仅是原始规格。从表面上看,更高的计算能力似乎有助于 LLM 的预填充(进而缩短第一个 token 的时间),但较低的内存带宽会限制速度,因为LLM 推理的大Fractional都受内存限制。但是,我们使用 TensorRT 提供高性能模型,它利用了 H100 GPU 的架构优势,即使在使用 H100 MIG 时也是如此。尽管内存带宽有限,但对于许多模型来说,H100 MIG 与 A100 GPU 的性能相同或更好。


三、H100 MIG 与 A100 性能对比


在使用 TensorRT 和 TensorRT-LLM 服务的模型的基准测试中,具有 7 个 SM 切片中的 3 个和 40GB VRAM 分配的Fractional H100 GPU 达到或略微超过了 A100 GPU 上的性能。




1、Stable Diffusion XL 性能

对于使用 TensorRT 优化的 SDXL的 30 个步骤,我们发现 H100 MIG 和 A100 GPU 之间的性能几乎相当。

观察到的生成时间差异(小于 100 毫秒)在此类基准测试的预期运行间差异范围内。我们预计Fractional H100 GPU 在 SDXL 工作负载方面具有与 A100 GPU 相当的性能。


2、Mistral 7B 性能

对于在 FP16 中运行的 Mistral 7B 基准测试,其中有 300 个输入令牌和 1000 个输出令牌,批次大小为 32,我们观察到 H100 MIG 在吞吐量和延迟方面都比 A100 GPU 略有优势。



得益于 TensorRT-LLM,H100 MIG 的延迟比 A100 GPU 低 20%,总吞吐量高 6%。LLM 计算第一个输出标记时,预填充时间较长,这是由于输入序列相对较大。使用较短的聊天式输入和输出,预填充以及第一个标记的时间将更快。

H100 GPU 还支持 FP8,而 A100 GPU 不支持。在 FP8 中运行较小的 LLM(如 Mistral 7B)可以提供更低的延迟和更高的吞吐量,同时几乎不会造成任何质量损失。使用 FP8 可以提高 H100 MIG 性能,从而进一步超越 A100 GPU 的功能。


四、何时使用Fractional H100 GPU


捷智算 上提供由Fractional H100 GPU 支持的模型服务实例,其定价比使用 A100 GPU 的同类实例低 20%。Fractional H100 GPU 可以达到或超过 A100 GPU 的机器学习推理性能,为许多工作负载带来显著的性价比提升。


H100 MIG 实例非常适合:

优化Mistral 7B和SDXL等较小模型的高吞吐量部署

在 FP8中运行模型以获得更快的性能,同时不影响输出质量。

使用TensorRT 或 TensorRT-LLM 优化的模型。

通过每次增加或减少一半 GPU 的容量来实现细粒度的自动缩放。


但是,H100 MIG 实例不适合:

在需要大量 VRAM 的大型模型(如Mixtral 8x7B)上运行推理

构建具有大批量的模型服务器,以一些延迟来换取额外的吞吐量

提供未优化的模型实现,无法利用 H100 的架构特性


在这些情况下,由 A100 或完整 H100 GPU 支持的实例会更合适。


要开始在Fractional H100 GPU 上提供模型,请在部署模型时选择H100 MIG 实例类型,或者联系我们讨论使用 TensorRT 优化模型,以充分利用 H100 MIG 进行模型服务。

  • 捷智算联系人