sskj/bench_results/eagle_grid/dspark_vs_eagle_report.md
2026-07-08 02:17:13 +00:00

7.7 KiB
Raw Blame History

DSpark vs SGLang EAGLE 投机解码对比报告

  • DSpark 结果:/data/user1/yy/bench_results/dspark_st_comparison_20260707-150649
  • EAGLE 结果:/data/user1/yy/bench_results/eagle_grid/focused
  • DSpark 模型:/data/models/DeepSeek-V4-Flash-DSpark
  • EAGLE 模型:/data/models/DeepSeek-V4-Flash
  • DSpark 后端vllm-dspark (TP=8, FP8 KV cache, spec-method=dspark)
  • EAGLE 后端SGLang (TP=8, FP8 KV cache, speculative-algorithm=EAGLE, num_steps=3, topk=1, draft_tokens=4)
  • 压测客户端:sglang.bench_serving
  • Warmup100 条

核心指标对比

Scenario Concurrency Method Total tok/s Out tok/s Req/s Mean E2E(ms) P95 E2E(ms) P99 E2E(ms) Mean TTFT(ms) P99 TTFT(ms) Mean TPOT(ms) P99 TPOT(ms)
chat_short 1 DSpark(st=5) 1094.51 397.37 2.73 365.29 743.89 782.98 64.42 174.36 2.06 3.40
chat_short 1 EAGLE 272.82 99.05 0.68 1467.67 3775.96 5175.09 223.86 405.20 7.47 19.74
chat_short 8 DSpark(st=3) 4705.85 1525.06 11.55 672.66 1269.82 1552.65 76.20 221.18 4.67 8.43
chat_short 8 EAGLE 1059.99 343.52 2.60 3043.16 7143.57 8345.08 245.91 528.86 21.41 36.02
chat_short 16 DSpark(st=5) 6282.94 2171.58 15.59 997.37 2147.86 2496.56 107.56 240.46 7.09 21.93
chat_short 16 EAGLE 1506.42 520.67 3.74 4240.11 8031.57 10192.48 236.19 438.56 29.12 54.02
chat_short 32 DSpark(st=3) 8275.55 2754.96 20.79 1497.40 2944.48 3658.90 144.47 453.29 10.72 23.97
chat_short 32 EAGLE 2461.23 819.35 6.18 4731.11 9926.81 11388.85 243.84 571.89 34.22 54.92
chat_short 64 DSpark(st=5) 9586.66 3191.43 24.09 2555.12 5387.59 6559.69 274.71 610.40 18.47 42.08
chat_short 64 EAGLE 4474.88 1489.70 11.24 5239.80 10296.02 11922.06 268.27 452.80 38.17 61.24
chat_standard 64 DSpark(st=3) 15680.46 3288.58 24.70 2483.46 4798.63 5693.88 271.41 947.15 17.93 46.05
chat_standard 64 EAGLE 6746.24 1414.85 10.63 5637.63 10693.92 12907.15 296.86 597.18 41.12 69.08
decode_heavy 1 DSpark(st=5) 673.37 531.76 0.55 1802.00 2957.04 3676.66 59.06 114.78 1.92 3.03
decode_heavy 1 EAGLE 261.35 206.39 0.22 4643.62 10452.02 18810.32 162.91 314.71 4.84 11.69
decode_heavy 32 DSpark(st=5) 7203.28 5737.73 5.52 5595.02 10412.11 12522.00 107.12 331.08 5.43 9.15
decode_heavy 32 EAGLE 2981.50 2374.90 2.28 13707.03 27159.67 30638.81 192.78 442.78 13.23 19.26
generation_standard 64 DSpark(st=3) 13363.77 6705.88 13.27 4542.22 8273.38 9355.10 190.34 813.58 9.00 15.36
generation_standard 64 EAGLE 5609.33 2814.73 5.57 11057.53 22577.31 26713.41 275.48 944.52 21.88 34.80
long_context_probe 1 DSpark(st=5) 11835.70 392.31 1.44 693.30 1172.84 1404.17 267.61 561.65 1.53 1.88
long_context_probe 1 EAGLE 5556.95 184.19 0.68 1477.16 2792.68 3836.17 238.26 618.74 4.43 8.62
long_context_probe 4 DSpark(st=5) 39893.35 1322.32 4.85 806.55 1390.87 1500.22 143.42 236.41 2.41 3.54
long_context_probe 4 EAGLE 6660.56 220.77 0.81 4777.51 9442.45 10071.75 433.60 1230.20 14.85 21.65
long_context_probe 8 DSpark(st=5) 29361.32 900.89 3.56 2223.29 4693.10 5345.72 425.03 1241.57 7.08 19.83
long_context_probe 8 EAGLE 9890.47 303.47 1.20 6232.13 16324.27 20329.21 606.76 2671.06 22.79 54.38
rag_medium 1 DSpark(st=5) 4075.47 496.09 1.76 566.58 968.90 1134.15 110.34 156.35 1.64 2.34
rag_medium 1 EAGLE 1326.02 161.41 0.57 1742.43 3804.17 3936.47 195.07 337.55 5.83 12.84
rag_medium 8 DSpark(st=5) 15838.39 1692.13 6.69 1175.26 2263.59 3106.42 154.24 352.19 4.14 8.36
rag_medium 8 EAGLE 3676.32 392.77 1.55 4908.89 11659.24 12566.81 254.65 678.44 18.53 35.36
rag_medium 32 DSpark(st=5) 27420.79 3062.92 11.91 2626.21 5182.78 6873.72 253.09 522.80 9.17 18.55
rag_medium 32 EAGLE 13268.07 1482.05 5.76 5444.98 10471.13 11990.37 337.62 2204.45 20.09 39.98
stress_standard 64 DSpark(st=3) 15225.66 3193.19 23.99 2569.66 5006.16 5831.81 261.98 710.57 18.02 36.01
stress_standard 64 EAGLE 5399.35 1132.38 8.51 6678.22 13086.21 14811.42 314.38 584.25 48.19 81.06
stress_standard 96 DSpark(st=3) 24069.73 4756.72 37.72 2433.73 4827.07 6001.29 272.61 749.99 18.04 38.52
stress_standard 96 EAGLE 8833.26 1745.65 13.84 6792.34 14000.22 16722.55 360.14 959.71 52.90 96.70
stress_standard 128 DSpark(st=3) 29828.36 5942.48 47.45 2581.42 5162.16 6222.01 298.69 970.61 19.09 40.93
stress_standard 128 EAGLE 13189.80 2627.70 20.98 5960.86 12256.06 14219.75 416.12 2153.71 47.20 81.35

吞吐 Winner 统计(按 Total tok/s

Scenario Concurrency Winner DSpark Total tok/s EAGLE Total tok/s 提升
chat_short 1 DSpark(st=5) 1094.51 272.82 301.18%
chat_short 8 DSpark(st=3) 4705.85 1059.99 343.95%
chat_short 16 DSpark(st=5) 6282.94 1506.42 317.08%
chat_short 32 DSpark(st=3) 8275.55 2461.23 236.24%
chat_short 64 DSpark(st=5) 9586.66 4474.88 114.23%
chat_standard 64 DSpark(st=3) 15680.46 6746.24 132.43%
decode_heavy 1 DSpark(st=5) 673.37 261.35 157.65%
decode_heavy 32 DSpark(st=5) 7203.28 2981.50 141.60%
generation_standard 64 DSpark(st=3) 13363.77 5609.33 138.24%
long_context_probe 1 DSpark(st=5) 11835.70 5556.95 112.99%
long_context_probe 4 DSpark(st=5) 39893.35 6660.56 498.95%
long_context_probe 8 DSpark(st=5) 29361.32 9890.47 196.86%
rag_medium 1 DSpark(st=5) 4075.47 1326.02 207.35%
rag_medium 8 DSpark(st=5) 15838.39 3676.32 330.82%
rag_medium 32 DSpark(st=5) 27420.79 13268.07 106.67%
stress_standard 64 DSpark(st=3) 15225.66 5399.35 181.99%
stress_standard 96 DSpark(st=3) 24069.73 8833.26 172.49%
stress_standard 128 DSpark(st=3) 29828.36 13189.80 126.15%

关键发现

  • 对比点数18
  • EAGLE 胜出0 个
  • DSpark 胜出18 个

结论在相同负载下vllm-dspark 的综合吞吐优于 SGLang EAGLE。

延迟与稳定性观察

  • 平均 Mean E2E 比值EAGLE / DSpark3.09
  • 平均 Mean TPOT 比值EAGLE / DSpark3.21
  • 平均 Mean TTFT 比值EAGLE / DSpark1.81

比值 < 1 表示 EAGLE 更快;> 1 表示 DSpark 更快。

优化建议

  1. 如果以吞吐为首要目标,当前配置下 vllm-dspark 更优,建议继续使用 --spec-tokens 并根据并发选择 3高并发或 5低并发/长上下文)。
  2. SGLang EAGLE 本次表现不佳,平均延迟和 TPOT 均显著高于 DSpark如需进一步评估 EAGLE可尝试调整 --speculative-num-steps--speculative-eagle-topk--speculative-num-draft-tokens 或更换 MOE runner backend并确认是否已完成 sglang.compile_deep_gemm 预编译。
  3. 注意两套后端的实现差异CUDA graph、KV cache 管理、调度器、draft 模型架构)会显著影响不同并发和输入长度下的表现,建议按实际业务负载做最终选型。