在单个H200 GPU上使用INT4 AWQ的Falcon-180B,以及比A100快6.7倍的Llama-70B
H200的大容量和高内存带宽,与TensorRT-LLM的优化相结合,最大限度地提高了推理性能。
在单个H200上使用INT4 AWQ的Falcon-180B
Falcon-180B,是目前可用最大且最准确的开源模型之一,可以在单个 H200 GPU 上运行。
H200上的141GB内存,与运行INT4 AWQ和FP8的TensorRT-LLM配对,使得整个大型语言模型可以适配到单个GPU上,而之前需要八个A100。H200 Falcon-180B提供高达800 tok/s的速度,并保持高精度。
模型性能: H200的大容量和高内存带宽,利用INT4 AWQ减少内存占用,使得在单个GPU上运行Falcon-180B时表现出色。
初步测量的性能,可能会有所变化。TP1不代表H200的峰值性能。 TensorRT-LLM v0.7a | Falcon-180B | 1xH200 TP1 | INT4 AWQ | BS: (按顺序) 256, 128
模型准确率: 通常量化可能会对模型的准确率产生不利影响, 然而,TensorRT-LLM的AWQ将模型的内存占用减少了4倍 同时保持了高准确率。
初步测量的准确性,可能会有所变化。 TensorRT-LLM v0.7a | Falcon-180B | 1xH200 TP1 | INT4 AWQ
INT4 激活感知权重量化 (AWQ) (Lin 等人, 2023) 是一种量化 技术,它根据相对重要性将LLM的权重压缩到4位,并在FP16中执行计算。这使得AWQ能够 比其他4位方法保持更高的准确性并减少内存使用,但 需要能够高效处理精度变化的特殊内核。
TensorRT-LLM 已经为 AWQ 实现了自定义内核,并通过在 Hopper GPU 上执行 FP8 计算而不是标准的 FP16,进一步推进了这项技术。
在TensorRT-LLM中使用量化运行Falcon-180B的类似示例可在examples/falcon中找到。
Llama-70B 在 H200 上比 A100 快 6.7 倍
TensorRT-LLM 已经改进了其组查询注意力(GQA)内核,在生成阶段,与 TensorRT-LLM v0.5 相比,在 Llama-70B 上提供了高达 2.4 倍的改进,实现了超过 3,800 tok/s/gpu 的速度,比 A100 快达 6.7 倍。
H200 6.7x A100
模型 |
图形处理器 |
输入长度 |
输出长度 |
吞吐量(输出令牌/秒/GPU) |
|---|---|---|---|---|
Llama-70B |
1 |
128 |
128 |
3,803 |
8 |
3,803 |
|||
1 |
2048 |
2,941 |
||
8 |
3,163 |
|||
1 |
4096 |
1,946 |
||
8 |
2,263 |
初步测量的性能,可能会有所变化。 TensorRT-LLM v0.7a | Llama2-70B | 1xH200 = TP1, 8xH200 = 最大 TP/PP/DP 配置 | FP8 | BS: (按顺序) 960, 960, 192, 560, 96, 640
TensorRT-LLM GQA 在 H200 上现在快 2.4 倍
初步测量的性能,可能会有所变化。 TensorRT-LLM v0.7a 对比 TensorRT-LLM v0.6a | Llama2-70B | 1xH200 TP1 | FP8 | BS 192
分组查询注意力 (GQA) (Ainslie 等人, 2023), 在 Llama-70B 中使用, 是多头注意力 (MHA) 的一种变体, 它将键值 (KV) 头分组在一起, 导致 KV 头的数量少于查询 (Q) 头。TensorRT-LLM 有一个自定义的 MHA 实现, 支持 GQA、多查询注意力 (MQA) 和标准 MHA。它利用了 Tensor 核心, 包括在生成阶段, 并在 NVIDIA GPU 上提供了出色的性能。
关闭
这些改进将很快发布在main分支中,并将包含在v0.7和v0.8版本中。
在TensorRT-LLM中运行Llama-70B的类似示例发布在 examples/llama.
有关H200的更多信息,请参阅H200公告博客。
吞吐量计算为每个GPU每秒的输出令牌数。
out_tps=output_seqlen*batch_size/total_latency/tp
术语表: | DP = 数据并行 ISL = 输入序列长度 | PP = 管道并行 | OSL = 输出序列长度 | OOM = 内存不足 | TP = 张量并行