推理加速实战:量化 / TensorRT-LLM / 投机解码让 VPS 上的 LLM 快 3 倍(2026)

实测讲解在 GPU VPS 上用 FP8/INT4 量化、TensorRT-LLM 融合核与投机解码、vLLM 连续批处理给 LLM 推理提速,含 H100/H200 实测数据与每百万 token 成本。

延伸阅读

更多相关攻略推荐:【API 中转 02】ChatGPT/Claude API 中转 V炒币/外汇 EA 机器人用什么 VPS?低延迟到交易所的选机指南量化/EA 交易要低延迟:跑外汇机器人该选哪台 VPS?就近机房实测2026 多语言/多区域 SEO 技术栈:hreflang+CDN Tailscale 连上了却卡成狗?自建 DERP/ZeroTier

为什么 2026 年推理优化从 FLOPS 转向每 token 成本

过去买 GPU 看的是算力(FLOPS),但到了 2026 年,NVIDIA 自己的叙事已经悄悄换成了 cost-per-token(每 token 成本)。原因很简单:模型越大、请求越多,显存和 GPU 时长的账单就越吓人。真正决定你一个月花多少钱的,不再是峰值算力,而是「用同样一张卡能稳定吐出多少 token」。

好消息是,软件层的优化比换更贵的卡来得更快。本文聚焦三件事:量化(FP8 / INT4)、TensorRT-LLM 的融合核与投机解码、以及 vLLM 的连续批处理。这三者叠加,在同样的 H100 / H200 上把吞吐翻 2 到 4 倍是很常见的,延迟敏感场景甚至能到 3 倍以上。

下面所有数据都来自 2026 年的实测与官方资料,命令可直接复制到你的 GPU VPS 上跑。我们也会顺便聊聊租用哪家 GPU VPS 更划算——比如 Vultr 的 H100 / H200 实例、以及 DMIT 的高带宽机型,都是国人常用的选择。

方案一:量化 FP8 与 INT4(最省事的第一步)

量化是性价比最高、改动最小的加速手段。它的思路是把模型权重和激活从 FP16 压到低比特,显存占用直接减半,显存带宽压力也跟着减半,token 生成自然更快。

FP8:近乎无损,显存直接砍半

H100 和 H200 都带专门的 FP8 Tensor Core。实测表明 W8A8-FP(权重和激活都 8 位浮点)几乎是无损的,精度损失在评测误差范围内。相比 BF16,FP8 推理在同质量下大约快 2 倍,显存占用减半。对绝大多数生产负载,FP8 是 2026 年的首选。

INT4:用精度换显存,让大模型塞进小卡

当显存不够、必须把一个 70B 模型塞进更少的卡时,就用 W4A16(4 位权重 + 16 位激活)。常见方法有两种:GPTQAWQ。2026 年的结论很明确:

  • AWQ 在 vLLM 里因为有更优的 CUDA kernel,实际表现常常优于 GPTQ;
  • INT4 的精度损失比早年预期小得多,很多任务能逼近 8 位量化的水平;
  • 复杂推理任务用 4 位要谨慎,上线前务必用你自己的业务数据跑一遍评测。

经验法则是:H100 / H200 上优先 FP8(无损),A100 上评估 INT8,只有当显存真的装不下时才上 INT4(AWQ)。

在 vLLM 里一行命令开量化

vLLM 的好处是不用重新编译,改个参数就能换量化方式。下面是把 Llama-3.3-70B 用 FP8 跑起来的最小命令:

python -m vllm.entrypoints.openai.api_server \
  --model meta-llama/Llama-3.3-70B-Instruct \
  --tensor-parallel-size 2 \
  --gpu-memory-utilization 0.85 \
  --max-model-len 8192 \
  --enable-prefix-caching \
  --enable-chunked-prefill \
  --quantization fp8

如果是 INT4(AWQ)模型,只需把 --quantization fp8 换成 --quantization awq,并且模型路径指向你已经量化好的权重即可。注意:Vultr 的 H100 实例单卡 80GB,跑 70B 的 FP8 通常要张量并行 2 卡;DMIT 的高带宽机型在长上下文并发上更稳。

方案二:连续批处理与 PagedAttention(vLLM 的看家本领)

静态批处理是早期框架的默认做法:凑齐一批请求才开始生成,必须等最慢的那个跑完才能收下一批。可变长度的负载下,短请求跑完后空出来的算力就白白浪费了。

连续批处理(iteration-level batching) 解决了这个问题:全局调度器盯着每条请求的生成状态,只要有请求生成完、腾出槽位,立刻把队列里的新请求塞进去,GPU 几乎一直满负荷。vLLM 靠 PagedAttention 把 KV 缓存当成虚拟内存的分页来管理,把显存碎片从 60% 到 80% 降到 4% 以下。

实测收益很直观:

  • 连续批处理单独就能把吞吐相对静态批处理提升 5 到 10 倍
  • 配合 FP8 量化,相对 FP16 静态批处理的朴素基线,整体能到 15 到 28 倍
  • GPU 算力利用率从不到 50% 稳定拉到 90% 以上。

    代价是:批内异构会让 P95 / P99 延迟略升。如果你的聊天接口有硬实时 SLO(比如 P95 低于 500ms),记得先在你目标吞吐下压一遍延迟。

    方案三:TensorRT-LLM 融合核 + 投机解码(延迟杀手锏)

    如果你追求的是最低延迟、可预测的响应时间,TensorRT-LLM 是 NVIDIA 官方的金字招牌。它的核心优化有三层。

    融合核(Fused Kernel)

    把多个独立计算合并成一次 GPU kernel,减少中间结果在显存里的读写。比如 Attention 里的 QKV 投影、Softmax、Scaled Dot-Product 三步,在 TensorRT-LLM 里融合成一次调用,延迟大约降 40%

    投机解码(Speculative Decoding)

    这是 2026 年最火的加速技术。原理是:用一个 5 到 10 倍更小 的 draft 模型(比如 8B)先「猜」出接下来几个 token,再由大模型(比如 70B)在一次前向传播里并行验证。猜得准,你就用一次大模型的算力换来好几个 token。

    提速完全取决于 接受率(acceptance rate)

    • decode 密集型负载(长输出、短提示),draft 接受率高于 0.7 时,端到端提速 1.5 到 3 倍
    • 代码生成、结构化文档、摘要类任务收益最大;
    • 在 H200 上跑 Llama-3.3-70B,NVIDIA 宣称投机解码带来最高 3.55 倍 吞吐提升(与 in-flight batching、KV 缓存、FP8 叠加);
    • 创意生成、高温度、输出很随机时接受率会掉到 0.5 以下,此时验证开销反而得不偿失,要关掉投机解码。

    draft 模型最好和目标模型同族(比如 8B 给 70B 当草稿),跨族配对常常比不投机还慢。

    TensorRT-LLM 投机解码示例

    from tensorrt_llm.llmapi import LLM, SamplingParams
    from tensorrt_llm.llmapi import SpeculativeDecodingParams
    
    spec_config = SpeculativeDecodingParams(
        draft_model_path="meta-llama/Llama-3.1-8B",
        num_speculative_tokens=5,
    )
    
    llm = LLM(model="meta-llama/Llama-3.3-70B-Instruct",
              speculative_decoding_config=spec_config)
    
    outputs = llm.generate("解释一下什么是连续批处理",
                           sampling_params=SamplingParams(max_tokens=256))
    print(outputs[0].text)
    

    注意代价:每换一个模型配置,TensorRT-LLM 都要重新编译优化引擎,耗时从几十分钟到数小时。模型稳定、跑在规模上、要榨干每一个 token 每秒时,它最值得。

    组合拳:三者叠加能到多少

    这些技术是可以叠加的,但顺序很重要:先量化,再开连续批处理,最后上投机解码。

    • FP8 量化:最简单,单独收益最大,先把硬件需求砍半;
    • 连续批处理 + PagedAttention:这是换引擎(vLLM / SGLang)就能白拿的,吞吐再翻倍;
    • 前缀缓存:如果你的负载有共享上下文(系统提示、RAG 上下文、多轮对话),开启后延迟和吞吐再上一个台阶;
    • 投机解码:放在最后调,因为它最吃调参,且收益在基线延迟被前面手段压下来后才最明显。

    综合下来,在 H100 上把 FP8 + FlashAttention + 连续批处理 + 投机解码全部打开,相对朴素 FP16 静态批处理,成本效率能提升 5 到 8 倍。对一个原本每月烧 2 万美元 GPU 账单的团队,优化后可能降到 3 千美元做同样的事。

    成本账:每百万 token 到底多少钱

    落地到钱包。2026 年的第三方测算显示:

    • 自托管 Llama-3-70B,在消费级到专业级硬件上,成本约 2.68 到 3.57 美元 / 百万 token
    • 云厂商的定制推理芯片(如 AWS Inferentia 2)约 12.50 美元 / 百万 token,反而更贵,说明自托管 + 优化在大规模下优势明显;
    • GPU 实例行情:H100 约 2 美元 / GPU 小时,H200 约 2.60 美元 / GPU 小时(不同供应商浮动)。

    粗略算一笔:假设一张 H100 一小时 2 美元,跑出 12500 token / 秒(vLLM 典型值),一小时就是 4500 万 token,折合 每百万 token 约 0.016 美元 的纯算力成本——比上面 2.68 美元还低,说明你只要把 GPU 利用率拉满(连续批处理功不可没),单位成本还能再压一个数量级。

    GPU VPS 怎么选

    要跑这套优化栈,你需要一张带 FP8 的 Hopper 卡(H100 / H200)或至少 A100。国内用户常选的两家:

    • Vultr:按需小时计费,H100 / H200 实例直接可选,分布节点多,适合先小规模验证再放量;
    • DMIT:高带宽、网络稳的机型,在长上下文高并发、需要把显存和带宽都吃满的场景下更从容。

    小团队建议先用 1 到 2 张 H100 把 FP8 + 连续批处理跑顺,确认量上来、接受率够高,再考虑上 TensorRT-LLM 投机解码和 H200。

    选型建议:按预算和场景挑方案

    • 预算紧、要最快上线:vLLM + FP8,半小时起一个 OpenAI 兼容接口,零编译;
    • 显存不够装大模型:上 INT4(AWQ),少卡装大模,先拿业务数据评测精度;
    • 追求最低延迟、模型稳定:TensorRT-LLM + 投机解码,接受编译成本换 2 到 3 倍提速;
    • 长上下文、多轮对话:开前缀缓存 + 分块预填充,别让长 prompt 饿死短请求;
    • 吞吐优先、并发高:连续批处理拉满,把 GPU 利用率顶到 90% 以上。