你可能不知道的 SSD 跑分细节

大家最常看到的 SSD 跑分软件 CrystalDiskMark ,选购 SSD 看八个框框,分数越高就越好但你知道这几个框框分别代表什么意思吗?

循序 (Sequential )读/写

举例将数支1GB的视频写入硬盘,操作系统操作流程为

1.从 SSD 的 Map Table 标记要使用的 blocks(磁区 1~10,000)。

2.抹除 ( Garbage Collection ,GC)一个空间。

3.将数据写入到标示 blocks 中。

假设第一部视频磁区位置为 1~1,000、第二支则为 1,001~2,000 依此类推到到十支的 10,000 磁区位置。 如果使用上常将数十 GB 文件文件复制来复制去,循序性读/写将会是一个重要的效能指标。

4kB 读/写

有遇过操作系统更新,明明就几百 MB,更新却要等个五到十分钟,说穿了,更新是置换众多的动态程序库,文件虽然不大但为数众多,一次更新会置换上百甚至上千个文件,如果4kB效能不佳,就看到CPU、内存空载,电脑却非常卡IO瓶颈。

4kB 读/写就是泛指零碎小档操作效能,如游戏、操作系统、各式程序,都由数以千计的动态程式库组成,空有CPU、GPU效能却没有匹配的 IO 效能,就会出现过地图跑条很慢、无接缝地图游戏会莫名卡顿等等现象。

回到CrystalDiskMark 八个框框,左上第一个框框 Seq Q32 T1,代表着循序读/写,那 Q32 跟 T1 代表什么意思呢?

将一颗硬盘比喻成车站,伫列深度 Queue Depth(QD)为列车几节车厢、执行绪为不同月台 Thread

假设一个月台最多可以容纳 200 人同时上下车,而八节列车(QD8)可以载客 500 人

同一时间要下车就需要花 2.5(500/200 )个单位时间,才能上全部旅客下车,这就是 IO 延迟(Latency)

如果嫌上车时间太久,那就盖两个月台(2 Thread),两台四节列车(QD4)下乘客

这样就只要花 1.25(500/400)个单位时间就可以全部下完车吗?

当然没那么简单,一个月台旅客仅需要知道往月台走就可以搭到车

但月台越多,乘客要去研究哪个月台,付出的代价(CPU运算代价)会更多

总结

●QD 越多,延迟(Latency)越高。 举例:QD2 延迟一定比QD1高

●Thread 越多 CPU 效能越吃重,程序也更难开发维护。

●低 QD 可以达到更高的吞吐量(Throughput)为佳,例 QD1 = 100MB/s > QD1 = 50MB/s

你可能不知道的 SSD 跑分细节

附上 CrystalDiskMark 跑分

●4KiB QD1 Thread1 R 179.2(100%) / W 169.3 (100%)

●4KiB QD2 Thread1 R 411.3(229%) / W 359.9 (212%)

●4KiB QD1 Thread2 R 296.5(165%) / W 275.9 (162%)

从分数可以简单看到,提高QD深度比多开Thread的效能成长幅度更高

(0)
摩榜哥摩榜哥

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注