As fast as SSDs have found mainstream consumer use, they are unfortunately grouped in the same picture as a hard drive, if only for the fact that they are seen as storage and little more.
The data storage system (SSD, HDD) of any computer is the slowest part, compared to any other major component such as CPU, DRAM memory, or video card. DRAM memory can transfer data at over 20 gigabytes per second (GB/s). CPUs and video card processors can execute their internal instructions billions of times a second. Meanwhile, most storage drives are capable of, at best, processing a few hundred megabytes of data per second (MB/s). Most if not all of the hardware and software running in a PC wait for data from storage devices much longer than any other source. When we see the measure of MB/s, or even GB/s, we are identifying data transfer speeds, or throughput.
Data transfer speed is not the only important performance aspect of a storage device; in fact it is secondary. How long it takes for a data transfer to BEGIN, called latency, is even more important. Moving data slowly from one system to another reduces performance, but the time it takes for the data to begin moving, when no useful work is being done, is a huge factor in the performance of data storage devices.
There is another aspect of data storage device performance that is at least as important as latency. That is how OFTEN the storage device can perform a data transfer. How many Input or Output (IO) operations can be performed by the storage device every second, or IOPS, is a very important measure of its performance, and one that is overlooked too often. Throughput seems to be the ‘measuring stick’ for the consumer, where latency and IOPS are integral measuring tools when we move to the enterprise, and even data center space.
Our three main performance areas, how often IOs can occur, how long it takes for an IO task to begin, and the speed of the data transfer into or out of the storage device are simply defined in the computer industry as this:
How often a storage device can perform IO tasks is measured in Input/Output Operations per Second (IOPS), and varies depending on the type of IO being done. The greater the number of IOPS, the better the performance.
How long it takes for a storage device to start an IO task, or latency, is measured in fractions of a second. The smaller the latency time is the better.
The speed at which data is transferred out of or into the storage device is measured in bytes per second, normally kilobytes and megabytes per second. We all want more Megabytes per second.
The Big 3 (throughput, latency and IOPS) are what truly indicate the performance capability of a storage device. Let’s expand our understanding of HDD and SSD performance beyond simply MB/s, or throughput, as that is only one part of the performance story. Using a free and very simple tool to use benchmark called AS SSD, we can do a comparison of a HDD and a SSD while taking a closer look at The Big 3.
HDD/SSD Performance Comparison
AS SSD is the bread and butter of SSD synthetic benchmarks as it reads and writes several gigabytes of data to and from the drive. As a bit of a heads up, it took a little over an hour to complete the AS SSD Benchmark on the HDD, while the SSD was done in under five minutes.
Results for the hard drive are shown on the left, while that of the SSD are on the right.
IOPS tells us how quickly each drive can process IO requests. The first row is the read and write IOPS of a 16MB file, a large file sequential IO. The difference between the HDD and SSD is not huge, the SSD can perform 3.4 times the read IOP requests than the HDD. The large file sequential write IOPS and speeds are similar to the reads, the SSD is about 3.5 times faster than the HDD.
The next row is the small 4K file “random” read and write IOPS. Random means the files are scattered all over the drive, not in neat rows or groups, so take more work to find. Random IO is the most difficult and time consuming type a storage device must deal with.
Here we see the HDD can do 176 IOPS, while the SSD gives us 9417 IOPS, or over 53 times more read requests. Since small file, 4K reads are the most common IO done in typical PC usage, this difference reveals how much quicker a SSD can be for a user. The 4K write IOPS show a stunning difference in performance, the HDD 311 IOPS, the SSD 32,933 IOPS, or over 105 times faster. Can performance like this not be noticed by a user?
AS SSD’s “4K-64Thrd” test in the next row is a test of drive’s ability to use the Native Command Queuing (NCQ) feature of AHCI. NCQ simply provides a drive with direct access to up to 32 IO requests in the system’s memory, with only one IO command sent to the drive, instead of 32 IO commands, one for each IO request. That eliminates all the overhead involved processing 32 individual commands. The “4K” is the file size, the IO is random as described above, and the “64Thrd” (64 thread) means that two, 32 NCQ type, IO requests are done in the test.
If we check the speed difference (MB/s) we see it is significant but not tremendous, 149.86 MB/s for the HDD, vs 514.28 MB/sL the SSD is 3.4 times faster. Yes, that’s the same difference as the IOPS; all these things are related. Large file sequential IO is the easiest for any storage device, which is why we see sequential speed specifications in marketing information. It is also easy to understand. The truly important indications of performance are not found here.
The 4K read speed of the HDD is surprisingly small, 0.69MB/s compared to the SSD’s 36.79MB/s, and again is over 53 times faster in the SSD. A 4K write speed for the HDD of 1.22 MB/s is better than the read speed, but again dwarfed by the SSD at 128.65 MB/s, and again over 105 times faster.
AHCI and NCQ were originally designed for HDDs, to enhance their performance. Given that, the HDD’s results are not impressive. We see an increase in the IOPS to 405, or 2.3 times greater, with read speed increase of less then two times, to 1.58 MB/s. The SSD is capable of 92,586 read IOPS, over 228 times faster! Once again, the SSD’s read speed of 361.66MB/s is over 228 times faster than the HDD.
Unfortunately, the HDD gains nothing from NCQ in the NCQ 4K write test, staying at 311 IOPS and 1.21 MB/s. The SSD’s performance is over 193 times the write IOPS of the HDD, and at 235MB/s is over 194 times faster than the HDD.
The final row we’ll look at is Access time, which is latency. A single access time figure is very simplified, as it varies depending on many things, in this case it must be an average. The HDD’s Read Access Time of 15.785 millisecond sounds quick, and it is, but the SSD’s Access Time of 0.031 milliseconds is 509 times faster!
Write access time is faster than the read on the HDD, since all it needs to do is get the address of some empty space. The SSD’s write access time is still over 102 times faster than the HDD’s. Do you think that extremely reduced access times like this will only be noticeable when a PC boots an OS?
Take a look at these two HDTune Pro results; the SSD on the left and the hard drive on the right. Do you notice how the hard drive performance decreases as the data transfer continues, in comparison to the SSD that remains level? Now look at the Access Time of the hard drive compared to that of the SSD. This is a perfect example of how a SSD, with very low latency compared to the HDD, moves data continuously like oil through a pipeline, whereas the HDD must continuously return for chunks of data, slowing performance and increasing disk access times significantly.
Throughput, latency and IOPS form the performance triangle of all SSDs, regardless of whether we are speaking of a $70 consumer SSD or a $15K PCIe enterprise SSD. As much as throughput may be the key to retail sales while latency and IOPS are that of enterprise, this knowledge enables our understanding of why our PC starts in 15 seconds with a SSD, vice that of a minute or more with HDD.
Simply, IOPS are how often or fast the storage device can perform IO requests, latency describes how long it takes for an IO request to begin, and throughput is the actual speed of the data transfer and most often measured in MB/s. In all cases, we found that a SSD performs better than a HDD, from about 3.5 times to over 500 times faster.
The two most important factors are the ability to perform more IO requests and to start them faster in a range from about 50 to 500 times faster than a normal HDD. We also saw that IOPS contain the same information that the MB/s speed does.
At the consumer level, most will never use the ultimate performance capabilities that an SSD offers very often, if ever. Having a SSD in your system means higher performance, complete silence, a cooler system, much higher endurance and data safety should you drop your system, as well as longer battery life for laptops. The fact that we forget these characteristics after getting used to the SSD is probably the ultimate compliment we can experience.