Comment 250 for bug 197762

Revision history for this message
Pi (sub2008-deactivatedaccount-deactivatedaccount) wrote : Re: file transfers on USB flash key (pendrive) are slowing down with time

I believe this is the same bug, I asked in the ubuntuforums.org and someone told me to post my discoveries here:

Whenever I plug-in my USB 8gb pendrive to copy a large file, it takes eons.

Using Ubuntu 9.10 for AMD64.

At first it copies a file at high speeds, because it's not actually writing to the USB but to the cache; at 500-700mb, the write cache is full and flushes, *while* still copying the rest of the file. Since the system is trying to access the USB in two different places at the same time, the transfer speed bunks down, often to 200-300kb/s. The final process, instead of taking 2 minutes, takes one hour. This continues until 1.4gb, when the cache finishes the flush, the copy can continue streamlined and the last 200-300mb are copied again at quicker speeds.

I've made a test, copying a 1.6gb file to the USB and waiting for the cache to get full. Once it happens, I copy another file of the same size to the USB at the same time, when it starts copying I cancel the previous copy - cancelling it could take 1-2 minutes, but once it's cancelled, the second copy goes amazingly quick since the pendrive doesn't have any access troubles anymore. However, that means for the trick to work that I can't copy four 1.6 files to the 8gb pendrive, but only three. The fourth one would need an hour unless I start copying it just before the first three finish so the write cache is still not in use or something like that.

IMHO the problem is using the cache in certain USB drives. For example the same problem happens with my usb-connected HDD; but due to its faster access time, the slowdown is less noticeable and disappears quickly. The low access time in usb pendrives makes the slowdown due to the cache to last for too long to be bearable.

I hope this clarifies the situation; sorry if this has been mentioned before but I didn't have time to check such a long bug report before adding my own experience.

Is there simply a method to disable cache (or lower it to a minimum) to an already mounted device?