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

交流 FancyCache 软件使用过程中遇到的问题以及心得等
这里提供官方的技术支持
回复
allwiki
3级用户
3级用户
帖子: 14
注册时间: 周六 11月 05, 2011 3:58 pm

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

帖子 allwiki »

原文网址: http://bbs.pceva.com.cn/thread-89106-1-1.html

各位好。最近论坛里一直有网友在纠结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的读写性能对于日常使用情况而言,却是毫无意义的。
回复