Large USB Flash Drive Performance

In the last three years, I've gone from carrying a 512 MB USB memory stick to a 16 GB USB memory stick. That's pretty amazing.


This is a companion discussion topic for the original blog entry at: http://www.codinghorror.com/blog/2008/06/large-usb-flash-drive-performance.html

I’m waiting for the prices to drop a bit
Story of SSD drives in a nutshell. :slight_smile:

Well, yeah, and you can buy $2 wine that will get you just as drunk as the $50 kind, too.

So a $50 wine is worth it, but a $100 wine isn’t? :slight_smile:

Here’s a good review of some SSD benchmarking (Samsung, OCZ) versus the Velociraptor:

http://www.anandtech.com/printarticle.aspx?i=3311

Looks like the SSD wins hands down in most cases.

Wikipedia:
“Like all flash memory devices, flash drives can sustain only a limited number of write and erase cycles before failure[20]. Mid-range flash drives under normal conditions will support several hundred thousand cycles[20], although write operations will gradually slow as the device ages. This should be a consideration when using a flash drive to run application software or an operating system.”

And this http://en.wikipedia.org/wiki/Solid-state_drive is also a good read.

I noticed this behavior on a 16 gig USB that I just got. Woe to the person to tries to put a secure storage file on it and use it real-time.

I guess the downside of the USB “standard” is that there are so many layers of abstraction, interrupts and polling that the time left to do actual heavy lifting kind of falls by the wayside. If Firewire was the “standard” you would see much higher speeds. I don’t get super speed out of USB hard drives either.

But it is criminal to me that a solid state device can’t beat something with as many moving parts as a hard drive.

As you point out, the random access speeds are a real killer that can dwarf the transfer rate problems for some applications.

Copy a large file from your hard drive to flash and you see the performance penalty that you suggest. Copy 10,000 small files and it gets really, really ugly.

To give a concrete example, my students are able to run Eclipse off of jump drives without any real issue (single, large executable). Ruby on Rails (30,000+ small files) from a jump drive will run, if you are willing to put up with speed roughly on par with glaciers.

“I’ve been bringing my OS around with me for about a year now. Puppy Linux on flash, with a supplemental CD-ROM booter for comps that won’t boot straight to USB.”

Why didn’t I think of that?! I’ve been suffering from having to burn new CDs for bootable OS’s for a while now.

So much information about sizes, speeds, and cost, but little explanation as to WHY you need one of these things. The Internet is available in most places you visit, isn’t it?

I just can’t see the benifit of buying a small velociraptor hd.

Can just as well buy a Samsung Spinpoint 1tb for less then halve that price who will write/read as fast but is a bit slower for finding data.

Can just as well buy a Samsung Spinpoint 1tb for less then halve that price who will write/read as fast but is a bit slower for finding data

Well, yeah, and you can buy $2 wine that will get you just as drunk as the $50 kind, too.

Furthermore, why pick one over the other? Why not have both? I prefer to have 1) a very fast boot drive, and 2) a large data drive. Two spindles confers other advantages as well.

I see my “very fast boot drive” migrating to SSD once they get speeds up and prices down a bit. I think even a modest 64 GB would be fine for me, as long as it’s crazy fast and not too comically expensive.

I have a 4GB Rally 2, and I’m really happy with it (though I might consider upgrading it to 16 or 32GB). However, I think you should have compared it with the Voyager GT instead of the Voyager.

I’m not 100% sure, but I think the Voyager GT is faster than Rally 2.

Your write times are off. Writing a 32GB drive should take twice as long as writing a 16GB drive, which would put it around 52 minutes, assuming 13 and 26 were right.

First off, nice blog. I check into it every day. I find it entertaining and educational to read.

I wanted to point out something quite weird and frustrating that I have noticed, which would be nice if you checked out into, since you have just mentioned USBs.

I have noticed this quite some time ago, many many months ago. So, you copy a file X onto a USB, and it takes for example 5 minutes. Once it finishes, you copy file B, and it takes maybe 10 minutes. So altogether you get 15 minutes of transfers.

Now situation 2. You start copying file A onto a USB. It tells you 5 minutes left. So you try to copy file B at the same time… Suddenly it goes up to hours. Why is this? Why does USB handle parallel tasks so horribly?
Is it in the architecture?
Is it only me?
Is it only on Windows?
What is going on here?

I managed to replicate this behaviour on Windows Vista, Windows XP, and Ubuntu. I also tried various USB sticks. Is it just that all my sticks are cheap, or can ayone else confirm that this behavious is common to them too please?
Thanks.

With, all these ready boost flash drives, i wonder how fast my VS 2008 builds with non-boosted setup. Is there any tool where i can monitor the performace with my eyes ?

Beware of cheap flash drives. I get them from vendors from time to time and I’ve seen a few die after only a few weeks of light-duty use.

Always always always back up anything stored on a flash drive to more durable media.

If you have the money (or time to wait the price out), then nothing beats quality SSDs. 2nd generation is not slow anymore, you don’t need to wait for the speed part. With ~100MB/s, it already beats 7200rpm disks and “seek” times are fantastic:
http://www.tomshardware.com/reviews/ssd-memoright,1926.html

I’m waiting for the prices to drop a bit, then it’s a pair of SSDs in RAID1 (for better read performance) for all performance-critical stuff (the system itself, VMware images, source code and build dirs), to get rid of these annoying slowdowns when large I/O buffers are sync()ed to disk. That and a pair of Spinpoints (I wouldn’t believe Samsung can make good drivers, but they do, and I can’t hear them seeking) in RAID1 for less-frequently needed data.

Did you get paid by the USB companies to review/push their products?

“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.”

I already do this … with an small OS that loads into memory and does as little disk I/O as possible …

Hard drives are slow this is why Virtual memory should be avoided and why adding more memory speeds up most PC’s

My experience with USB sticks suggests that not all USB2 ports are equal either …

The more you fit on your USB drive the more there is too loose when you loose your keys (if you fail to secure the content).

I herd of a case where someone had their CV on their USB pen drive attached to their keys. This meant who ever found the keys also had the persons address!

I’m waiting for the prices to drop a bit

Story of SSD drives in a nutshell. :slight_smile: Yes, I expect SSD drives to dominate the laptop space over the next 2-3 years, and certainly the performance/enthusiast market that the WD Raptors currently occupy.

Writing a 32GB drive should take twice as long as writing a 16GB drive, which would put it around 52 minutes

You’re absolutely right – I corrected this error.

So you try to copy file B at the same time

This causes write collisions and contention for both copy processes, so it’s not surprising (to me, at least) that the cumulative copy time would be much worse.

With, all these ready boost flash drives

ReadyBoost isn’t worth the effort, honestly. Particularly with system memory being ridiculously dirt cheap now. It may help somewhat if you’re on a slow system with 1 GB of memory and zero possibility of any memory upgrade, but it’s fairly marginal. Upgrade your system memory.

Memory sticks are one of the few areas of computer technology that rarely impress me. Most of my work and backups reside in folders containing thousands of files. Zipping/unzipping just to write/read to a memory stick is a real pain in the ass extra step I would think we could have gotten past by now.