Τρίτη 16 Φεβρουαρίου 2010

What is your USB Flash Drive's Speed? Toshiba 8GB USB Flash Drive Testing


Hey everyone, a few days ago I purchased a new flash drive just like this one above in the picture, a Toshiba 8GB USB Flash Drive, and while having some free time, I decided to try out some custom, real life benchmarking with it, in order to get some facts about the real read/write speeds that it can accomplish.
Everyone nowadays owns a USB flash drive so it would be cool to know if we can modify one to get faster or something like that. First of all, let's take a look at the manufacturers specifications :

Drive Size : 8 GB
File System : FAT32 (anything above 2 GB on flash drives support only FAT32)
Default Cluster Size : 4 KB
Connectivity : USB 2.0/1.1
Read Spead : up to 18 MB/s
Write Spead : up to 4,5 MB/s

The only modification option we have on flash drives is to make small adjustments to its file system settings (cluster size) while formating from the computer management application (right click My Computer -> Manage -> Disk Management) and in my case the only adjustments I was able to make, were to format the USB flash drive using FAT32 picking a different cluster size each time, choosing from 2 KB up to 64 KB.

Afterwards I ran a lot of tests (took me about half a day to complete them all) using a stopwatch in order to check how much time does it take normally for us to copy some files in there, from our main hard disk drive. Note that every time we copy a file in the drive, the operating system splits each file in such small parts according to its cluster size setting while copying them in it. This means that in case the files we copy are smaller than the cluster size, they won't have to be fragmented, but in the case that they are bigger or much bigger they will have to be cut down to pieces of the cluster's size in order to be copied. We should also keep in mind that in case the cluster size is bigger than the files we copy, each file takes more disk space on the drive.

About the tests, first of all, I used three different types of files and all of the available cluster size settings running most of the test especially the important ones at least twice.. File size means the file's size according to the data, disk file size taken is usually more than the file size.. The system specifications are not high end as most people around don't have high end PCs plus copy pasting doesn't get affected much affected from hardware changes. It's mostly related to the drive's manufacturer's specifications. But just for the record it is a Pentium 4 2,66, 1 GB ram, running Windows XP. Also, I should state that I disabled all other software from running while benchmarking.. even the antivirus so that we won't get any delays with checks etc. Here are the test types..:

Test #1 :
File Type : One ISO file (.iso)
File Size : 1.20 GB

Test #2 :
File Type : 359 different files, Photos and Videos only (.jpg / .mp4)
File Size : Total of 860 MB

Test #3 :
File Type : 1000 text files (.txt)
File Size : Total 994 KB (~1 KB each)

Now to the benchmarking, I run each of these tests with each one of the different cluster size settings : 2, 4, 8, 16, 32 and 64 KB. I noted down the total time taken, then got the average speed by dividing (Total File Size in MB / Time in seconds), and then I checked the total disk space taken in the USB Flash Drive's properties. Total time is considered to be starting at the time the button paste is pressed, to the time the copy dialog dissappears (as in real life's every day copying). Here are my results :

Test #1 : Total disk space taken and file size was the same in all.
( We copied only 1 big file so it's not something unexpected)

FAT32 - 2K - 4:24 = 264 sec = ~ 4.54 MB/sec
FAT32 - 4K - 4:19 = 259 sec = ~ 4.63 MB/sec (Default)
FAT32 - 8K - 4:19 = 259 sec = ~ 4.63 MB/sec
FAT32 - 16K - 3:32 = 212 sec = ~ 5.66 MB/sec (Fastest)
FAT32 - 32K - 4.16 = 256 sec = ~ 4.69 MB/sec
FAT32 - 64K - 4:15 = 255 sec = ~ 4.70 MB/sec

As we can see.. when copying a big file in relation to the cluster size, we reached the highest speed using 16KB cluster size.. But overally higher cluster size got better results in this test. No big difference though. Only 16KB made a nice difference. I ran this test several times and got the same results.. Next one is the following :

Test #2 : 359 Files - Images & Videos - Total File Size 860 MB

Fat32 - 2K - 9:46 = 586 sec = ~1.47 MB/sec
*Disk Space Taken : 860 MB
Fat32 - 4K - 8:40 = 520 sec = ~1.65 MB/sec
*Disk Space Taken : 861 MB (Default)
Fat32 - 8K - 9:56 = 596 sec = ~1.44 MB/sec
*Disk Space Taken : 862 MB
Fat32 - 16K - 8:22 = 502 sec = ~1.71 MB/sec
*Disk Space Taken : 863 MB
Fat32 - 32K - 6:37 = 397 sec = ~2.17 MB/sec
*Disk Space Taken : 866 MB (Fastest)
Fat32 - 64K - 8.43 = 523 sec = ~1.64 MB/sec
*Disk Space Taken : 871 MB

Now this is the actual speed we get most of the times we copy files.. It is about files we copy-paste every day.. What's more usual than music, photos and videos.. up to 10 MB each.. Once again the default cluster size is not the best.. Best results here came from the 32K setting which I adopted for my personal USB flash drive.. Note that with bigger cluster size raises the Disk space taken a little bit.. Last test for today is the one with the text files.. The ones we think of less because they are so tiny... (~1KB..). Who cares about those right? Here are the results...

Test #3 : 1000 Files - TXT only - ~1KB each - Total 994KB

Fat32 - 2K - 1:17 = 77 sec = 0.0129 MB/sec
*Disk Space Taken : 2.07 MB (Fastest)
Fat32 - 4K - 2:02 = 122 sec = 0.0081 MB/sec
*Disk Space Taken : 4.02 MB (Default)
Fat32 - 8K - 4:34 = 274 sec = 0.0036 MB/sec
*Disk Space Taken : 7.93 MB
Fat32 - 16K - 9:47 = 587 sec = 0.0017 MB/sec
*Disk Space Taken : 15,7 MB
Fat32 - 32K -15:23 = 923 sec = 0.0010 MB/sec
*Disk Space Taken : 31.3 MB (Extremely Slow)
Fat32 - 64K - 7:44 = 464 sec = 0.0021 MB/sec
*Disk Space Taken : 62.6 MB

See what I'm saying..? Speeds are pathetic when it comes to such many files even at such a small size like text files.. It was really exhasting to complete all of these.. consider doing that 15:23 duration about 3 times to make sure everything is correct... Moreover, the disk space sacrificed for text files is also too big when we set the cluster size to higher levels. Think of that.. 1 MB of data takes 64 MB of disk space! Well, the first thing that comes to my mind (and probably yours) is that "I've never copied so many text files.." and after doing these tests.. I probably never will...

In conclusion, I guess it is a matter of which file type you are mostly using the USB Flash Drive for.. I mainly use it to move files 1~10 MB large so I guess I'll just stick to the 32K cluster size setting. Also I might format it to 16K in case I need to carry over a movie or something huge like that... The good thing is that the format process only takes less than 30 seconds.. So you might wanna switch the cluster size according to what you wanna use it for, each time.. The choice is yours.. I did the research for you and I hope I helped! Thanks for reading and don't forget to check back on from time to time..!