Why sequential vs random I/O speeds differ for SSD


Recommended Posts

Does anyone have a good understanding of why SSD sequential reads/writes are so much faster than random ones? Some things that are bothering me:

1. There are no moving parts so there's no seek time nor latency time so why the big speed difference...or any difference at all

2. Apparently, people have shown that defragmenting an SSD doesn't improve performance. That implies that whether or not all the pages of a 1MB file are sequentially laid out on disk or randomly dispersed throughout the disk shouldn't matter, but SSD benchmarks clearly show that sequential I/O and random I/O speeds differ.

I'm not sure why write-limits are even a concern considering MLC memory cells have a write limit on the order of 10,000 which I believe means that an entire drive would would die if you repeatedly filled it up 100% and wiped it clean 10,000 times.

I can't give you an answer to the first part off the top of my head, but in regards to write-limits, it becomes more of an issue with applications and processes that are write intensive. You're computer doesn't only access the drive when you explicitly open a file. It is constantly accessing data, and often writing, whether it's saving your browser data to cache, augmenting your game's save file, etc. All that adds up much more quickly then your write/wipe example, although it will affect individual bits, rather then the entire drive at once.

In reality though, SSDs are still a pretty immature technology (relatively speaking), and since you're likely to be upgrading it again relatively soon, it won't even matter, especially so since by the time you do upgrade, the write-limit will probably have been greatly increased.

To my understanding, there is a phenomenal amonut of overhead once the I/O queue gets dumped on with a lot of random requests. The CPU has to coalesce the commands, the storage controller has to interpret and pass them down to the correct drive, and then the drive interprets the best order to process all of these commands (or doesn't if it's a cheap drive controller). Random file operations will likely also involve a lot of file table access, further compounding the issue.

It would be like going to the grocery store and buying a sack of potatos, one potato at a time. The spinning disk version of that would be driving to the farm and pulling up one potato, heading back home and doing it over and over again. Bulk operations, in just about any context, improve efficiency.

This topic is now closed to further replies.
  • Recently Browsing   0 members

    • No registered users viewing this page.
  • Posts

    • And I should hope none will. I don't want to walk ouside to have some randome AI drive over me and mine. Not that I want a person to do it either but I want there to be an actual person who takes responsibility of their actions instead of relinquishing control to a machine. In some highways I can accept self-driving, but even then there should be some kind of dead man switch etc. that actually monitors the drivers status.
    • No thank you. I want to drive myself, and not just because I don't trust a machine or whatever – I like driving, and I like doing it with a manual car without lane guidance and all other "driver assists". I wven rarely use cruise control. I went through and paid for to have a license to that allows me to do it, and do it responsibly instead of relinquishing control to a machine. I currently drive a van for work in a city, something like 200 km/day. If we everything is automated and computers decide everything for us, the dumber people will get since they don't have to bother thinking for themselves nor do they have to take responsibility for themselves since "it wasn't me, it was the machine" will be their future defence for everything. Soon, Neowin's writers will be out of a job because AI can do it just fine and it doesn't need pay. Wikipedia – a free service with voluntary writers – just started replacing real people with AI, and had to shut it down (at least for now). Lets let ai AI and those that run it (or rather run them) the keys the the world and watch it burn because no one is able to actually do anything without some AI assistant telling them what to do (driving included). What a world!
    • I’m sure in the last 12 months there’s been more air disasters
    • And it will get even wors the more automation and other features limiting driver interaction there are in never cars. The same also applies to many other things these days than driving. Let's make people dumber by not educating them and building things in a way where they do everything for people! Welcome to the future, where you don't have to think for yourself! Welcome to idiocrazy!
  • Recent Achievements

    • One Month Later
      POR2GAL4EVER earned a badge
      One Month Later
    • One Year In
      Orpheus13 earned a badge
      One Year In
    • One Month Later
      Orpheus13 earned a badge
      One Month Later
    • Week One Done
      Orpheus13 earned a badge
      Week One Done
    • Week One Done
      serfegyed earned a badge
      Week One Done
  • Popular Contributors

    1. 1
      +primortal
      535
    2. 2
      ATLien_0
      246
    3. 3
      +FloatingFatMan
      176
    4. 4
      +Edouard
      166
    5. 5
      Xenon
      119
  • Tell a friend

    Love Neowin? Tell a friend!