PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

从数学角度谈谈为什么AS SSD Benchmark跑分无意义

[复制链接]
跳转到指定楼层
#
仙賢戀軒 发表于 2013-5-18 23:17 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
点击数:47506|回复数:74
本帖最后由 仙賢戀軒 于 2013-5-18 23:47 编辑

各位好。最近论坛里一直有网友在纠结AS SSD Benchmark的跑分,今天我想来从数学的角度谈谈为什么纠结跑分是没有意义的。

不理解如下数学统计的也无妨,可直接至文末红粗结论处。

首先,我们必须明确AS SSD的跑分是怎么计算出来的。



借用GT128评测中的AS SSD跑分来进行讨论。

根据一份AS SSD官方文档给出的解释,AS SSD总分=持续写入速度x0.15+持续读取速度x0.1+随机4K写入速度x2+随机4K读取速度+4K-64读取速度+4K-64写入速度x1.5

然而随着版本更新,上述算法已经不对应1.7版本的AS SSD了。然而我们依旧可以从公式里看到,总分与6个测试指标(持续写入,持续读取,4k写入,4k读取,QD64写入,QD64读取)是呈线性关系的,那么我们不妨可以探究一下1.7版本的AS SSD是如何评分的。

第一步自然是收集数据。

由于评分是受到6个变量所组成的线性关系影响,因此理论上只要7组以上的数据就可以进行统计回归。这里我从论坛测评以及部分玩家处收集了8组数据如下:



由于数据较简单,只需要用excel来进行简单的线性回归计算即可,结果如下:



对这个统计结果进行一个简单的解释:

回归统计栏中,Multiple(其实是Multiple R,没有显示)表示线性回归系数,R Square表示拟合系数,Adjusted(其实是Adjusted R Square)表示调整后的拟合系数,这三个指标越接近1就表示拟合的结果越好。因此这次拟合的结果是十分顺利的。

从coefficient这里可以看到拟合结果的系数,经过四舍五入,其结果可以整理为:AS SSD总分=-1+0.08x持续读取+0.16x持续写入+2x4k读取+1x4k写入+1.5xQD64读取+1xQD64写入

这里可以看到公式开头有个-1,考虑到其并没有什么实际意义,且对计算结果影响不大,姑且直接舍弃掉,即公式整理后为:

AS SSD总分=0.08x持续读取+0.16x持续写入+2x4k读取+1x持续写入+1.5xQD64读取+1xQD64写入

这个公式有多少可信度呢?我们暂且先不议,利用上述同样的方法,可以统计AS SSD的写入成绩公式和读取成绩公式,这里只发统计结果,过程不再赘述。









这样我们就得到结论:

读取分=0.1x持续读取+1x4k读取+1xQD64读取;

写入分=0.1x持续写入+1x4k写入+1xQD64写入;

最后,我们来验证这三条公式是否正确:



这里的read data,write data和total data列是原来数据的分数,read cal,write cal和total cal是以上述统计结果的公式计算得到的值,error表示以原始数据位基准的偏离度。可以看到,所有的计算结果偏离度都没有超过1%,也就是说基本可以认为公式是正确的。至于细微误差的原因,这里无从查起,想来应该是由于软件内部的算法在某些步骤上进行了四舍五入的简化,不过无伤大雅。

那么接下来我们来看看为什么说AS SSD的跑分是无意义的。

根据刚才我们求出的公式,我们再用GT128测评中的数据计算一下:

AS SSD总分
=0.08x持续读取+0.16x持续写入+2x4k读取+1x4k写入+1.5xQD64读取+1xQD64写入
=0.08x420.5+0.16x179.43+2x35.78+1x96.08+1.5x268.55+1x140.45
=(0.08x420.5+0.16x179.43)+(2x35.78+1x96.08)+(1.5x268.55+1x140.45)
=62.3488+167.64+543.275
=773.2638≈773

从这里我们可以看出,773的总分里,62分来自于持续读写表现,167分来自于4k读写表现,543分来自于QD64读写表现,其中QD64的性能占了半壁江山。

而对于一个普通的SSD而言,QD1就可以提供大约5000~8000的IOPS,在家用环境这种压力不大的情况下是完全足够的,因此QD64的读写表现快慢对家用环境是完全没有意义的,而这个性能却占了总分的大部分权重。

再回到GT128这个例子,如果268.55MB/s的QD64读取速度提升10%至295.405MB/s,其总分将会提高约40分;这相当于持续读取速度提高500MB/s或4k读取速度提高20MB/s才能带来的跑分提高。而QD64读取速率增加10%对于日常使用的提升可以说是几乎没有;但持续读取速率提高500MB/s或4k读取提高20MB/s对日常操作的提升相比却是大相径庭的。

总结以上,在AS SSD的跑分算法中,QD64的读写性能占了过大的权重,导致QD64的读写速率几乎直接左右了这块盘的跑分高低;而QD64的读写性能对于日常使用情况而言,却是毫无意义的。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

参与人数 12活跃度 +101 收起 理由
mlpas + 1 很给力!
Quber + 5 很给力!
bssharp + 5 太夸张了...
jianghanpeng + 5 一直就觉得这货的qd64是坑爹。。.
gmx168 + 50 很给力!
donnyng + 5 神马都是浮云
px002 + 5 我很赞同
zxy356 + 5 很给力!
nighttob + 5 AS SSD要变成下个ATTO了?
ggxuelei + 5 很给力!
liaobot + 5 我只看最后总结
einstein86 + 5 很给力!

查看全部评分

74#
guang3000 发表于 2013-8-8 16:38 | 只看该作者
最好有一款软件,安装了后能长驻内存中,统计各种大小文件的读取写入数,只要几万用户用上几个月,什么数据都出来了,然后再将这个比例加入SSD测试软件中,相信会有好的改善
73#
James007ss 发表于 2013-7-18 16:54 | 只看该作者
本帖最后由 James007ss 于 2013-7-18 16:57 编辑
仙賢戀軒 发表于 2013-7-18 16:37
这个问题一两句话比较难说清楚

简单概括一下,MTBF=1/λ是对的,但是后面的算法是错的。

http://zh.wikipedia.org/zh/%E6%8C%87%E6%95%B0%E5%88%86%E5%B8%83

帮仙仙小科普一下,上面是指数分布的wiki解释,所以MTBF的意思指的是所有现存的这个型号的硬盘,连续工作时间(所有盘的时间加总)中,出现故障的时间间隔。
72#
仙賢戀軒  楼主| 发表于 2013-7-18 16:37 | 只看该作者
wonderful 发表于 2013-7-18 14:59
今天看到关于MTBF的数学解释,说MTBF=1/λ。100万小时的MTBF,表示其故障率为1/(100万小时/24小时/365天) ...

这个问题一两句话比较难说清楚

简单概括一下,MTBF=1/λ是对的,但是后面的算法是错的。
λ是指数分布,不是简单的除法

71#
wonderful 发表于 2013-7-18 14:59 | 只看该作者
今天看到关于MTBF的数学解释,说MTBF=1/λ。100万小时的MTBF,表示其故障率为1/(100万小时/24小时/365天)=1/114,即约为0.9%。LZ看可合理?
70#
wonderful 发表于 2013-7-17 09:40 | 只看该作者
羡慕数学家!
69#
wds186 发表于 2013-7-15 23:24 | 只看该作者
很给力 学习了
68#
doras 发表于 2013-7-14 00:35 | 只看该作者
数学0分的泪目而过。
67#
peter1815 发表于 2013-6-20 03:28 | 只看该作者
好专业呀
66#
mion 发表于 2013-5-23 00:37 | 只看该作者
steam-cs 发表于 2013-5-22 14:37
上学和刚刚工作的时候,还玩过单片机,现在连怎么编程都忘了。岁月不饶人啊!不管学过什么,只要不用,就是 ...

也不能这么说,学过和没学过区别还是很大的
学过的再捡起来肯定比没学过的从头学快不少
65#
wusuoweishaoye 发表于 2013-5-22 22:26 | 只看该作者
我从来只关心各子项成绩,总分从来不关注
64#
James007ss 发表于 2013-5-22 16:32 | 只看该作者
vwpvwp 发表于 2013-5-22 16:14
非常关心:我们普通用户,到底应该关注哪个数据?4k读写?

基准测试更多的是反映SSD本身的各种特质,如果作为普通用户,你只希望关心实际应用的表现,那基准测试(ASS、CDM、HDT等等)的各项成绩,都没有很大的实际意义,PCM7的成绩给你的参考意义反而更大得多。
63#
vwpvwp 发表于 2013-5-22 16:14 | 只看该作者
非常关心:我们普通用户,到底应该关注哪个数据?4k读写?
62#
steam-cs 发表于 2013-5-22 14:37 | 只看该作者
上学和刚刚工作的时候,还玩过单片机,现在连怎么编程都忘了。岁月不饶人啊!不管学过什么,只要不用,就是白学 !
61#
toseiba 发表于 2013-5-21 22:13 | 只看该作者
重来就没相信过 AS SSD 的跑分。
60#
cwjragnarok 发表于 2013-5-21 15:49 | 只看该作者
James007ss 发表于 2013-5-21 13:13
单纯的从理论上面说,你的说法并非不正确。

http://www.pceva.com.cn/article-1357-3.html

是的,当然我说的那个也是说理论性能,本来AS SSD的基准测试就是纯理论形。现在买ssd我基本都比较侧重PCMark7的各项成绩了。
59#
James007ss 发表于 2013-5-21 13:13 | 只看该作者
本帖最后由 James007ss 于 2013-5-21 13:15 编辑
cwjragnarok 发表于 2013-5-21 10:07
但是我有疑问了,家用还是能用到qd4左右的。那么qd64高我能否理解成每个队列深度提升的幅度会比qd64低的高 ...

单纯的从理论上面说,你的说法并非不正确。

http://www.pceva.com.cn/article-1357-3.html
http://www.pceva.com.cn/article-1357-6.html

从PCEVA的一些评测成绩可以看出,一些情况下是符合你的说法。在某些特定的条件下,你甚至可以直接把单QD成绩乘QD深度(QD4就乘4)来得知特定QD深度的理论性能

但要注意,我这里说的是理论性能,不是实用性能,例如以开车为例,你买的法拉利极速可以达到300km/h,这是这车的理论速度,但若你在大塞车的马路上开它,那你的实用速度很可能只有3m/h;换一个例子,一条生产线理论上每天能生产最多10000件产品,但你每周最大的销售能力只能卖出30000件产品,那你实际只要让这生产线每周生产出3万件产品即可,而不是生产出7万件,多余的4万件生产力于你以言并没有办法利用。

现在相信你应该能明白,理论性能不等同于实际使用时的性能,这是两回事,理论性能只等同于实际可用的最高性能,而实际使用性能,你可以参考评测内PCM7的测试成绩,PCM7所获得的成绩与理论成绩的差距,就是实际使用性能和实际可用最高性能的差距(这里指的是一般的家用环境条件下)。
58#
peng 发表于 2013-5-21 12:27 | 只看该作者
太牛B了  看不太懂
57#
cwjragnarok 发表于 2013-5-21 10:07 | 只看该作者
但是我有疑问了,家用还是能用到qd4左右的。那么qd64高我能否理解成每个队列深度提升的幅度会比qd64低的高呢?
56#
沉默的海龟 发表于 2013-5-21 09:07 | 只看该作者
楼主这几年大学没白念啊
55#
newcob 发表于 2013-5-20 20:20 | 只看该作者
James007ss 发表于 2013-5-20 13:42
小文件读写并不完全等同于随机或持续数据读写,这点是需要区分清楚的。硬盘不会有文件的概念。 ...

这里用“小文件”确实不合适,或许用“小片数据”更贴切一点~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部