什么是“随机查找时间”真的意味着在HDD基准?

我目前正在对硬盘进行基准testing。 我正在使用HW32进行测量。

结果有两个部分:

random seek time: 20 ms

random read throughput: 30 Mbytes/s

我不确定HW32的方法是为基准testing做的。

但是我发现随机查找时间的结果很奇怪。

根据我的理解,随机查找时间意味着the time that is spent on where a specific data is 。 所以我认为对于一个random read应该包含很多次的random seek吧?

例如,我尝试从磁盘读取100MB的数据。 由于磁盘碎片,磁盘上有1000个随机块,每个地方有100KB的数据。 所以当我读到它时,磁头将不得不移动1000次才能find所有的数据块,对吧?

那么如果random seek time is 20ms ,那么这是否意味着我们将不得不花费1000 * 20 = 20,000ms = 20秒对随机查找? 我猜不是,对吧?

任何人都可以向我解释? 如果像HW32这样的基准testing告诉我random seek time = 20 ms ,这是什么意思? 这是否意味着total random seek time for a random readaverage seek time total random seek time for a random read

谢谢

随机寻道时间是指磁盘需要到达数据所在位置的平均时间,并读取一个数据块(甚至是单个扇区)。 真实的价值可以更高,更低。

对于随机读取速率,通常在相同位置读取多个块来计算平均值,因此该速率取决于驱动器的search时间和线性读取吞吐量。

现代磁盘甚至可以通过一种称为本地命令排队 ( Native Command Queuing)的技术来增加传输速率,这种技术允许他们诉诸请求以最小化头部移动。

你假定系统按随机顺序寻找随机块。 它永远不会那样做。

如果你不得不在随机select的商店买东西,平均需要两个小时才能到达那家商店,挑选一些东西然后开车回去。 但是,如果你不得不开车到1000家随机select的商店,每个商店不会花费你两个小时,因为你会select最佳的订单。 一些商店将彼此相邻。 等等。

你的号码有点奇怪 平均等待时间为20ms意味着每秒50 IO,为了使这50个IO高达30MB,你必须使用非常大的扇区大小。 有没有可能报告高峰值而不是平均值?

对于消费级驱动器来说,20ms并不是一个不寻常的价值。