UPDATE 6/30/2015. As reported by Ars Technica and confirmed by Apple, today’s OS X 10.10.4 update “has added a command line utility that can be used to enable TRIM on third-party SSDs without having to download and install anything. Called trimforce, the utility can be executed from the OS X terminal, and it requires a reboot to start working.”
“TRIM helps SSDs out by telling SSDs which pages can be marked as stale when an operating system deletes files (something the SSD ordinarily would have no way of knowing). It’s by no means a requirement, but it’s helpful and could potentially help the performance of an SSD as it ages.
“The scary warnings about trimforce are likely in place because not every disk implements TRIM in the same way, and older SSDs might behave oddly or in ways that OS X doesn’t expect when told to TRIM pages. If you have a relatively recent SSD, though, there shouldn’t be any problem enabling TRIM via trimforce—especially considering that same SSD in Windows or most current Linux distributions would already be using TRIM.”
If you own a 3rd-party SSD (Solid State Drive) unit and are running a version of OS X 10.10.3 or earlier (Yosemite) – you NEED to read this.
If you own an Apple SSD or Fusion drive, this article does NOT apply to you.
Last week, on the Digital Production Buzz, OWC CEO Larry O’Connor discussed a critical problem where computers containing a 3rd-party SSD drive are unable to work properly under Yosemite. And, in some cases, the system won’t boot at all; resulting in a gray startup screen.
The issue revolves around Trim utility software used by the SSD drive.
NOTE: Listen to his complete interview here.
WHY THIS IS IMPORTANT
In order for an SSD system to work properly, the operating system needs to “clean” the unused contents of an SSD drive whenever you add or delete media. Further, the OS needs to know what parts of the SSD are available to store new data.
This process is handled by Trim software. The difficulty is that Apple only supports Trim on its own SSD drives. If you use a 3rd-party drive, you have to use 3rd-party software to get the performance you need from the SSD.
“…Support for Trim is based on the operating system and the SSD manufacturer. Microsoft Windows began to natively support the Trim command for SSDs in Windows 7. Apple added Trim support in 10.6.8, however Apple does not natively support Trim on non-Apple SSDs.
“Trim is an operating system-based command for SSDs that is activated when you delete a file on the SSD. When you delete a file from your computer, Trim notifies the SSD that the location of the deleted file no longer contains valid data. Trim then works in conjunction with the SSD’s garbage collection process to move both valid and invalid data from the old block to the new block. Having Trim enabled prevents the invalid data being moved. This in turn frees up space on the SSD and reduces write amplification. Now the “moving company” only needs to focus on moving the current tenants and ignore the vacant homes.”
NOTE: Read OWC’s entire blog here: blog.macsales.com/21641-with-an-owc-ssd-theres-no-need-for-Trim
One of the most popular Trim tools is “Trim Enabler” from Cindori Software. Cindori continues the discussion:
“Every time you delete a file on your computer, the data still stays on the drive in segments called blocks. These blocks are not deleted until you need to use them again to write new data. Due to technical limitations in the NAND Flash design, only whole blocks can be deleted. This means that when you need to write new data, the SSD must perform time-consuming cleaning and maintenance of these blocks before your data is written. With Trim, your blocks can be cleaned instantly when you delete the data, leading to much less operations during the writing process which gives you better speeds and minimizes the wear on the drive.”
“In OS X 10.10 (Yosemite), Apple has introduced a new security requirement called kext signing. (A kext is a kernel extension, or a driver, in Mac OS X.)
“Kext signing basically works by checking if all the drivers in the system are unaltered by a third party, or approved by Apple. If they have been modified, Yosemite will no longer load the driver. This is a means of enforcing security, but also a way for Apple to control what hardware that third party developers can release OS X support for.
“Since Trim Enabler works by unlocking the Trim driver for 3rd party SSD’s, this security setting prevents Trim Enabler to enable Trim on Yosemite. To continue to use Trim Enabler and continue to get Trim for your third party SSD, you first need to disable the kext signing security setting.
“It is important to note that the kext-signing setting is global, if you disable it you should be careful to only install system drivers from sources that you trust.”
NOTE: Read their entire FAQ here: www.cindori.org/Trim-enabler-and-yosemite/
THE BAD NEWS
The only workaround is to turn off kext-signing, which, as Cindori describes is similar to “taking a sledgehammer to crack a nut,” because this affects every driver on your system, not just the SSD.
WHAT TO DO
If you have a 3rd-party SSD drive, check with the manufacturer to see if it works on Yosemite. (Assume that it does not.) At this point, you have two options:
Also, let Apple know – via Send Feedback to Apple inside Final Cut Pro, or other Apple applications – that they need to reconsider their policy. Speed is essential to all media creators. Apple needs to find a way to support Trim functions on all SSD drives, not just Apple systems.
This is a big deal. If you have a 3rd-party SSD, you have the potential to be dead in the water on upgrade. For this reason, please contact the manufacturer of your SSD system – and read the supporting articles – before upgrading to Yosemite. Make sure you KNOW that your drive will work before you have problems.
Remember, Apple-supplied SSDs work fine. The issue is only with 3rd-party SSD drives.
OTHER IMPORTANT LINKS
OWC reports that their SSD drives don’t need Trim. You can read their entire article here:
Read the entire Cindori Software FAQ here: www.cindori.org/Trim-enabler-and-yosemite/
92 Responses to CAUTION! SSD Drives and Yosemite [u]← Older Comments
Disk Sensei (by Cindori, the same people who made TRIM Enabler) claims it can now safely enable TRIM without disabling kext signing.
Apologies for jumping into this discussion so late in the stream.
We have been testing SSD technology in our QA labs for going on 5 years now. We have old and new drives and many of them are being continuously pounded on by our testing mechanisms. For the past two years, we have been paying attention to TRIM states on various drives and finally last year configured 2 Mac Pro 4,1 units as isolation units running 10.8.5 and Samsung EVO PRO 840 500GB drives as the boot drive – one with TRIM enabled using the kext hack, the other without.
After running 100’s of TB’s of I/O to these two systems (far more than an average user would achieve during a normal system life cycle) including deliberately filling the drives to capacity, we are not recognizing a noticeable difference in the performance between the two systems during boot or normal operations.
My desktop Mac Pro 6,1 has one of our ArGest cubes with 6 of the SamSung 500GB EVO PRO 850 drives running as a software stripe (RAID 0), and it has been used for testing with FCP X, Premier Pro, Media Composer, Sony Catalyst, and Davinci Resolve as both the edit and render drive. I get the same Black Magic Speed Test results today that I got when it was first created.
We also run similar tests with drives from OCz, Seagate, Micron, and a couple of rebranded units. Most of these have also lived very grueling lives in our labs and we have seen no issues with or without TRIM enabled.
The pundits throw around words like “massive” and “substantial” with regards to the supposed performance overhead required to blank and then write a NAND cell, but when you get to the actual numbers, they are so small as to be imperceptible during normal system read and write operations.
Also, since the TRIM command is a non-queued command (ANSI T13 Spec), depending on theTRIM implementation, you can actually cause more overhead to the drive than not using it.
Finally, many of the drive manufacturers offer a new garbage collection mechanism that has no requirement on TRIM for keeping things cleaned up. Crucial and Samsung do on their current drives and I believe that Seagate and Intel either are shipping or will be shipping drives with this feature.
Where we have found TRIM useful? We have a database server that we test against and when we simulate 35K IOPs or more, we do see a difference in the benchmarks compared to the same drive with TRIM enabled. But even then, the difference in performance is in the 15% range during writes and 5% range during reads.
Since I am a “proof is in the tasting of the pudding” kind of guy, this make me wonder how important TRIM truly is for normal computing operations – including video or audio editing.
Thanks for these VERY helpful stats. Much appreciated!
Larry thanks for the update, I have been following this for months now. I just upgraded to 10.4.4, but have to say, being a bit of a Command-Line Idiot, just HOW does one initiate “TrimForce”?? Nothing in the linked article seems to describe the steps one must take. Any chance you or someone could spoon-feed us the “How-2”??
My recommendation to you is to not bother with it if your SSD is newer than 1 year old. As I mentioned in my post above, we are really not witnessing any noticeable performance differences under 10.10 (or other OS X version) with or without TRIM enabled.
As for using trim force, it’s pretty painless –
sudo trimforce enable
Turns it on
sudo trimforce disable
Turns it off