I'm a developer. One of the things we devs do to pass the time is complain about how long it takes to compile and brag about the power of our development systems.
Hot-rodding your system isn't just limited to development, though. There are lots of people out there who sit and wait as their systems limp along from the start up chime to the login screen. You probably already know that adding RAM generally makes your Mac more responsive, but do you know how much of a boost you might get from a solid-state drive (SSD) versus a conventional hard drive?
TUAW friend Maurice Sharp decided to test it out. He got down and dirty with his Macs and timed how long it look for HDD and SDD based systems to perform various operations. Here are the results he achieved, comparing solid state response times to hard drive response times.
1 MacBook Pro 2.3GHz i7, 16GB RAM
2 Project build folders were cleaned before each compile
3 Build phase only. 2000 C++ and 400 Objective-C files
4 Mac Mini 2GHz i7, 8GB RAM
5 MacBook Pro 2.4GHz i7, 8GB RAM
6 MacBook Air 1.8GHz i7, 4GB RAM
7 21296 lines of code
Look at the typical differences he experienced. Although this chart is focused on code-based tasks, his day-to-day startup times also massively decreased.
Sharp writes, "There is one caveat. To switch over to SSD, you have to clone your current hard drive to the new drive. For a 500GB drive, this took about 4.5 hours (thanks Carbon Copy Cloner). Plus another 15 minutes to install the drive. Of course this can be done out of hours, or by an IT department if you have one. [But] now you can generate the numbers you need to show your boss, or even yourself, why an SSD drive is a good investment."
Don't expect miracles, however. Another TUAW dev buddy Matthias Ringwald reports, "I replaced the HD in a 2009 Mac mini in 2010 with an Intel 160 GB SSD. While it got more snappy/faster boot times etc, the compile time for our Dybuster Dyslexia C++/Qt project decreased only from 7 minutes to 6 minutes." That said, a 17% decrease in compile time is nothing to sneer at.
What's behind the difference? Sharp proposes "There are obvious things like the speed of accessing information on a the drive comparing a rotational system where the sector may or may not be at the head, and may or may not be cached, versus no reliance on mechanical rotation. But there are other things that may account for the lack of gain that Matthias was seeing. That is related to using the disk for virtual memory paging.
"As you probably know, the OS uses part of the disk to swap out parts of RAM that are not in use, especially when the memory needed is greater than the physical RAM. If there is a lot of paging, that will suck performance, even with an SSD, as the system dedicates cycles to swapping RAM contents on and off disk. This is why I boosted my RAM first and got a sense of how that worked. Using something like iStat menus, you can see how much memory is being used and how it is allocated (as well as the processes that are hogging it!)"
If you've gone to an SSD-equipped system on your development machine, has it made a dramatic difference? Or have the improvements been more subtle? Join in the conversation below.