Large USB Flash Drive Performance

Actually that was the problem when I used the MojoPac software http://www.mojopac.com/portal/content/hellomojo.jsp
It takes ages to load. I am not sure if external hard disks are a better option.

There are already SSDs with a sustained write performance in the 50-100MB/s range, however these are significantly more expensive than comparable hard drives. Expect prices to come down dramatically within 25 months. Word of caution: In real-world tests, these SSDs do not (yet) conserve power compared to hard drives. So “all” you is get far better random seek performance, totally quiet operation and maximum shock resistance for a hefty price tag…

Can someone explain to me, with these performance characteristics, why there was so much of a big deal with Vista’s ability to use a USB flash drive as a cache?

The latency is lower, right? Or something? The numbers are consistent with my experience with flash drives, so even though I know the new tech will be capable of some good number… .I’m really confused as to why that’s a useful feature today.

Based on your data, I can compare sequential read/write.

But what is the typical random read/write for HDDs?

@Mike, because most people don’t know about the speeds of flash drives so Microsfoft were able to say. “Use your flash drive to add more cache”. They didn’t say “But it’s very little difference”

I posted a link to this blog on Clarkhoward.com technology board:
If you’ve been shopping for a USB drive (aka, thumb drive, flash drive) check out Jeff Atwood’s blog at http://www.codinghorror.com/blog/archives/001127.html. “Coding Horror” is mostly a programming blog, but every now and then, Jeff Atwood’s his passion for geekery intersects with “bang-for-the-buck”

I’ve actually heard somewhere that its not worth formatting your usb drive to NTFS and that you should keep it as FAT32 because it recovers better when you pull it from the usb slot. Also did you try your tests on a FAT32 system just to see if there’s a difference?

MTRON is scheduled to release an even faster generation of SSDs on June 20. The MSP 7500 series features read speeds of 130MB/sec and write speeds of 120MB/sec, with a maximum capacity of 64gb for the 2.5" form factor and 128gb for the 3.5" form factor. That’s a nice boost from the MSP 7000 that Jeremy linked above (rated at 120MB/sec read and 90MB/sec write, maxing out at 32gb in the 2.5" form factor).

I could just barely restrict myself to a 64gb mobile drive, but I’m not willing to cough up $1,872.00. When the 128gb drives are selling for about half that price, I’ll finally succumb to the temptation :).

“I’m starting to wonder why we don’t just take our entire computing environment, operating system and all, along with us and boot it up on whatever computer we happen to encounter in the wild.”

Some people do:

a href="http://docs.fedoraproject.org/release-notes/f9/en_US/sn-Live.html#sn-USB-Booting"http://docs.fedoraproject.org/release-notes/f9/en_US/sn-Live.html#sn-USB-Booting/a

It seem that Windows 7 will be able to boot up from .vhd image - so that you could have all your applications and data in your pocket and boot from that on any windows 7 pc: http://www.istartedsomething.com/20080523/windows-7-native-support-virtual-hard-disks/

And completely unrelated: a benchmark of various filesystems on same flash drive would be nice to have, as a performance of a high-end flash drive (A-data PD7, 25MB/s) when copying a lot of small files on FAT32 is downright abysmal (hundreds kb/s or even less).

I have an aluminium-case, (physically) bulletproof 16GB corsair. I prefer FAT32 filesystem, because then I can boot an operating system from it. Although it really is slow compared to containing a 200MB lightweight linux.

@Reuben, the difference lies in how you’re writing to disk.
In the first example, you’re writing sequentially each file to disk.
In the second example, you’re writing randomly to disk. It has nothing to do with parallel processing.

The comments about random access times on a flash drive seem a little bit off.

A flash drive should have exactly the same random access read time as sequential access. There’s no spinning disk and no time difference no matter where you read. If you see any speed up with sequential access I expect it’s from the operating system reading ahead and caching results, a common hard disk optimization.

Random writes on a flash drive will be terrible. Every time you change a byte the following happens:
The block of flash is read into a cache
The block of flash is erased
The block of flash is written, with your new byte
You can imagine that the above process is slow and most applications don’t try to optimize around this. Flash devices also have limited life times dictated by the number of times a block can be erased.

Nearly all modern flash drives have a translation layer between the data on the disk and the FAT file system. These try and spread the write load across all the flash blocks. So your sequential reads aren’t and the exact effect of writing becomes commercial black magic.

Initially I always thought 10MB read speed was very good. Until I saw a review of Corsair, OCZ and Xporter 16GB drive, I straight away bought a Corsair 8GB.

I’ve tested my Corsair with SLAX, works pretty well. I can’t get my hand on OCZ, so can’t say anything about it. Compare that to Kingston 1GB that I used to like, Kingston booted into SLAX in 2:30min, while Corsair booted in 1:45min. That’s booted into GUI. Not bad actually. I think SLAX’s architecture also contribute to the faster bootup time compare to other live linux.

A word of caution about the corsair flash drives. I purchased an 8 gig (I think) drive about a year ago from them. I assumed that the rubber surround would provide some durability. In a matter of a week the usb end of the memory drive broke off. I RMA’d it to newegg and my new one proceeded to do the same thing! I gave up after that as I didn’t want to pay shipping to get another defective drive.

They might have fixed the problem by now, but searching through the newegg product reviews for “broke” shows that it still plagues them.

Now that I’ve dipped my toes into the world of embedded programming, I am struggling to deal with the special problems of flash storage. We have to be careful not to write to flash too often, since we get only a limited number of writes over the life of the device. And we don’t dare write on the main application thread, since the write operation can block for tens of seconds.

I’m in no hurry to give up traditional hard drives.

I have looked over many numbers relating to flash drive speeds compared to hard drive speeds. On paper, the flash drives are obviously going to be slower, however, the numbers are now in the same ball park so it was time to see how well they actually performed.

All of our development environments (Windows / Visual Studio) run on local virtual machines using mapped drives for storage. The main reasons for this is that it’s very easy to setup a new developer and you can “blow” the machine and revert to a fresh installation any time it starts to feel “sluggish”.

The majority of developers run these virtual machines on either their primary hdd, or a second internal hdd. The performance differences here is very minimal, as long as you have the memory.

I have also had seen good results in using external USB hard drives. Whilst there is a very minor performance decrease the benefits of being able to pick up your own development enviroment and run it from anywhere far outweigh them.

With USB flash drives at 16 and 32GB now the next step was to try running the virtual hard drives directly from your keychain. The first tests were using the 16GB Corsair Flash Voyager, for performance, price and availability it seemed like a reasonable choice. Unfortunately the reality of it was far from acceptable. The virtual machines ran so badly they were far beyond usable, even just using the drives to transfer the virtual disks from one machine to another too slow to justify.

In conclusion, whilst having 16GB and 32GB flash drives lying around is fantastic for keeping data with you, the access times just aren’t anywhere near close enough to run a virtual OS off. However, with the advancements in SSD technology and the promises of USB 3.0 maybe we’re not too far away.

Robin

Jeff,

how you seen this Patriot 150x speed 32GB USB drive? That sounds like a deal. I wonder if it holds up in speed tests.

Or the 64GB USB drive for four grand? (very funny price)

http://www.amazon.com/USB-2-0-Busdrive-64GB-Pro/dp/B000EORV8G/ref=sr_1_1?ie=UTF8s=electronicsqid=1212506251sr=1-1

BugFree: still slow. says right there on the Amazon page:

Data Transfer Rate: 20MBps Read Maximum USB 2.0 - Data Transfer Rate: 15MBps Write USB 2.0

I’m confused. If flash drives are slower than hard drives, then why does ReadyBoost improve performance? Is it simply because you don’t get all the seek latencies for random access?