HDD 上的随机读取/写入速度非常慢

HDD 上的随机读取/写入速度非常慢

我有一块笔记本电脑硬盘,大约 8 年前的。我觉得硬盘很慢,在很多情况下,我注意到登录后以及执行打开应用程序等操作时 Windows 任务管理器中的“活动时间”为 100%。我做了一个基准测试,以下是结果。

在此处输入图片描述

连续读取速度还不错,约为 70MB/s,但随机读取时速度会下降到 1MB/s 以下。这是正常现象吗?还是由于某些组件损坏/磨损?

硬盘规格:

Western Digital WD5000LPVT 500GB SATA Hard Drive 
Capacity: 500GB.
Speed: 5,400RPM. 
Interface Types: SATA. 
Form Factor: 2.5inx7mm Fits
All laptops. Sector Size: 512 / 512e. 
Sustained Throughput: 147.
Electrical Interface: SATA 300 - 3.0Gbps. 
On-Board Cache: 8MB.

[编辑]:上传 CrystalDiskInfo 结果

在此处输入图片描述

碎片化(0%) 在此处输入图片描述

预取/超级取 在此处输入图片描述

答案1

对于 5400 rpm 磁盘的随机 I/O 性能而言,这完全正常。5400 rpm 磁盘可以管理大约 90 IOPS,因为所需的扇区每秒只会进入磁头 90 次(每分钟 5400 次)。

因此对于 4KB 块,即 4KB * 90 = 360KB/s。

这与您所看到的情况大致一致。

答案2

您的 HDD 是 WD5000LPVT,2.5 英寸 500GB 5400rpm 型号。

看着用户基准您的结果没有异常。随机读取结果应在 0.1-0.5 MB/s 之间,您的结果相当不错。UserBenchmark 随机写入为 0.76-2.3 MB/s,您的结果为 ~0.85,偏低,但并未超出范围。

对于此磁盘型号,这些值似乎很正常。HDD 通常具有糟糕的随机访问结果,尤其是 5400rpm 的 HDD。

答案3

硬盘驱动器由以指定速度旋转的盘片和沿盘片半径移动的读写头组成。

要读取磁盘上的随机块,需要发生两件事:

  • 磁头需要沿着盘片半径移动到正确的“轨道”(寻道时间)。

  • 盘片需要旋转,直到正确的“扇区”或块位于读/写头下方(旋转潜伏期)。

平均随机寻道时间通常在 9 到 15 毫秒之间,具体取决于磁盘。对于这个特定的磁盘,它是12 毫秒

平均随机旋转延迟直接取决于驱动器旋转速度。磁盘的速度多种多样,从 5400 RPM(每分钟转数)到高端企业级磁盘的 15000 RPM。

转速为 5400 RPM(即每秒 90 转),平均需要5.6 毫秒正确的块位于读写头下方。

这意味着平均而言,读取一个随机块需要17.6 毫秒(不包括命令处理和数据传输本身,但相比之下,这通常是微不足道的)。

这反过来意味着每秒读取 57 次。 和4K 块根据基准测试,该速度为 228 KB/s,或者0.228 MB/秒。所以基准测试的结果实际上比理论值要稍微好一点!

这是RND4K Q1T1读取测试(第一个屏幕截图的左下角),它是最终的随机读取测试,每次读取都会等待其结果,然后才进行下一次读取。

测试Q32T1利用排队:在等待结果之前向驱动器发送多个读取命令(最多 32 个)(并且一旦结果返回,就请求新的读取,维护 32 个待处理读取的队列)。

这使得驱动器能够重新排序读取,从而减少随机性。例如,从磁道 1 到磁道 2 的寻道时间比从第一磁道到最后一磁道的寻道时间短,因此按顺序读取增加的磁道可以节省时间。如果从同一磁道读取多个块(无需寻道,您可以读取读/写头下的第一个块),这也有帮助。

写入测试通常存在缺陷,因为磁盘会缓存写入并说“是的,我得到了它”,即使它尚未写入磁盘,因此它们很难准确判断。

所以:

  • 您的磁盘似乎符合规格
  • 您的磁盘与所有消费级笔记本电脑硬盘一样,运行速度很慢。这并不奇怪。
  • 如果您想要更好的寻道(随机)性能,没有什么比 SSD 更好的了。

相关内容