On May 28, 2010, at 3:34 AM, hong zhang wrote:

Do you use both microSD and NAND to boot?

No, just one at a time, either only microSD or NAND to boot an image. 

It is interesting to know which one is faster.


The current Micron MCP PoP device has a clock rate of 200Mhz and a theoretical throughput rate of 400 Mb/s which is around 50MB/s. 

If I use SanDisk Premier 2GB microSD cards (Class 4 rating), it gives me a write performance of 10.7MB/s. This figure can go near 12MB/s. 

Here is a quick way to test the performance of the existing microSD cards that you are using:

Testing write performance

cd <mmc mount directory>
date ; dd if=/dev/zero of=100M bs=1M count=100 ; sync ;date

Write performance test results:

root@overo:/# date ; dd if=/dev/zero of=100M bs=1M count=100 ; sync ;date
Wed Jul 29 02:01:04 UTC 2009
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 9.81067 s, 10.7 MB/s

Flush the cache

echo 3 > /proc/sys/vm/drop-caches

Ensure that you flush the cache before doing a read test, else you will get an abnormally high read performance of around 163MB/s.

Testing read performance

cd <mmc mount directory>
date ; dd if=100M of=/dev/null bs=1M ; sync;date

Note that the input file 100M must be present in the current directory

Command format

dd if=d43 of=/dev/null bs=1M count=100

where,
if = input file, it can be anything. Normally for cleaner performance figures we choose /dev/null in case of read.
Of = output file, it can be anything. Normally for cleaner performance figures we choose /dev/null in case of write.
Bs = read or write number of bytes at a time.
Count = number of such "bs"


In a similar manner, you could test the performance of the onboard NAND by booting from microSD, mount the NAND flash partition and then try to repeat the same read write test on the NAND memory device.

Best regards,

Elvis Dowson