Improve SSD performance on OS X

0

1

Since approx. one year I'm using a SSD in my Mac mini. After having it built-in I remember a speed-improvement compared to the default hard disk, but today it (the Mac mini) feels sluggish. What can I do to improve the SSD performance, except of reinstalling OS X 10.6?

Mike L.

Posted 2010-12-13T19:42:59.533

Reputation: 4 539

Answers

1

You probably have an SSD with severely degrading performance due to OS X's lack of TRIM support.

There's nothing you can do, except erasing (this can be made less painful e.g. by using the OS X Installer's Time Machine restore capabilities) or get a different SSD.

Daniel Beck

Posted 2010-12-13T19:42:59.533

Reputation: 98 421

Is there a possibility to boot a Linux CD and trim the SSD? – Mike L. – 2010-12-13T20:37:12.030

2If you have an SSD where a TRIM-style cleanup can be manually run, then yes. You'll have to check the manufacturer's tools for that. However, most of them will do a secure erase on the drive, destroying all the data on it. – afrazier – 2010-12-13T21:36:30.860

OK, I've replaced the SSD with a normal hard disk and OS X is fast again. The SSD works fine in Windows 7 - at least for now. – Mike L. – 2011-01-26T14:39:58.857

@mklhmnn Windows 7 supports TRIM. I think it'll continue to work just fine.

– Daniel Beck – 2011-01-26T14:41:41.147

Yes, Windows 7 supports TRIM, but I'm not sure whether my SSD supports it, because Windows 7 allows to defragment it. – Mike L. – 2011-01-27T19:50:27.890

@mklh You should be able to find some information on the web about it, given the model of the SSD. – Daniel Beck – 2011-01-27T19:58:02.373

1

Also, you can use dtrace to get some insight into how your disk is being used. For example,

$ sudo iopending
Password:
Tracing... Please wait.
2010 Dec 13 21:37:26,  load: 0.02,  disk_r:     36 KB,  disk_w:    108 KB

       value  ------------- Distribution ------------- count    
         < 0 |                                         0        
           0 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@      8712     
           1 |@@@@@                                    1284     
           2 |                                         2        
           3 |                                         2        
           4 |                                         0        

2010 Dec 13 21:37:31,  load: 0.02,  disk_r:     48 KB,  disk_w:    224 KB

       value  ------------- Distribution ------------- count    
         < 0 |                                         0        
           0 |@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@     9054     
           1 |@@@@                                     920      
           2 |                                         18       
           3 |                                         2        
           4 |                                         0        
           5 |                                         2        
           6 |                                         0        
           7 |                                         0        
           8 |                                         2        
           9 |                                         0        
          10 |                                         0        
          11 |                                         0        
          12 |                                         0        
          13 |                                         0        
          14 |                                         0        
          15 |                                         2        
          16 |                                         0

As you can see, this shows you histograms of your disk's transaction queue. If you have a peak somewhere else than at 0, that means your disk is pretty busy. You can also use the iotop command (with sudo) to see what processes are using the disk.

It's not going to make your SSD faster but at least you have some idea of what's going on...

Oh and to simulate TRIM you can try running "Erase Free Space" from the Erase tab of your disk in Disk Utility. That will overwrite free space with zeroes and should have the same effect as trim.

w00t

Posted 2010-12-13T19:42:59.533

Reputation: 811