Blackwell 与 PDL 性能提升
摘要
Llama.cpp 现已支持适用于 Blackwell GPU 的 Nvidia 程序化依赖启动 (PDL),在 Token 生成时可带来 5-10% 的性能提升。该功能默认未启用,需通过编译标志开启。
Llama.cpp 近期引入了对程序化依赖启动 (PDL) 的支持,这是 Nvidia GPU(计算能力 >= 90,不包括 ADA)如 Blackwell 的新特性。(参见 PR 22522。)简言之,PDL 能更高效地执行内核,从而提升性能。目前该功能默认未启用,如果你不了解它,很可能就会错过。要启用 PDL,需要使用 **-D GGML\_CUDA\_PDL=ON** 编译标志来构建 Llama.cpp,且目前并非所有内核都支持 PDL,未来随着更多内核启用 PDL,性能还有进一步提升空间。(如果后期需要禁用 PDL,可以在启动 llama.cpp 前执行 **export GGML\_CUDA\_PDL=0**。)
# 基准测试
|模型|pp512|tg128|pp512 @ PDL|tg128 @ PDL|预填充提升 %|生成提升 %|
|:-|:-|:-|:-|:-|:-|:-|
|Qwen 3.6 35B.A3B MXFP4|5412.39 ± 62.58 |172.72 ± 3.94 |5416.55 ± 58.92 |183.03 ± 0.93 |0|5.97 |
|Qwen 3.6 35B.A3B UD-Q5\_K\_XL|4564.77 ± 47.55 |162.24 ± 6.67 |4582.22 ± 45.65 |177.11 ± 1.29 |0|9.17 |
|Gemma 4 26B.A4B NVFP4|6728.74 ± 89.56 |107.39 ± 2.44 |6850.46 ± 97.86 |112.71 ± 0.38 |1.8|4.95 |
|Qwen 3.6 27B NVFP4|2687.16 ± 70.18|41.31 ± 0.03|2708.97 ± 55.56|42.22 ± 0.05|0|2.2|
(所有测试均使用 b9282 运行,结果为在 RTX Pro 4500 Blackwell 32GB 上两次测试中的最佳值。)
# 结论
预填充阶段几乎没有差异,但根据上述测试,Token 生成平均有 5% 到 6% 的性能提升。根据 PR,Token 生成预计有 4% 到 10% 的改进。如前所述,构建时该功能默认未启用,如果你使用的是 Blackwell,这相当于一个免费性能提升,值得一试。
相似文章
构建9254修复了我的TG回归问题,并为NVIDIA GPU添加了PDL支持
llama.cpp的构建9254修复了一个token生成回归问题,并添加了对NVIDIA GPU的PDL(程序化依赖启动)支持,在新硬件上token生成速度提升高达10%。
llama.cpp b9095 发布!支持双 Blackwell PCIe 显卡无需 NCCL 的张量并行
llama.cpp b9095 版本引入了针对双 Blackwell PCIe GPU 的免 NCCL 张量并行功能,使得在不依赖 NCCL 的情况下也能实现高效的多 GPU 推理。
Llama.cpp PR 带来 8% 速度提升
一个 llama.cpp PR 将采样从 CPU 移至 GPU,在 RTX 5090 上为 Qwen3.6-35B 推理带来 8% 的 token 速度提升,在 Tesla P40 上约为 4%。
@coffeecup2020: 如果你的显卡支持Blackwell,请阅读!https://github.com/turbo-tan/llama.cpp-tq3… 已更新turbo4/turbo3 TQ3_4…
llama.cpp的一个分支引入了TurboQuant TQ3_4S量化方法,该方法映射到Blackwell FP4张量核心,在GB10上实现高达221%的提示处理加速,同时以Q3的大小保持接近Q4的质量。
在混合Blackwell/Ada集群上对vLLM、SGLang和llama.cpp进行基准测试
本文在混合Blackwell/Ada GPU集群上对vLLM、SGLang和llama.cpp进行长上下文预填充基准测试,发现vLLM在异构设置上显著优于其他引擎,而SGLang由于FP4支持限制,在使用Ada显卡时会崩溃。