Channels ▼

Jonathan Erickson

Dr. Dobb's Bloggers

Mechanical vs. Solid State Drives, Or Walter's Multithreaded I/O Redux

April 13, 2009

Walter Bright's recent article about moving from a familiar mechanical hard-disk drive with its "motors and levers and gears and spinning things" to a newer solid-state drive (SSD) was fascinating for a lot of reasons, ranging from the D programming language and multithreading to the issue of adopting new technologies in general.

According to Walter, the SSD's performance improvements were immediate and dramatic. His laptop "boots up promptly, and applications load crisply. It's like a new machine." All of which led Walter to start thinking about how disk I/O slows things down.

It got me thinking too, and while Walter went on to examine how multithreading and parallel programing come into the mix, I started looking for information about how mechanical disks compare to their solid-state cousins. And that took me to a research paper entitled Comparing Performance of Solid State Devices and Mechanical Disks, by Milo Polte, Jiri Simsa, and Garth Gibson.

As the title suggests, the goal of the study was to examine the performance of several SSDs and relate their performance to that of mechanical disks. For the evaluation, they used the IOZone benchmark  running in single-threaded mode with varying request size and access pattern on an ext3 filesystem.

If your common-sense assumption is that SSDs are faster than mechanical disk drives, then you're right -- at least according to the authors of the study. What they found was that for sequential access pattern the SSDs are up to 10 times faster for reads and up to 5 times faster than the disks. For random reads, the SSDs provide up to 200x performance advantage. For random writes the SSDs provide up to 135x performance advantage.

The authors also considered the performance numbers against the prices of the SSDs tested (ranging from $110 to $2400) and concluded that "SSDs are approaching price per performance of magnetic disks for sequential access patterns workloads and are superior technology to magnetic disks for random access patterns." That said, the also pointed out that there are open questions, such as integrating SSDs into storage stacks containing mechanical drives and the like.

All in all, a nice job with the paper and also nice to see that there is sometimes measurable basis for your common-sense assumptions.

Related Reading

More Insights

Currently we allow the following HTML tags in comments:

Single tags

These tags can be used alone and don't need an ending tag.

<br> Defines a single line break

<hr> Defines a horizontal line

Matching tags

These require an ending tag - e.g. <i>italic text</i>

<a> Defines an anchor

<b> Defines bold text

<big> Defines big text

<blockquote> Defines a long quotation

<caption> Defines a table caption

<cite> Defines a citation

<code> Defines computer code text

<em> Defines emphasized text

<fieldset> Defines a border around elements in a form

<h1> This is heading 1

<h2> This is heading 2

<h3> This is heading 3

<h4> This is heading 4

<h5> This is heading 5

<h6> This is heading 6

<i> Defines italic text

<p> Defines a paragraph

<pre> Defines preformatted text

<q> Defines a short quotation

<samp> Defines sample computer code text

<small> Defines small text

<span> Defines a section in a document

<s> Defines strikethrough text

<strike> Defines strikethrough text

<strong> Defines strong text

<sub> Defines subscripted text

<sup> Defines superscripted text

<u> Defines underlined text

Dr. Dobb's encourages readers to engage in spirited, healthy debate, including taking us to task. However, Dr. Dobb's moderates all comments posted to our site, and reserves the right to modify or remove any content that it determines to be derogatory, offensive, inflammatory, vulgar, irrelevant/off-topic, racist or obvious marketing or spam. Dr. Dobb's further reserves the right to disable the profile of any commenter participating in said activities.

Disqus Tips To upload an avatar photo, first complete your Disqus profile. | View the list of supported HTML tags you can use to style comments. | Please read our commenting policy.