Back in June I decided that we should put an SSD in Chris’ laptop (a.k.a. my old laptop). I ended up buying a new solid state for myself and moving my Intel X25-M into her laptop.
Shopping for an SSD this time was a very different experience. When I bought my first SSD there was really only one drive worth buying; I just had to wait until I saw the best possible price on that drive. These days the majority of solid-state drives are fast and well made. I just had to find a reasonably priced drive of the size I want and Google a bit just to make sure that it isn’t a lemon.
Show:
Version 1.03c ------Sequential Output------- --Sequential Input- --Random-
-Per Chr- --Block-- -Rewrite-- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
Xen Server (4x400 RAID 10) 1G 68909 97 128789 45 48402 18 55770 91 106948 24 326 0
Intel X25-M 80 GB 8G 56415 89 87157 11 39827 9 69707 98 298590 29 16150 45
Crucial M4 128 GB 16G 954 98 183205 20 105877 9 4858 99 327088 16 4306 120
Crucial M4 128 GB aes-256, nodiscard 16G 604 94 152764 16 63475 6 4064 98 145506 6 2380 46
Crucial M4 128 GB aes-256, pre-trim 16G 794 97 56071 6 58384 7 3861 98 121742 8 10462 167
Crucial M4 128 GB aes-256, discard 16G 724 94 28447 2 22498 2 3948 96 134872 5 2361 45
Crucial M500 480 GB aes-256 63G 483 99 406072 55 150005 34 1362 99 309761 38 +++++ +++
The Crucial M4 128 GB
I ended up settling on the Crucial M4 128 GB solid state drive. It really isn’t much of an upgrade over the Intel X25-M. It is measurably faster, but I can’t notice the difference. The leap from a traditional hard drive with glacial seek times to a solid-state drive was very noticeable. The X25 is already so fast that the incremental upgrade isn’t easy to feel.
The extra 48 GB of space is very, very noticeable. My gargantuan laptop has room for two hard drives. I was using symlinks to move some larger directories out of my SSD and onto the extra disk, mostly things like my downloads
directory, virtual machine images, and larger games like Team Fortress 2.
The Intel X25 usually ran about half full because of this. Today, with all that cruft moved back to the SSD, the Crucial M4 tends to hover right around 75% full.
What the benchmarks say
First I would like to note that something has changed somewhere between my documented X25-M benchmark and today. I don’t currently know why the “per character” speeds on these benchmarks are so low. I do know that I’ve gotten similar results this year from the X25-M, but I didn’t save any of those results.
The Intel X25-M and the Crucial M4 have very comparable read performance on my SATA 2 controller. When I benchmarked the X25-M a few years ago I thought for sure it was maxing out the SATA 2 port. The Crucial M4 proved me wrong, though. It is able to eke out an extra 10%.
The Crucial M4 definitely performs writes faster than the Intel X25-M. It is too bad Bonnie doesn’t measure the small random writes that most early solid-state drives were so terrible at.
Why do I use Bonnie for benchmarks?
I’ve been using Bonnie forever. I remember some scores from almost a decade ago and I bet I could even dig some up out of old backups. I remember watching the folks from 3Ware running Bonnie benchmarks at Linux Expo back in 2001. I’m mostly still running and comparing Bonnie benchmarks for historical reasons.
The Crucial M4’s horrendous TRIM speed
At some point in the last five months I’ve encrypted my entire laptop. This is only partially relevant here because it turns out that I forgot to enable TRIM “pass through” on my encryption layer. I noticed this when my first benchmark for this article came out way slower than I thought it would. I did run a benchmark right after I encrypted the drive, but I either misplaced it or didn’t save it.
The first thing I did when I noticed this was to enable TRIM/discard everywhere I could, manually run fstrim, reboot, and ran another benchmark. That is when I got the horrible, horrible 20 to 30 MB/sec write speeds. It was so awful that I couldn’t even use the laptop while the benchmark was running.
After disabling the discard option, the write speeds improved by 300% and 500%. A freshly trimmed drive with discard
turned off runs about as fast as I would hope, right around the maximum speed my CPU can perform AES-256. My laptop was still responsive during the benchmark.
I will definitely be leaving discard
turned off on this drive. I’ll just have to manually run fstrim
every once in a while. TRIM on the X25-M did not incur this much of a performance penalty.
Was it worth the trouble and cost of upgrading from the Intel X25-M?
No. It was not. The X25-M is still an excellent drive. My real goal here was to remove the spinning drive from another computer. If I weren’t doing that, this wouldn’t have been worth the time, effort, or money.
I firmly believe that the biggest day-to-day advantage of an SSD in a desktop computer is the vastly improved seek times. That order of magnitude leap from a 7200 RPM hard drive to an SSD is the difference you’ll be likely to notice. The other performance improvements are nice, but you’ll never notice them without a stopwatch.
If you’re still using an old-school spinning platter hard drive I think the Crucial M4 is a great value. It is quite speedy and well under a dollar per gigabyte.