新的XQA内核在相同的延迟预算内提供2.4倍的Llama-70B吞吐量
XQA内核在生成阶段为MQA和GQA提供了优化。它还为束搜索提供了优化。通过使用张量核心进行加速,减少数据加载和转换,它在相同的延迟预算内提供了更高的吞吐量。增加的吞吐量允许在提供相同体验的同时,服务更多的用户请求。
支持矩阵和使用标志在docs/source/advanced/gpt_attention中有描述。
提高吞吐量: 查看下面的吞吐量-延迟曲线,我们可以看到启用XQA优化后吞吐量有所增加。更高的吞吐量意味着能够服务更多的用户,我们可以看到当XQA启用时,Y轴上的TPOT趋于平稳。
初步测量的性能,可能会有变动。TPOT 越低越好。FP8,8xH100 GPUs,单引擎,ISL/OSL: 512/2048,BS: 1 - 256,TensorRT-LLM v0.8a
在相同的延迟预算内,使用XQA在H200上的Llama-70B吞吐量提高了2.4倍
H200 2.4x 带 XQA
模型 |
图形处理器 |
输入长度 |
输出长度 |
无XQA的吞吐量(tok/s/GPU) |
吞吐量 w/ XQA (tok/s/GPU) |
加速 |
|---|---|---|---|---|---|---|
Llama-70B |
1 |
128 |
2048 |
1,227 |
2,941 |
2.4倍 |
8 |
128 |
2048 |
13,232 |
25,300 |
1.9倍 |
关闭
这些改进将很快发布在main分支中,并将包含在v0.8版本中。
有关H200的更多信息,请参阅H200公告博客。
吞吐量计算为每个GPU每秒的输出令牌数。
out_tps=output_seqlen*batch_size/total_latency/tp
术语表: | DP = 数据并行 ISL = 输入序列长度 | PP = 管道并行 | OSL = 输出序列长度 | OOM = 内存不足 | TP = 张量并行