9

I use a MacBook Air as my primary machine, and the 128GB SSD means space is precious. To save about 10 GB, I've been running Parallels with a Windows XP VM off an external USB hard drive, which performs as well in everyday use as running the VM off the internal SSD.

So, I bought a tiny 32GB USB 2.0 flash drive, plugged it into the MacBook Air, formatted it first as ExFAT (which was slow), then as Mac OS Extended (Journaled) (which was also slow), and copied over my VM file, and ran Parallels off it.

My full experience is documented here: http://www.midwesternmac.com/blogs/jeff-geerling/running-windows-xp-vm

Straight file copies are really fast — 30 MB/sec read (solid the whole time), and 10-11 MB/sec write (solid the whole time). But I noticed that once XP started running, the disk access rates were in the low KB ranges.

Are USB flash drives really that poor at random access, or could I possibly be missing something (the format of the flash drive, etc.?)?

Of note, I've tried the following, to no great effect:

  1. Formatting the drive as either ExFAT or Mac OS Extended (Journaled)
  2. Unplugging all other USB devices and turning off Bluetooth (which runs on the right-side-port USB bus).
  3. Plugging in the flash drive either direct in the right side port, or the left side port, or into a USB 2.0 hub
5
  • The main question has to do with the bold paragraph above. I KNOW that flash drives don't have modern HDD throughput ratings, but can someone explain why random access seems so poor? Could it be Parallels, or are flash drives really that bad at random access? Jan 20, 2012 at 15:30
  • 1
    Heh I have a Macbook Air too and was planning on doing the same thing... looks like I won't be now. If there's a memory stick that uses the Thunderbolt port, now then we'd be in business.
    – Matt Frear
    May 23, 2012 at 16:02
  • USB FLASH DRIVE ≠ SSD DRIVE -- Now you know! One's for storage, the other's for disk I/O and long life doing it. Jun 4, 2012 at 0:07
  • I have the same problem except I had a single virtual drive on the USB stick holding my profile. I hit some serious lags. It must just be the USB stick cannot handle the IO or maybe it can't handle the multitasking. As far as those talking about performance and using throughput as the standard, they are wrong. throughput is not the correct standard for OS type stuff, you want to look at IOPs and multithreading.
    – user183536
    Dec 30, 2012 at 21:01
  • 2 years later, is there have been any improvement / solution? I am currently facing this issue
    – user324459
    May 17, 2014 at 11:20

3 Answers 3

6

I was just going to comment with this, but ran out of room...

USB flash drives are very poor for random access read and write unless you specifically purchase a USB flash drive for speed. You'd know if you had a 'fast' USB thumb drive since you probably would have paid two or three times more for it. This versus this. 70MB/s & 39MB/s versus 155MB/s & 150MB/s.

The real issue is that the USB 2.0 port on the Macbook Air maxes out. The theoretical maximum data rate in USB 2.0 is 480 Mbit/s (60 MB/s) per controller and is shared amongst all attached devices. So even if you get a 150MB/s USB drive, you'll top out at around 60MB/s.

4
  • 1
    Even so, though... the interface is coming nowhere near maxing out while I'm running the VM. I'm specifically wondering about whether I can improve heavy I/O performance. Raw throughput doesn't seem to be the problem here. Jan 18, 2012 at 3:58
  • Indeed, your issue is the "cheap 32GB USB flash drive". You can't get good performance from that. Consider that SATA's lowest speeds are 1.5GB/s (Giga, not Mega). 30MB/sec or so is just not fast enough to do anything and if it's just some garbage USB drive, I'd bet you're only getting 17MB/s on random write - or less. You need to either switch to a external spinning drive, a fast SSD, or a faster USB. It's not going to be "cheap" either. The cheapest option would be an iPod (with spinning drive) or and external hard drive.
    – skub
    Jan 18, 2012 at 13:18
  • 1
    Even 17 MB/s random write is better than the last PC's disk I owned (ATA/33, something like 8-10 MB/s random write), so I don't think that would be the problem, really. I see a lot of people booting linux and other OSes off flash drives without any reports of lagginess. Jan 18, 2012 at 21:35
  • ATA/33 moves data at 33MB/sec which is THREE TIMES faster than your USB drive and it was introduced 10+ years ago. Modern hard drives move GIGABITS of data. My explanation is sound and correct. If you want better performance use or buy a different device.
    – skub
    Jan 19, 2012 at 0:07
6

I'm referring to usb flash sticks in this answer since if you are okay with something larger, you could get a SATA SSD and put it into a USB3+SATA enclosure.

Out of the bazillion USB flash sticks and drives, all but handful use a combination of low cost flash solution (single mlc) and a dumb controller with no cache ram. For flash technology to be more usable, look at what's inside SSD, there's typically several chips/dies, controller and cache. This cache serves the purpose that allows to take in multiple pieces of data and concurrently write them. But if you have single cheap mlc solution then you can't write concurrently.

There are some benchmarks out there and I've spent full day digging through various reviews and benchmarks. It appears that any single moment, there are from zero to two models on the market that have the technology in them that enables better random access (writes).

Here's a site with some benchmarks. In the 16 and 32 GB categories I looked, this is the overall fastest usb2/3 flash memory stick.

http://usbflashspeed.com/15177

Kingston isn't entirely terrible company, when they discontinued this product, they were nice enough to make a new product with the same name and crap performance but did add a "g2" or "gen2" there so you have ability to avoid paying the gen 1 price for much inferior "gen 2" product.

This is quite typical in the biz: switch the components to worse performing ones soon after positive reviews are out. Like, recently I got a Corsair SSD and reviewers all reviewed different chips than Corsair sent to the retail trade channels. All the Corsair Performance Pro reviews are invalid - they show and tell the device has 32 nm flash but since 24 nm is cheaper, Corsair switched to that last year while still handing 32 nm units to reviewers. I always buy based of reviews but it often bites me in the arse: In 2005 I got LG LCD. Reviewers got IPS panel and I got TN panel. Same model number!

0

I can confirm that Lexar JumpDrive S45 USB 3.0 128 GB flash drive (read 150 MB/s, write 45 MB/s) also suffers from very poor random access performance. I've tried to use it in Parallels Desktop (MacBook Pro Retina 13" Late 2013) with no luck: either ExFAT or HFS+ gives almost unresponsive VM. FORGET IT for that purpose.

Lexar 128GB USB 3.0 Lexar 128GB USB 3.0 Blackmagic Drive Speed Test

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .