Implications of using a USB SSD drive to run VM images off

external-diskhard drivessdusbvmware

I'm running VMware Fusion on my Apple Macbook Pro (15 inch, Mid 2012, OSX 10.10.2), and have several VM images that are stored on an external USB3 disk (WD Passport).

The external disk is fine for regular usage, but the performance difference between running a VM from the external drive compared to running it from the internal SSD is huge. As my SSD is limited in size, I'm unable to host all of my VMs on it, and constantly moving VMs between the external disk and the SSD is quite time-consuming.

Here's a screenshot of test using the Blackmagic Disk Speed Test software on the USB drive:
Speed test

Therefore, I was looking at external SSD disks, specifically for running my virtual machines. AFAIK, I have the option between using a flash disk (such as the VisionTek 120GB USB 3.0 Pocket SSD Drive) or buying an internal SSD drive and sticking it in a USB enclosure (e.g. the Inateck USB3 HDD Enclosure with UASP). Other interfaces are not really an option: the MacBook does not have eSATA and anything with a Thunderbolt connector is prohibitively expensive.

From what I've read, the USB controller does not support TRIM, which is less than ideal. However, TRIM should be supported when using the USB Attached SCSI (UASP) protocol instead of the Bulk-Only-Transport (BOT) protocol.

Here's what I'd like to know:

  • Is it true that UASP offers TRIM support? If so, what do you need to do to enable it (if anything)? E.g. do you need to run something like Chameleon SSD Optimizer to enable TRIM on the external disk?
  • How can I determine if UASP is supported on my MacBook Pro? I've read the instructions here, but this means I would need a UASP enabled device first in order to check if it is recognised as such. I'd prefer knowing if it'll work before ordering the hardware.

In closing: two screenshots from the USB and Extensions section from the System Information app:

System Information - USB
System Information - Extensions

Best Answer

USB 3.0 supports UASP which allows for TRIM

Re: enclosures - If you're using an external enclosure, the chipset must be able to pass through TRIM commands to the drive. So without that, everything is a moot point. And when connected in this manner, I would venture the drive would probably not even be recognized by the system as an SSD.

Question - can't you just upgrade your internal SSD to a larger capacity?