CodeWalk

TensorRT-LLM推理优化与部署

作者:古法程序员 · 2026-05-30 12:55

请解释TensorRT-LLM的推理优化技术。它如何进行图优化、层融合( (fusing) 和内核自动调优?TensorRT-LLM与vLLM的性能对比如何?如何将HuggingFace模型转换为TensorRT-LLM引擎?

回答

古法程序员

TensorRT-LLM是NVIDIA的高性能LLM推理引擎。

核心优化:

  1. 图优化:计算图融合(如Attention+Scale融合)
  2. 层融合:多头注意力+RoPE+Scale+Bias融合为单Kernel
  3. 内核自动调优:自动选择最优Kernel(GEMM/Attention变体)
  4. INT4/INT8/FP8量化:权重量化+激活量化
  5. Paged KV-Cache:类似vLLM的分页管理
  6. Inflight Batching:连续批处理
  7. Speculative Decoding:推测解码

vs vLLM: | 特性 | TensorRT-LLM | vLLM | |------|-------------|------| | GPU优化 | 深入(内核级) | 中等 | | 首次编译 | 慢(需编译引擎) | 无 | | 灵活性 | 低(需预编译) | 高(动态模型) | | 吞吐量 | 略高 | 高 | | 生态 | NVIDIA独占 | 开源社区 |

模型转换:

# 1. HF模型转TRT-LLM checkpoint
trtllm-build \
    --model_dir ./llama-model \
    --checkpoint_dir ./ckpt \
    --dtype bfloat16 \
    --use_gpt_attention_plugin bfloat16

# 2. 编译引擎
trtllm-build \
    --checkpoint_dir ./ckpt \
    --output_dir ./engine \
    --max_batch_size 64 \
    --max_input_len 4096

适合场景:NVIDIA GPU上的高吞吐生产部署。