3 ms·
However, for a magnetic drive, reading data sequentially will be significantly faster than random access (due to increased overhead of page faults), but for an
by indogooner 7y ago
However, for a magnetic drive, reading data sequentially will be significantly faster than random access (due to increased overhead of page faults), but for an SSD drive, this overhead will not be present.
Even SSDs have overhead for random access although not as much as spinning disks (~3 times IIRC)
- mehrdadn 7y agoI never understood how the myth that SSDs have no random access overhead became so prevalent and oft-repeated. Did nobody ever measure?
- auscompgeek 7y agoNowadays there are NVMe SSDs with significantly less random access overhead, asymptotically approaching no overhead at all as I understand.
- dspillett 7y agoSSDs have effectively zero random read access overhead when compared to traditional drives, because the overhead is a couple of orders of magnitude smaller. Also for SATA connected SSDs the effect of this read latency is reduced by bottlenecks elsewhere. For the common home/office/other user the difference between zero and effectively zero is, well, effectively zero, so the two easily conflate. It isn't so much a myth as a convenient simplification. (The fact that there is still latency is very easy to show though - just throw something like crystaldiskmark at an SSD and show the measured throughput difference between the sequential and random tests.) For NVMe drives where the bottlenecks of SATA are removed the difference starts to become more noticeable, and on any SSD random write latency is more significant than random read latency, but NVMe has only recently become common for the general user and the tests that people usually look at are random read not random write as for those common users this is the most significant measure in terms of how it will affect their day-to-day use patterns.
- rswail 7y agoYou could say it's a leaky abstraction...
- gjm11 7y agoEven RAM has overhead for random access. It takes time to change which row of the memory you're accessing, and there's also a "burst mode" that reads or writes a batch of consecutive locations with reduced overhead. [EDITED to add:] And of course cacheing means that the RAM+cache system collectively makes random accesses slower, and would do even if all accesses to RAM took exactly the same amount of time.