ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

ECDF:怎么看大模型 TTFT 的 P50、P90 和 P99?

ECDF:怎么看大模型 TTFT 的 P50、P90 和 P99?

文章目录

    • 图表达什么?
    • 一般使用场景
    • 一句话总结

ECDFEmpiricalCumulativeDistributionFunction 的缩写,中文通常翻译为:经验累积分布函数

在大模型性能测试中,只看平均 TTFT 往往不够。

ECDF(经验累积分布图)更适合回答:

有多少比例的请求,能在某个时间内拿到第一个 Token?

图表达什么?

横轴是TTFT(Time To First Token),纵轴是累计请求比例

本例模拟 1000 个 LLM 请求,实际得到:

  • P50 = 1.26s:50% 的请求在 1.26 秒内返回首 Token;
  • P90 = 3.86s:90% 的请求在 3.86 秒内返回;
  • P95 = 5.28s
  • P99 = 8.54s

ECDF 越靠近左上角,通常意味着整体 TTFT 越低、尾延迟越好。

图中 P50 只有 1.26 秒,但 P99 已经达到 8.54 秒,说明:

大部分请求体验不错,但少量慢请求形成了明显的尾延迟。

这也是为什么大模型性能分析不能只看平均值。

核心代码:

# 1. 把 TTFT 从小到大排序x=np.sort(ttft)# 2. 为每个 TTFT 计算累计比例y=np.arange(1,len(x)+1)/len(x)# 3. 画 ECDF 曲线ax.step(x,y,where="post",linewidth=2)

一般使用场景

ECDF 很适合分析:

  • TTFT;
  • TPOT;
  • 请求总延迟;
  • 输出 Token 速率;
  • KV Cache 传输耗时;
  • Prefill 时间;
  • 排队等待时间。

尤其适合比较不同模型、不同并发或不同推理框架的P50 / P90 / P95 / P99

一句话总结

ECDF 能同时展示大模型请求的整体延迟分布和尾延迟指标

返回列表