class 6 SD card I purchased to try and use as a laptop builtin readyboost functionality, the first read write performance test was done after I turned readyboost on for the drive and prefetching was also on, and it was formatted with fat32, after the first test i turned these off, the tests were all conducted using :
CrystalDiskMark 1.0 (C) 2007 hiyohiyo : Crystal Dew World : http://crystalmark.info/ set to 5 and 50mb.
nb im not sure whether my internal SD reader is usb 2 or usb 1 hard to determine ? which speed bus its on ? I know my external ports are usb 2. I assume toshiba did not skimp of the internal sd card reader being hooked up to usb 2 bus internally.
TEST 1 : adv prefetching on : readyboost on : Format FAT32
————————————————–
Sequential Read : 9.155 MB/s : Sequential Write : 7.018 MB/s
Random Read 512KB : 9.170 MB/s : Random Write 512KB : 1.168 MB/s
Random Read 4KB : 0.758 MB/s : Random Write 4KB : 0.026 MB/s
pretty shabby, not sure of the point of this, these figures dont look so hot ? does an sd card really boost windows performance ? I decided to turn off readyboost and prefetching on the drive and run the same tests :
TEST 2 : adv prefetching off : readyboost off : Format FAT32
————————————————–
Sequential Read : 9.262 MB/s : Sequential Write : 7.147 MB/s
Random Read 512KB : 10.047 MB/s : Random Write 512KB : 1.164 MB/s
Random Read 4KB : 4.630 MB/s : Random Write 4KB : 0.052 MB/s
Wierd that with readyboost and prefetching off the drive peformed massiveley better in the 4k section implying that readyboost/ precaching was messing up drive testing, moral : when testing any sd card for suitability make sure you do it before turning the readboost / drive performance features on.
ok heres my internal crappy 5400rpm 2.5″ drive performance in relation to this :
TEST 3 : 2.5HD comparison : fully optimised for performance prefetch write caching etc : on: Format NTFS
————————————————–
Sequential Read : 32.413 MB/s : Sequential Write : 31.465 MB/s
Random Read 512KB : 20.397 MB/s : Random Write 512KB : 18.965 MB/s
Random Read 4KB : 5.680 MB/s : Random Write 4KB : 1.768 MB/s
these figures looked way too good ? so i turned of all performance enhancement for the drive and got the following more baseline realistic figures : MORAL when testing drive performance of devices turn off all performance enhancing driver functions ?memory caching etc > which may skew comparisons.
TEST 4 : 2.5HD comparison : fully optimised for performance prefetch write caching etc : off: Format NTFS
————————————————–
Sequential Read : 31.881 MB/s : Sequential Write : 8.488 MB/s
Random Read 512KB : 20.972 MB/s : Random Write 512KB : 1.636 MB/s
Random Read 4KB : 0.909 MB/s : Random Write 4KB : 0.359 MB/s
much more realistic performance for the drive ? now the random 4k read of the SD card was actually outperfoming the hard disk ? sd card 4k rand read 4.630 MB/s v HD 0.909 MB/s hmm ? this affirms what I originally heard that flash drives could enhance small random read performance as the access time is the big advantage on flash drives compared to Hard disks, the 4k random write performance was still awfull ? perhaps changing the format of the SD card might help, to an even smaller block size ?
now in this article the manager for the readyboost division answered the following question :
readyboost interview
Q: What perf do you need on your device?
A: 2.5MB/sec throughput for 4K random reads and 1.75MB/sec throughput for 512K random writes
In my test results from earlier below it can be seen that my random reads is good enough but random writes is sub par for readyboost ? being that this is a cache device im guessing random reads is probably more important but hey.
TEST 2 SD card : adv prefetching off : readyboost off : Format FAT32
————————————————–
Sequential Read : 9.262 MB/s : Sequential Write : 7.147 MB/s
Random Read 512KB : 10.047 MB/s : Random Write 512KB : 1.164 MB/s
Random Read 4KB : 4.630 MB/s : Random Write 4KB : 0.052 MB/s
continuing on from my previous test i decided to test a USB 2 generic 1gb flash stick for performance comparison, also to check whether there was a big alteration in performance between that and an SD card ?
TEST 5 usb stick : adv prefetching off : readyboost off : Format FAT32
————————————————–
Sequential Read : 8.741 MB/s : Sequential Write : 1.866 MB/s
Random Read 512KB : 8.764 MB/s : Random Write 512KB : 0.362 MB/s
Random Read 4KB : 3.684 MB/s : Random Write 4KB : 0.021 MB/s
As one can plainly see, sequential write is much worse as is random write on the 1gb usb stick, I guess this proves how unbeleivably variable flash devices are in terms of performance ? and how unfair 1gb comparison with 4gb is, in fact notice how 512k rand write is almost 4 times performance wise on the 4gb v the 1 gig, mainly chip density there having an effect ? ok lets discount the usb stick back out of the equation as its performance is not even close to what the readyboost minimum suggested performance is, also note windows vista sp2 did not offer to use my sd card for readyboost, whereas the even worse performance usb stick it did ? so im guessing beware that readyboost does not thoroughly test drives as fitting a performance profile before offering them to be used for readyboost ?
Next question what is the best format for readyboost ? theres allot of debate here, but allot of it comes down to what size your sd card as as fat 16 can only handle a readyboost cache file upto 2gb and is therefore unsuitable for cachefiles bigger than 2gb and fat32 can ony handle cache files upto 3.8/4gb also NTFS is the onlt format that can turn on the maximum write caching features and prefetching etc and go beyond 4gb.
I reformated the sd card NTFS with 4096 byte allocation unit size and retested and got the following results
TEST 6 SD card : adv prefetching off : readyboost off : Format NTFS 4096
————————————————–
Sequential Read : 9.241 MB/s : Sequential Write : 7.927 MB/s
Random Read 512KB : 9.169 MB/s : Random Write 512KB : 1.196 MB/s
Random Read 4KB : 4.550 MB/s : Random Write 4KB : 0.044 MB/s
TEST 2 SD card : adv prefetching off : readyboost off : Format FAT32
————————————————–
Sequential Read : 9.262 MB/s : Sequential Write : 7.147 MB/s
Random Read 512KB : 10.047 MB/s : Random Write 512KB : 1.164 MB/s
Random Read 4KB : 4.630 MB/s : Random Write 4KB : 0.052 MB/s
NTFS slightly slower,
ok now with
TEST 6 SD card : adv prefetching off : readyboost off : Format NTFS 512bytes
————————————————–
Sequential Read : 9.211 MB/s : Sequential Write : 7.448 MB/s
Random Read 512KB : 9.170 MB/s : Random Write 512KB : 1.063 MB/s
Random Read 4KB : 4.493 MB/s : Random Write 4KB : 0.032 MB/s
a decrease in 4kb write performance
next NTFS with 8192 byte allocation :
————————————————–
Sequential Read : 9.235 MB/s : Sequential Write : 7.978 MB/s
Random Read 512KB : 9.138 MB/s : Random Write 512KB : 1.124 MB/s
Random Read 4KB : 4.501 MB/s : Random Write 4KB : 0.044 MB/s
no improvement 4k writes still sub par compared to FAT32 ok
now FAT32 32kb allocation ! minimum file size will be rough but heck whats the effect ?
————————————————–
Sequential Read : 9.223 MB/s : Sequential Write : 7.238 MB/s
Random Read 512KB : 9.270 MB/s : Random Write 512KB : 1.104 MB/s
Random Read 4KB : 4.537 MB/s : Random Write 4KB : 0.043 MB/s
none i guess changing allocation sizes on flash disks has little impact ?
Ok switiching brand SD card to a much older 2gb from adata :
————————————————–
Sequential Read : 9.292 MB/s : Sequential Write : 3.881 MB/s
Random Read 512KB : 8.835 MB/s : Random Write 512KB : 1.202 MB/s
Random Read 4KB : 4.957 MB/s : Random Write 4KB : 0.046 MB/s
sequential write performance is much worse, roughly half, but note the read perfomance of 4kb random writes is about the same, as such this 2gb card like the 4gb one yields roughly 5 x better perfomance than the hard drive with all advanced prefetch caching turned off on the HD, to reveal its base perormance at random 4kb random reads, the access time advantage showing through here.
FAT 16kb alloc size
————————————————–
Sequential Read : 9.211 MB/s : Sequential Write : 7.183 MB/s
Random Read 512KB : 9.139 MB/s : Random Write 512KB : 1.128 MB/s
Random Read 4KB : 4.489 MB/s : Random Write 4KB : 0.044 MB/s
Fat32 Default Alloc size :
————————————————–
Sequential Read : 9.181 MB/s : Sequential Write : 6.031 MB/s
Random Read 512KB : 9.190 MB/s : Random Write 512KB : 0.972 MB/s Random Read 4KB : 4.546 MB/s : Random Write 4KB : 0.039 MB/s