Support SSD's

Posted:
in Genius Bar edited January 2014
Now that Apple is adopting more SSD's options for their Mac's, should the next upgrade to OS X support TRIM?

Comments

  • Reply 1 of 17
    jeffdmjeffdm Posts: 12,951member
    I say yes.



    They should get in on making a new drive module standard, people have said TRIM is needed because SATA is still using the spinning disk metaphor. Maybe also get the standards body to augment SATA with an SSD mode for the intermediate term. That's going to take a while, so implementing TRIM is probably the quickest thing that can be done.
  • Reply 2 of 17
    finetunesfinetunes Posts: 2,065member
    Quote:
    Originally Posted by JeffDM View Post


    I say yes.



    They should get in on making a new drive module standard, people have said TRIM is needed because SATA is still using the spinning disk metaphor. Maybe also get the standards body to augment SATA with an SSD mode for the intermediate term. That's going to take a while, so implementing TRIM is probably the quickest thing that can be done.



    Thanks for the comment.



    ARE YOU READING THIS STEVE????
  • Reply 3 of 17
    hmurchisonhmurchison Posts: 12,419member
    I'd rather have the drive handle TRIM functionality in its own firmware.
  • Reply 5 of 17
    finetunesfinetunes Posts: 2,065member
    Quote:
    Originally Posted by hmurchison View Post


    I'd rather have the drive handle TRIM functionality in its own firmware.



    Might be better for some who have installed third party SSD's previously mentioned like OWC and OCZ, however those who have had SSD's in their Macs and those who choose the Apple version of SSD's for their new Macs would probably like to see this in OS X--nothing to loose.
  • Reply 6 of 17
    hmurchisonhmurchison Posts: 12,419member
    OS X recognizes TRIM status now so actual support could be coming. It's important to note that the SSD needs to explicitly support TRIM in its own firmware first.



    We're not going to automatically get TRIM on SSD that don't support it natively.
  • Reply 7 of 17
    finetunesfinetunes Posts: 2,065member
    Wish to thank all those who made comments on this thread. Please continue to add comments as this is an important issue.



    FT
  • Reply 8 of 17
    jeffdmjeffdm Posts: 12,951member
    Quote:
    Originally Posted by hmurchison View Post


    OS X recognizes TRIM status now so actual support could be coming. It's important to note that the SSD needs to explicitly support TRIM in its own firmware first.



    We're not going to automatically get TRIM on SSD that don't support it natively.



    And that makes sense, it's a means for the OS to tell the drive what files are really being deleted, if one of those two pieces aren't in place, then nothing is going to happen.
  • Reply 9 of 17
    docno42docno42 Posts: 3,755member
    The "SSD issue" is a rather simple one.



    Unlike with magnetic disk, where there is no penalty in flipping a bit to write data, an SSD uses flash. To write to a flash memory cell, the whole cell has to first be erased. And a flash memory cell is many more bits then individual bytes on a traditional hard drive.



    What this means is, that when you first get a flash drive it's full of empty cells. You can write at top speed because all the cells are empty. Indeed, when I first got my Intel SDD way back when SSD's were pretty new and TRIM was unheard of, at first life was great! The SSD was all it was billed to be and more! My Windows XP laptop booted in under a minute instead of 5, applications launched in seconds instead of minutes. I was ecstatic!



    Until after a few weeks, the SSD started slowing down. Eventually, it was slower than the drive I replaced it with



    And then the whole issue of flash memory cell size and the fact that a whole cell has to be erased before it can be written to surfaced as the cause for the slow down. What happened is, I had been using my SSD long enough, and written enough data to it, that there were no more 100% empty flash memory cells. Whenever I needed to write data - for whatever reason - the drive had to read out the data in a partial cell, erase it, then write back the data that was there plus the new data I needed to save.



    It's a double whack performance wise since you have to read the data out of the cell first, then write the data that existed plus the new data back. What's worse, the data the drive is reading out of the cell may not even be data you care about any more. In all modern file systems, when a file is erased, the only thing that "happens" is the OS updates the directory of files. But the bits remain on the disk where they were, it's just that the OS will overwrite them the next time it goes to save a file. This is why file recover programs can undelete a file you permanently delete via the OS if you run them before the portions of the disk where the file existed get overwritten by new data. The rub is the disk, at a low level, has no way of knowing any of this. It's "blind" to what goes on at the file system level. To the hard drives controllers, all bits are precious and must be preserved.



    Eventually the understanding of the fundamental difference between magnetic disk and flash based SDD when it comes to writing data spawned one of two paths to ensure that there is a steady supply of totally empty flash cells to write to so you have full performance. One strategy is TRIM - which allows the OS to communicate with the SSD at a low level and tell the SSD what data is safe to erase. This allows the SSD controller to shuffle flash memory cells around to ensure there is a steady supply of totally empty cells to ensure top write performance. Without TRIM, a drive simply has no idea what data on a drive is good or not, and as the drive is used more and more there may not be enough partially filled cells for the controller to consolidate to provide empty cells for peak performance.



    Remember, it's not a function of how much free space you have as reported by your OS. That's an illusion presented by the operating system and file system. From the disk drive's perspective, all bits written to the drive are valid and must be preserved. TRIM solves that by giving the SSD controller insight into whats going on at the file system level, allowing it to do garbage collection and flash memory cell consolidation by throwing out data that is no longer relevant.



    The other strategy is to build in an extra amount of space that is reserved for garbage collection. If it's a 100GB drive, then there is say 110GB of capacity, but that extra 10GB is never exposed to the computer - it's hidden by the drive controller and used exclusively to juggle blocks on disk in idle time. Very similar to disk defragmentation, but this time it's defragmentation of free flash memory cells. Partially filled flash memory cells are consolidated into completely full memory cells, and the partially filled flash memory cells are 100% cleared so that write's can happen at maximum speed. There is no need for TRIM or to know what is going on at the file system level as there are plenty of extra flash memory cells to allow the controller to do this, even on a completely full disk.



    That's the tack taken by drives like the OWC Mercury Extreme. The downside is the extra cost in having extra flash built into the drive that doesn't count as useable space - it's just overhead. The upside is, since the drive does the consolidation of the flash cells internally, and it has plenty of free flash cells to do so, it's totally OS agnostic. It will always work, no mater what is running on top of it, no matter how long the drive is in service.



    I have an OWC Mercury Extreme, it's been in my Mac Pro for over five months and I have no slowdown. I couldn't be happier with it. Personally I couldn't care less if OSX never gets TRIM support



    Rather than wishing for TRIM support, which hacks the SATA protocols, which are hacks of the ATA and even earlier disk protocols that are over a decade old - remapping new technology over and over on to extremely old and now severally outdated concepts such as heads and cylinders; what we really need is a new interface to replace SATA and file system that intrinsically understands and can compensate for the differences in flash based SSD vs. traditional magnetic disk.



    Then you really won't need fancy tricks like TRIM - it will just work - and at far higher performance levels than we are seeing even now.
  • Reply 10 of 17
    jeffdmjeffdm Posts: 12,951member
    Quote:
    Originally Posted by DocNo42 View Post


    The "SSD issue" is a rather simple one.



    Unlike with magnetic disk, where there is no penalty in flipping a bit to write data, an SSD uses flash. To write to a flash memory cell, the whole cell has to first be erased. And a flash memory cell is many more bits then individual bytes on a traditional hard drive.



    It's not just the erase and write. Maybe you were alluding to it and I missed it, but one other major reason this comes up is that each flash memory block only has a certain number of writes before it either can't be written anymore or just goes corrupt, at least, far more limited rewrites than a hard drive. You can't just have a single file hogging the same location with barely any writes while another file gets written several times a day in the same location burning away that memory cell. For this reason, the SSD controllers shuffle data around on every write to level out the "wear".



    Quote:

    Rather than wishing for TRIM support, which hacks the SATA protocols, which are hacks of the ATA and even earlier disk protocols that are over a decade old - remapping new technology over and over on to extremely old and now severally outdated concepts such as heads and cylinders; what we really need is a new interface to replace SATA and file system that intrinsically understands and can compensate for the differences in flash based SSD vs. traditional magnetic disk.



    Then you really won't need fancy tricks like TRIM - it will just work - and at far higher performance levels than we are seeing even now.



    The problem is that you have differing time horizons for different solutions. Because of that, it's not a mutually exclusive, you really want both, you want new drive module and controller standard as a better long term solution, but takes longer to implement. Implementing TRIM is the best thing available for the short term, but it should be a lot quicker to implement too.
  • Reply 11 of 17
    docno42docno42 Posts: 3,755member
    Quote:
    Originally Posted by JeffDM View Post


    It's not just the erase and write. Maybe you were alluding to it and I missed it, but one other major reason this comes up is that each flash memory block only has a certain number of writes before it either can't be written anymore or just goes corrupt, at least, far more limited rewrites than a hard drive. You can't just have a single file hogging the same location with barely any writes while another file gets written several times a day in the same location burning away that memory cell. For this reason, the SSD controllers shuffle data around on every write to level out the "wear".



    They didn't at first. That's a side benefit of either TRIM or the extra space model, the controller as it's optimizing to ensure free flash cells can also do the wear leveling.



    What's often isn't pointed out that TRIM will cause an SSD to fail faster since you are doing more writes to a fixed space.



    The extra space solution used in drives like the OWC Extreme actually extend the life of the SSD as there are more cells to work with, and if cells go bad, more available to work around the bad cells.



    Quote:

    The problem is that you have differing time horizons for different solutions. Because of that, it's not a mutually exclusive, you really want both, you want new drive module and controller standard as a better long term solution, but takes longer to implement. Implementing TRIM is the best thing available for the short term, but it should be a lot quicker to implement too.



    No, using an intelligent drive like the OWC is the best short term solution. It works now No need for TRIM. Rather than mess around with hacks like TRIM, I would much rather see Apple ship a new file system that is SSD aware.



    Dominic Giampaolo is still working at Apple - I hope he's got something better cooking in the labs than just the journaling improvements in HFS+
  • Reply 12 of 17
    jeffdmjeffdm Posts: 12,951member
    Quote:
    Originally Posted by DocNo42 View Post


    They didn't at first. That's a side benefit of either TRIM or the extra space model, the controller as it's optimizing to ensure free flash cells can also do the wear leveling.



    Wear leveling algorithms seem to predate both TRIM and extra space for SSD. That said, a little bit of "excess space" has been used in hard drives for the longest time, to hide defects in manufacture or if a sector eventually goes unrepairably corrupt.



    Quote:

    No, using an intelligent drive like the OWC is the best short term solution. It works now No need for TRIM. Rather than mess around with hacks like TRIM, I would much rather see Apple ship a new file system that is SSD aware.



    There is a great deal of complexity in a file system too, and you still need a similar form of communication with the controller. I would not expect a new file system for years, they don't just jump out of nowhere. Apple tried for years to do ZFS but it didn't work out.
  • Reply 13 of 17
    finetunesfinetunes Posts: 2,065member
    I have learned some interesting facts after starting this thread. There should be more like this and I hope that the Mac magazines will pick up on this topic. SSD's are coming to be more affordable and as the capacity increases, we can expect to see SSD's becoming the standard, with higher capacity HD or SSD/HD hybrids being offered for those who need massive storage space in their computers.



    I guess that the TRIM option may not be available to those who bought their MBP and MBA with standard Apple SSD's,\ but hopefully there will be a way around this. I would hate to have to replace my 256 GB SSD any time soon. It is about half capacity. Will be looking to get an external drive to keep all my documents and files loaded to that and use the internal SSD for OSX and apps.



    Does any one know if he SLC/SSD's offer any advantages other that speed?



    Good article @



    http://www.maclife.com/article/featu...drive_showdown
  • Reply 14 of 17
    docno42docno42 Posts: 3,755member
    Quote:
    Originally Posted by JeffDM View Post


    Wear leveling algorithms seem to predate both TRIM and extra space for SSD. That said, a little bit of "excess space" has been used in hard drives for the longest time, to hide defects in manufacture or if a sector eventually goes unrepairably corrupt.



    Yes, but the comparatively prohibitive costs of flash have prevented that as a deliberate strategy with SSD's. It's just a side benefit of the extra space garbage collection strategy vs. TRIM.



    On a drive with no extra capacity, if you loose flash cells you loose data. On my OWC SSD, I'm allot lest likely to loose data - the worse that will happen is my drive will probably slow down a little as there will be fewer totally empty cells available.



    Quote:

    There is a great deal of complexity in a file system too, and you still need a similar form of communication with the controller. I would not expect a new file system for years, they don't just jump out of nowhere. Apple tried for years to do ZFS but it didn't work out.



    Apple abandoned ZFS due to uncertainties in the status of the patent fight between Sun and NetApp. And now with Oracle in the mix, I expect Apple feels even better about abandoning ZFS.



    Dominic has been at Apple for years and Apple is bold enough to do the right thing and engineer the whole package with a new controller, interface - the whole enchilada. Anyway, I readily admit this is just a wild hope on my part.



    If anyone is going to make such and advancement, I put my money on Apple. Few other PC manufacturers are interested in doing more than simply milking what others have done - Dell is the epitome of this. And yet, hard drives are still the single greatest bottleneck in performance, even SSDs. SATA is a large contributor to this along with the overhead of mapping magnetic disk concepts onto fundamentally different technologies.
  • Reply 15 of 17
    jeffdmjeffdm Posts: 12,951member
    Quote:
    Originally Posted by DocNo42 View Post


    Apple abandoned ZFS due to uncertainties in the status of the patent fight between Sun and NetApp. And now with Oracle in the mix, I expect Apple feels even better about abandoning ZFS.



    Apple wasn't exactly quick about implementing it either. Wasn't it slipped from 10.5 to 10.6 to 10.7, then abandoned? If it takes years to graft in a new file system, then I don't expect a new file system in 10.7 unless they've been working on it for a couple years already.
  • Reply 16 of 17
    docno42docno42 Posts: 3,755member
    Quote:
    Originally Posted by JeffDM View Post


    Apple wasn't exactly quick about implementing it either. Wasn't it slipped from 10.5 to 10.6 to 10.7, then abandoned?



    We don't know why it took so long. It could have been technical, it could have been the patent thing, it could have been both. We don't know. And ZFS still isn't stable on other platforms as it is on Solaris - you can draw whatever conclusion you want to from that; for me it's largely irrelevant.



    If/When ZFS gets the ability to dynamically change the size of storage pools 'ala Drobo, then I'll get excited. Otherwise it's just a software version of hardware RAID where to resize an array I basically have to back my stuff up, blow away the array and re-create it. Color me unexcited.



    Quote:

    If it takes years to graft in a new file system, then I don't expect a new file system in 10.7 unless they've been working on it for a couple years already.



    And who's to say they haven't been working on it for years already? Apple has a pretty good history of keeping things secret



    Again, I realize it's probably a pipe dream on my part, but I do feel a little like Princess Lea "Help me Obi-Wan Apple - your my only hope!"
  • Reply 17 of 17
    finetunesfinetunes Posts: 2,065member
    Some insight for those who don't understand ZFS--me for 1



    OpenSolaris

    http://hub.opensolaris.org/bin/view/...up+zfs/WebHome



    Solaris OS-Oracle

    http://www.sun.com/software/solaris/ds/zfs.jsp



    Solaris ZFS Administration Guide

    http://docs.sun.com/app/docs/doc/819...sover-1?a=view



    Homework try to understand all of this.



    Is this what you are talking about?



    http://docs.sun.com/app/docs/doc/819...hk?l=en&a=view



    Thanks
Sign In or Register to comment.