结果分析¶
跑完 Vdbench 后,先不要急着看所有文件。新手只需要先抓住几个最关键的报告,确认三件事:
- 这次到底跑了什么
- 跑出来的速率和时延大概怎样
- 参数文件是否按自己的预期被解析和执行
先看什么¶
建议按下面的顺序看结果目录里的文件:
summary.htmltotals.htmlflatfile.htmlhistogram.htmlparmfile.htmlparmscan.html
如果是文件系统测试,还可以继续看锚点、主机或 FSD/FWD 相关页面;如果是块设备测试,还可以继续看 sd*.html 和 sd*.histogram.html。
summary.html¶
这是最适合第一眼查看的总览页。
你通常可以在这里快速确认:
- 本次执行是否成功结束
- 主要报告文件的入口链接
- 每个
RD的总览结果 - 是否存在明显错误或异常提示
如果你只想先判断“这次测试是不是基本跑对了”,优先看它。
totals.html¶
这个页面更适合看总量结果。
重点关注:
- 总
IOPS或总Ops - 吞吐量(
MB/sec) - 平均响应时间(
resp) - 队列深度、读写比例等关键统计
对新手来说,这个页面的用途是快速判断:
- 限速测试是否真的被限制在预期范围
iorate=max或fwdrate=max时大概跑到了什么水平- 改了线程数或块大小后,整体结果有没有明显变化
flatfile.html¶
这是后续做整理、对比、画图时最重要的原始数据来源之一。
它适合:
- 导出到表格工具做对比
- 配合
parse/parseflat类工具做筛选 - 看每个时间区间的细粒度结果
如果你只是人工看结果,第一次不用先啃它;但只要准备做多轮测试对比,它就会很有用。
histogram.html¶
这个页面用于看时延分布,而不只是平均值。
什么时候特别值得看:
- 平均响应时间看起来正常,但业务体感很差
- 你怀疑有尾延迟问题
- 你在做曲线压测,想知道高负载下时延是均匀上升,还是已经出现长尾
平均值只能告诉你“整体大概怎样”,直方图才能告诉你“慢请求是不是正在变多”。
parmfile.html¶
这个页面会保存本次执行时使用的参数文件内容。
它很适合回答一个非常实际的问题:
我这次到底是拿哪份脚本、哪组参数跑出来的?
当结果目录很多,或者你在命令行里用了变量替换、include=、不同的 -o 输出目录时,这个文件很重要。
parmscan.html¶
这个页面用于看参数解析过程。
它特别适合排查下面这些问题:
- 某个参数为什么没有生效
- 某个缩写为什么被识别错了
include=到底按什么顺序被展开了- 参数扫描在什么位置报错或停止
只要你怀疑“脚本写得没问题,但 Vdbench 执行得不对”,这个文件就值得优先看。
新手常见查看顺序¶
一个更实际的习惯是:
- 看
summary.html,确认测试成功且主结果正常 - 看
totals.html,确认速率、吞吐、时延大致符合预期 - 看
parmfile.html,确认本次使用的脚本内容没跑偏 - 参数有疑问时看
parmscan.html - 想做更细的分析时再看
flatfile.html和histogram.html
什么时候说明“跑错了”¶
下面这些现象通常意味着本次结果不宜直接拿来对比:
summary.html或日志里存在明显错误parmfile.html显示的参数并不是你以为的那份脚本parmscan.html里出现参数扫描异常- 速率结果与设定值完全不在一个数量级
- 文件系统测试里先前预埋的数据结构和本次
FSD定义不一致
下一步¶
如果你已经能读懂这几个结果文件,下一步建议进入进阶营: