Saturday, March 14, 2015

Raspberry Pi SD card dd Benchmarks

I put a new SD card in my Pi today. I had the old one set up with Noobs and decided to ditch it for a straight Arch set up since that is all that I run on it anyway. I simply setup the new SD card with Arch from these instructions:

Arch Pi Download (click Installation tab)

I created a new partition for root and dd'ed the image from my Noobs install to it. Checked my config.txt and cmdline.txt and made sure my fstab was correct. (The parition numbers change for root in cmdline.txt and boot in fstab). It booted just fine.

My new card is a SanDisk Extreme 32GB UHS-I/U3 SDHC Memory Card Up To 60MB/s Read - SDSDXN-032G-G46 [Newest Version] from Amazon. The old card was a Transcend 16GB Class 10 SDHC Flash Memory Card (TS16GSDHC10E). The new card is bigger, which I like. I also like that I ditched Noobs and still have an SD card with Noobs ready if I get a new Pi. I wasn't thrilled that the write speeds are almost identical but I think that probably has more to do with the limitations of the Pi than the cards. Maybe I will do a write test from my laptop at some point to see.

Here are the results:

OC settings:


arm: frequency(45)=1000104000
core: frequency(1)=499999000
h264: frequency(28)=250000000
isp: frequency(42)=250000000
v3d: frequency(43)=250000000
uart: frequency(22)=3000000
pwm: frequency(25)=0
emmc: frequency(47)=250000000
pixel: frequency(29)=25200000
vec: frequency(10)=0
hdmi: frequency(9)=163683000
dpi: frequency(4)=0


Dirty I/O benchmark (memory and processor):



dd if=/dev/zero bs=1M count=1024 | md5sum
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 23.9798 s, 44.8 MB/s

SanDisk Extreme 32 Gb:


 hdparm -Tt /dev/mmcblk0

/dev/mmcblk0:
 Timing cached reads:   590 MB in  2.00 seconds = 294.60 MB/sec
 Timing buffered disk reads:  56 MB in  3.05 seconds =  18.36 MB/sec
[root@alarmpi ~]# hdparm -Tt /dev/mmcblk0p2

/dev/mmcblk0p2:
 Timing cached reads:   570 MB in  2.01 seconds = 284.25 MB/sec
 Timing buffered disk reads:  56 MB in  3.07 seconds =  18.24 MB/sec

dd bs=1M count=256 if=/dev/zero of=test conv=fdatasync
256+0 records in
256+0 records out
268435456 bytes (268 MB) copied, 15.1568 s, 17.7 MB/s

Burn in sequence of direct reads is constant after 7 cycles:

dd if=/dev/mmcblk0 of=/dev/null bs=4M
7609+1 records in
7609+1 records out
31914983424 bytes (32 GB) copied, 2055.73 s, 15.5 MB/s

Transcend Class 10 16Gb:

hdparm -Tt /dev/mmcblk0

/dev/mmcblk0:
 Timing cached reads:   312 MB in  2.01 seconds = 155.25 MB/sec
 Timing buffered disk reads:  54 MB in  3.08 seconds =  17.53 MB/sec
[root@alarmpi ~]# hdparm -Tt /dev/mmcblk0p7

/dev/mmcblk0p7:
 Timing cached reads:   320 MB in  2.01 seconds = 158.98 MB/sec
 Timing buffered disk reads:  52 MB in  3.00 seconds =  17.30 MB/sec

dd bs=1M count=256 if=/dev/zero of=test conv=fdatasync
256+0 records in
256+0 records out
268435456 bytes (268 MB) copied, 15.1096 s, 17.8 MB/s


If you have a Pi, post your SD card benchmarks here for comparison if you would like. Include the type of SD card, any overclock settings from your Pi and the type of SD card you are using.

No comments:

Post a Comment