====== SD card benchmark ====== SD and microSD cards are often used for embedded systems, due to their simple hardware interface. If you have an SPI port on your microcontroller, you can attach an SD card to it. Most modern SD cards are not optimized for SPI interface. It's hard to rell which card is better, until you test it on a real system. Here I collect results of my measurements for various SD and microSD cards, obtained using diskspeed utility on RetroBSD and LiteBSD systems. When invoked without parameters, diskspeed utility performs write and read tests of 8-Mbyte file using 4-kbyte blocks: # diskspeed Testing 4-kbyte block size. Write speed: 8 Mbytes in 21.505 seconds = 380 kbytes/sec Read speed: 8 Mbytes in 8.765 seconds = 934 kbytes/sec ===== SD cards: RetroBSD ===== Board: Maximite Color\\ SPI clock: 13.3 MHz\\ Block size: 4 kbytes ^^ Card ^^ Size ^^ Id ^^ Write speed ^^ Read speed ^^ Shell test ^^ ||Lexar SD Platinum II || 512 Mb||31025-512BS A || 959 kbytes/sec ||1191 kbytes/sec|| 5.6 sec || ||NCP SD || 256 Mb||AF256SD || 927 kbytes/sec ||1187 kbytes/sec|| 6.9 sec || ||Kodak SD Digital Film || 256 Mb||S442JT256U0BD || 854 kbytes/sec ||1258 kbytes/sec|| 9.6 sec || ||Kodak SD High Perf. || 512 Mb|| none || 746 kbytes/sec ||1191 kbytes/sec|| 7.9 sec || ||Kodak SD || 256 Mb||AP-ESD256CD21 || 434 kbytes/sec ||1010 kbytes/sec|| 6.0 sec || ||Kodak SD || 2 Gb||31362-OC4-2GBOM A|| 418 kbytes/sec ||1040 kbytes/sec|| 5.2 sec || ||WINTEC SDHC Class 10 || 8 Gb||LSON408GY5005MWI || 406 kbytes/sec || 948 kbytes/sec|| 5.3 sec || ||Kodak SD || 2 Gb||MMAGF02GWDCA-DB || 382 kbytes/sec ||1170 kbytes/sec|| 5.3 sec || ||Transcend SDHC Class 6 || 4 Gb||8281BB 4G 01DS1 || 357 kbytes/sec || 952 kbytes/sec|| 5.4 sec || ||SanDisk SDHC Class 4 || 4 Gb||BH1023316173G || 322 kbytes/sec || 377 kbytes/sec|| 5.9 sec || ||Transcend SD || 2 Gb||BE1205521872G || 312 kbytes/sec || 841 kbytes/sec|| 7.4 sec || ||Lexar SDHC Class 10 400x|| 8 Gb||31364-C10-8GBBM A|| 303 kbytes/sec ||1114 kbytes/sec|| 5.1 sec || ||Lexar SD Premium 60x || 1 Gb||31108-1GBBS B || 283 kbytes/sec ||1229 kbytes/sec|| 6.0 sec || ||Patriot SD || 2 Gb||PSF2G4OSD-PC || 259 kbytes/sec || 574 kbytes/sec||13.4 sec || ||SanDisk SD Class 2 || 2 Gb||MMAGF02GWECA-MB || 172 kbytes/sec || 396 kbytes/sec||13.1 sec || Shell test timing has been obtained using the following command: time sh -c 'for i in /sbin/*; do date; done' ===== microSD cards: RetroBSD ===== Board: Fubarino SDXL\\ SPI clock: 13.3 MHz\\ Block size: 4 kbytes ^^ Card ^^ Size ^^ Id ^^ Write speed ^^ Read speed ^^ Shell test ^^ ||Noname microSD || 512 Mb||HY71UG512M-MP || 672 kbytes/sec||1164 kbytes/sec|| 9.5 sec || ||Kodak microSDHC Class 4 || 4 Gb||31281-4GBOM B || 467 kbytes/sec||1034 kbytes/sec|| 5.1 sec || ||Kodak microSDHC Class 4 || 4 Gb||31350-4GBBM A || 462 kbytes/sec||1020 kbytes/sec|| 5.2 sec || ||Kodak microSD || 2 Gb||MMAGR02GUDCA-DB|| 389 kbytes/sec||1171 kbytes/sec|| 5.3 sec || ||ADATA microSD || 2 Gb||MMAUR02GUBCL-NJ|| I/O errors || --- || --- || ===== microSD cards: LiteBSD ===== Board: chipKIT Wi-Fire\\ SPI clock: 16.7 MHz\\ Block size: 4 kbytes ^^ Card ^^ Size ^^ Id ^^ Write speed ^^ Read speed ^^ File list ^^ ||Noname microSD || 512 Mb||HY71UG512M-MP ||1224 kbytes/sec||1673 kbytes/sec||59.17 sec || ||Kodak microSD || 2 Gb||MMAGR02GUDCA-DB|| 901 kbytes/sec||1700 kbytes/sec||17.74 sec || ||ADATA microSD || 2 Gb||MMAUR02GUBCL-NJ|| 867 kbytes/sec||1659 kbytes/sec||16.03 sec || ||Kodak microSDHC Class 4 || 4 Gb||31281-4GBOM B || 741 kbytes/sec||1657 kbytes/sec||17.37 sec || ||Kodak microSDHC Class 4 || 4 Gb||31350-4GBBM A || 736 kbytes/sec||1667 kbytes/sec||17.23 sec || ||Sony microSDHC Class 4 SR-4C4|| 4 Gb||E304G1135 || 537 kbytes/sec||1526 kbytes/sec|| --- || ||ADATA microSDHC Class 4 || 8 Gb||sip14076k011a || I/O errors || --- || --- || File list timing has been obtained using the following command: time ls -lR /