Showing posts from January, 2020

IO numbers that everyone should know

In the Numbers Every Programmer Should Know , one set of numbers that I've always found missing were IO numbers (HDD vs SSD - random reads / writes). I found a really good source on StackExchange  for these numbers and for the sake of posterity, I'm documenting this here (for me and for you): SSD | HDD Sequential Read/Write : 700 MB/s+ | 115 MB/s (6x diff)  SSD | HDD Random Read 512KB : 160 MB/s | 39 MB/s (4x diff) SSD | HDD Random Write 512KB : 830 MB/s | 57 MB/s (14x diff) SSD | HDD Random Read  4KB :  27 MB/s  | 0.5 - 1.5 MB/s (17x diff) SSD | HDD Random Write  4KB :  135 - 177 MB/s  | 0.7 MB/s (192x+ diff!) The bottom line is that unless you're thrashing the HDD with lots of 4KB random writes, the HDD should not be tapped out till about 30+ MB/s (and an SSD should be just fine till about 150 - 300 MB/s ). If you're seeing an HDD tapped out at 3 MB/s, then you're either not writing sequentially or your block size of writes is too small. If you're seeing an