Putting Fusion Drive’s Performance in Perspective

Benchmarking Fusion Drive is a bit of a challenge since it prioritizes the SSD for all incoming writes. If you don’t fill the Fusion Drive up, you can write tons of data to the drive and it’ll all hit the SSD. If you do fill the drive up and test with a dataset < 4GB, then you’ll once again just measure SSD performance.

In trying to come up with a use case that spanned both drives I stumbled upon a relatively simple one. By now my Fusion Drive was over 70% full, which meant the SSD was running as close to capacity as possible (save its 4GB buffer). I took my iPhoto library with 703 photos and simply exported all photos as TIFFs. The resulting files were big enough that by the time I hit photo 297, the 4GB write buffer on the SSD was full and all subsequent exported photos were directed to the HDD instead. I timed the process, then compared it to results from a HDD partition on the iMac as well as compared to a Samsung PM830 SSD connected via USB 3.0 to simulate a pure SSD configuration. The results are a bit biased in favor of the HDD-only configuration since the writes are mostly sequential:

iPhoto Library Export to TIFFs

The breakdown accurately sums up my Fusion Drive experience: nearly half-way between a hard drive and a pure SSD configuration. In this particular test the gains don't appear all that dramatic, but again that's mostly because we're looking at relatively low queue depth sequential transfers. The FD/HDD gap would grow for less sequential workloads. Unfortunately, I couldn't find a good application use case to generate 4GB+ of pseudo-random data in a repeatable enough fashion to benchmark.

If I hammered on the Fusion Drive enough, with constant very large sequential writes (up to 260GB for a single file) I could back the drive into a corner where it would no longer migrate data to the SSD without a reboot (woohoo, I sort of broke it!). I suspect this is a bug that isn't triggered through normal automated testing (for obvious reasons), but it did create an interesting situation that I could exploit for testing purposes.

Although launching any of the iMac's pre-installed applications frequently used by me proved that they were still located on the SSD, this wasn't true for some of the late comers. In particular, Photoshop CS6 remained partially on the SSD and partially on the HDD. It ended up being a good benchmark for pseudo-random read performance on Fusion Drive where the workload is too big (or in this case, artificially divided) to fit on the SSD partition alone. I measured Photoshop launch time on the Fusion Drive, a HDD-only partition and on a PM830 connected via USB 3.0. The results, once again, mirrored my experience with the setup:

Photoshop CS6 Launch Time (Not Fully Cached)

Fusion Drive delivers a noticeable improvement over the HDD-only configuration, speeding up launch time by around 40%. A SSD-only configuration however cuts launch time in more than half. Note that if Photoshop were among the most frequently used applications, it would get moved over to the SSD exclusively and deliver performance indistinguishable from a pure SSD configuration. In this case, it hadn't because my 1.1TB Fusion Drive was nearly 80% full, which brings me to a point I made earlier:

The Practical Limits of Fusion Drive

Apple's Fusion Drive is very aggressive at writing to the SSD, however the more data you have the more conservative the algorithm seems to become. This isn't really shocking, but it's worth pointing out that at a lower total drive utilization the SSD became home to virtually everything I needed, but as soon as my application needs outgrew what FD could easily accommodate the platform became a lot pickier about what would get moved onto the SSD. This is very important to keep in mind. If 128GB of storage isn’t enough for all of your frequently used applications, data and OS to begin with, you’re going to have a distinctly more HDD-like experience with Fusion Drive. To simulate/prove this I took my 200GB+ MacBook Pro image and moved it over to the iMac. Note that most of this 200GB was applications and data that I actually used regularly.

By the end of my testing experience, I was firmly in the category where I needed more solid state storage. Spotlight searches took longer than on a pure SSD configuration, not all application launches were instant, adding photos to iPhoto from Safari took longer, etc... Fusion Drive may be good, but it's not magic. If you realistically need more than 128GB of solid state storage, Fusion Drive isn't for you.

The Application Experience Final Words
POST A COMMENT

128 Comments

View All Comments

  • qzyxya - Saturday, February 16, 2013 - link

    Is there a way to get this for windows? I'd love to have this. Like buy a 128gb ssd and use it for caching with my 3tb samsung 7200.14 hard drive Reply
  • navss - Friday, April 26, 2013 - link

    Great read, personally I like the thought of getting the Mini with the 256GB SSD + adding another 2-3TB HDD for relatively cheap and using that terminal command to set up the Fusion Drive.

    Also Anand, if you're going to be taking screenshots of programs on the Mac: Cmd+Shift+4+(hover over the program you want a screenshot of) then hit the spacebar, you'll get much nicer screenshots.
    Reply
  • Mortenling - Wednesday, May 15, 2013 - link

    When (not if) the fusion drive breaks down it is almost impossible to replace it in the new iMac's. But will the SSD part of the fusion drive still work if its only the normal HD part there is broken ?
    I'm not sure if i should go for the fusion drive or the 256 SSD in a new iMac. I need to fill it up with music applications and i'm not sure if there is space enough in the 256 SSD but I'm sure it will last longer. I don't think you can create a fusion drive with an external HD but is it possible to create some sort of RAID with an external SSD to give me a total 512 SSD HD. At the moment I cant afford the internal 512 SSD but that I think would be the best solution. I need some advice so please help me out here :-)
    Reply
  • thecartman - Thursday, May 16, 2013 - link

    Do you think it is worth upgrading the harddrive to a fusion drive when i use an iMac 27" for homework, browsing and image editing with editing? Reply
  • austoonz - Tuesday, May 28, 2013 - link

    I've been running a Crucial M4 240GB SSD in my 2007 Macbook Pro for years loving the SSD speed. Then in 2011 I purchased a top-of-the-line 27" iMac with only the 1TB HDD with plans to purchase a ThunderBolt SSD to boot from. However, ThunderBolt SSD's still haven't hit a remotely reasonable pricepoint, so I've been running a 120GB SSD in a FW800 case for a year or so now, and even that was SO MUCH FASTER than using the internal HDD, it seems even adding on FW latency it was still massively faster for everyday use, but I got annoying with using symlinks and folders just being a little strange in Finder...

    So I finally got round to changing things... the 128GB boot SSD on the iMac has been moved into the MBP, and the 240GB SSD (from 2008...) was installed inside the iMac and I setup a Fusion Drive with that and the 1TB.

    I'm definitely impressed... storage tiering for the consumer that actually works, and works very, very well. This is exactly what I'm after out of a consumer product, excellent performance for 90%+ of my usage, but still with the capacity for my music and iPhoto libraries, most of which are never seen or accessed.

    Thanks Anand for doing this review though - I really like reading reviews like this showing real-life usage rather than simply benchmarks.
    Reply
  • 9comp - Thursday, May 30, 2013 - link

    Hey I didn't understand the write method.

    When you write 6GB to the array, the first 4gb store on the ssd drive and the left 2gb to sata

    or

    little files 1mg-3.99gb are automatically store to the ssd and bigger files like HD movies (over than 4gb) are automatically store on the sata?!

    Please explain...
    Thanks
    Hagy
    Reply
  • ajcarr - Tuesday, September 17, 2013 - link

    I took my mid-2010 15" Core i7 MacBook Pro and replaced the optical drive with a 750 GB WD Scorpio Black (using an OWC DataDoubler), and the existing HDD with a 256 GB OCZ Vertex Plus R2 (no meed for anything faster: the machine only has SATA 2), and issued the command line incantations needed to create a fusion drive. The performance gain was incredible: in particular, Microsloth Word launched at about the same speed as on my mid-2012 13" MacBook Air. Repeated the operation with a friend's Core i5 MacBook Pro of the same vintage, but with a Seagate HDD this time, still using the OCZ (it was cheap, and 'good enough'), and again there was a huge performance boost. Basically, in both cases, the CPU is more than adequate for anything routine, three years after manufacture, but the fusion drive upgrades have given us perhaps *another* three years of life for our machines. I fully expect to receive flak for using OCZ drives, but after a year, neither of us has seen problems (possibly because I used slow, commodity OCZ devices that were mature). Reply
  • p4madeus - Thursday, September 25, 2014 - link

    I rolled my own Fusion drive in my 2012 2.3ghz quad i7 Mini as well, it only had a 1tb 5400rpm HDD stock in it. I had recently just outright replaced the stock 750gb 7200rpm HD in my 2012 MacBook Pro with a 1tb Samsung EVO (I'll keep the optical drive, for now) so I had this better 7200rpm drive laying around. So I got the kit for the Mini and replaced the stock 1tb 5400rpm drive with the 750gb 7200rpm drive from my MBP and added a 480gb Crucial M550, end result is a 1.22TB fusion drive with a good 16/25 SSD/HDD ratio...it screams...not quite as much as the straight 1tb SSD in my MBP, but is night and day compared to the stock 5400rpm 1tb HDD. Reply

Log in

Don't have an account? Sign up now