两个关键速度指标
解码吞吐量是指模型开始回答后生成令牌的速度,以每秒令牌数(tok/s)衡量。它决定了聊天回复或代码补全在屏幕上出现的速度。 预填充延迟是指模型在处理输入并生成第 1 个令牌之前所需的时间,以每令牌毫秒数(ms/token)衡量。它决定了按下回车键与看到输出开始流式传输之间的停顿时间。 不同的工作负载关注不同的速度:首令牌时间(TTFT)结合了预填充延迟以及任何调度或队列延迟。对于本地硬件上的单个用户,TTFT 大致等于预填充时间。在并发负载下,排队会独立增加 TTFT。
精度对速度的影响
精度控制模型中每个权重所占用的位数。位数越少意味着权重越小,这会改变 2 件事:模型占用的内存量以及 GPU 每生成一个令牌所读取的数据量。精度如何不同地影响解码与预填充
这是关键见解:解码和预填充触及不同的硬件瓶颈,因此相同的精度变化对它们的影响不均等。解码受内存带宽限制
在解码期间,模型每次生成 1 个令牌。对于每个令牌,它从内存中读取整个权重矩阵,并对每个权重执行少量计算。GPU 大部分时间都在等待数据从内存到达,而不是进行数学运算。 权重更小 = 读取的数据更少 = 解码更快。加速比大致与内存减少量成正比:- FP16 → FP8:解码速度提升约 1.8-2.0x
- FP16 → INT4:解码速度提升约 2.5-3.5x
- FP16 → NVFP4:解码速度提升约 2.5-3.0x
预填充受计算能力限制
在预填充期间,模型并行处理所有输入令牌。它只读取一次权重,但在所有提示词令牌上执行大型矩阵乘法。GPU 大部分时间都在进行数学运算,而不是等待内存。 量化对预填充的帮助较小,因为瓶颈在于数学运算,而非权重读取:- FP16 → FP8:预填充速度提升约 1.3-1.5x
- FP16 → INT4:预填充速度提升约 1.2-1.5x
- FP16 → NVFP4:预填充速度提升约 1.3-1.5x
实际影响
随着精度降低,解码的提升速度快于预填充。在 INT4 下,一个在 FP16 下感觉迟缓的模型可以快速生成文本,但在长提示词上仍会有明显的停顿。这种不对称性驱动了以下针对特定工作负载的建议。不同精度下的功耗
较低精度通过 2 个原因降低功耗:更少的内存读取(内存访问主导能耗)和更简单的算术运算(INT4 乘法比 FP16 乘法成本更低)。DGX Spark 功耗范围
DGX Spark 的 GB10 芯片在 Grace CPU 和 Blackwell GPU 之间共享约 40W 的 TDP。以下是推理期间观察到的功耗范围:消费级 GPU 功耗预期
24/7 全天候服务的成本
对于持续以解码负载运行的 DGX Spark:
对于 RTX 4090 等每天运行 10 小时的消费级 GPU:
基准测试方法
在您自己的环境上运行这些测试,以查看精度如何影响您的特定模型和硬件。测量解码吞吐量
从短提示词生成固定数量的输出令牌,并测量每秒令牌数。测量预填充延迟
计时模型在不同提示词长度下生成第 1 个令牌所需的时间。测量功耗
报告内容
为您测试的每个精度级别填写此表:实际决策表
选择与您主要工作负载匹配的行:Why not always use INT4?
Why not always use INT4?
INT4 量化(GPTQ、AWQ、Q4_K_M)会明显降低较小模型和指令遵循任务的质量。在参数少于 13B 的模型上,FP16 和 INT4 之间的质量差距可能会降低输出质量。在 70B+ 模型上,差距缩小,因为模型有更多的容量来吸收量化噪声。在确定之前,请测试您的特定模型。
Does KV cache precision affect these numbers?
Does KV cache precision affect these numbers?
是的。FP8 KV 缓存(在 vLLM 中使用
--kv-cache-dtype fp8 设置)独立于权重量化,将 KV 缓存内存减半。它对解码速度影响最小,但可以让您容纳更长的上下文或更多并发用户。详见 DGX Spark 内存调优 中的尺寸表。How does context length change decode speed?
How does context length change decode speed?
解码在每个令牌上读取整个 KV 缓存。较长的对话会构建更大的缓存,因此随着上下文增长,解码速度会减慢。在相同硬件上,一个在 4K 上下文下的模型可能以 40 tok/s 生成,但可能降至 25 tok/s(当上下文达到 32K 时)。详见 KV 缓存与上下文 中的机制。
快速基准测试命令
使用这些作为起点,以比较单个模型上的不同精度。vLLM 基准测试套件
llama.cpp 基准测试
Ollama 内置评估
跨精度比较
在每个精度下运行相同的提示词,并将结果记录在表中:下一步
DGX Spark memory tuning
KV 缓存尺寸、批处理权衡以及 128GB 统一内存的调优参数。
vLLM on DGX Spark
安装、NVFP4 配置和最佳启动命令。
Benchmark a deployment
通过 Tokios 进行端到端测试——延迟、流式传输和客户端比较。
Quantization concepts
GPTQ、AWQ、GGUF 和量化权衡的更深入解释。