During Embedded Linux development, we often need to write large operating system images to SD cards for testing. Recently, I purchased a USB 3.0 SD card reader from Plugable. Before that, I used a USB 2.0 SD card reader from IOGear.
How much better does a USB 3.0 card reader perform compared to a 2.0 card reader? To test, I wrote a large (2.2GB) image to a Transcend v30 card using both readers.
|IO Gear USB 2.0 Reader||Plugable USB 3.0 Reader|
|15.3 MB/s||33.5 MB/s|
The USB 3.0 reader is over twice as fast with this same card!
I then used the USB 3.0 reader to compare a number of cards.
|SD Card Brand||Size||Grade||Tested|
|Transcend||8GB||C10 HC||8.8 MB/s|
|Sandisk||32GB||C10 HC I||16.8 MB/s|
|Transcend||16GB||C10 HC I V30||33.5 MB/s|
|Sandisk||64GB||XC I V30 A1||44.5 MB/s|
The markings on the cards mean various things. The Wikipedia SD Card page provides a nice overview. A few details are summarized below:
- Bus interface
- I: 50MB/s Half/Full duplex, 104MB/s Half Duplex
- HC: Secure Digital High Capacity (SDHC) format — supports cards 2GB to 32GB in size
- XC: Secure Digital eXtended Capacity (SDXC) format — supports cards 32GB to 2TB in size
- 10 with C around it: Minimal sequential writing speed is 10 MB/s
- 3 with U around it: UHS Speed Class: 30MB/s
- V30: Video Speed Class: 30MB/s
- A1: Application Performance Class 1: Read 1500 IOPS, Write 500 IOPS
If you have not upgraded to a USB 3.0 card reader, it is probably worth your time to do so.
One note of caution — there are counterfeit cards for sale that look like SanDisk or Transcend cards. They are not manufactured by these companies, and use lower quality components. If the price seems too good to be true, it probably is. Always buy from a reputable supplier.