Experience with Inexpensive MicroSD Cards

For the cluster computing project I’m working on, I need 28 microSD cards. There was an AliExpress sale with good reviews, so I ordered a batch of 30 microSD cards, and at a great price point at the time. As long as the cards are Class 10 and work then we should be good, right?

LVCARDS GAOMUYU EStore AliExpress
LVCARDS GAOMUYU EStore AliExpress (Nov 20, 2018)
LVCARDS GAOMUYU EStore AliExpress products
LVCARDS GAOMUYU EStore AliExpress products

Let’s see how my batch of LVCARDS microSD cards perform…

32 GB microSD cards in bulk for distributed storage
32 GB microSD cards in bulk for distributed storage

Testing the LVCARDS Cards – H2testw

Disappointingly, more than half the cards are damaged, defective or fake1. It took days to test every last one of them with H2testw. The cases with the “✘” are corrupted, fake, deathly slow, or otherwise unusable. The cases with an “✔” passed the H2testw test – data could be safely written to the disk and verified afterward. All tests are done with a brand-name USB 3.0 microSD adapter.

Defective, damaged or fake LVCARDS microSD cards
Defective, damaged or fake LVCARDS microSD cards

Here are screenshots from H2testw. All the “✘” cards follow a similar result to the tests below.

H2testw results of defective, fake LVCARDS
H2testw results of defective LVCARDS

Deceptive or Just Defective?

Deceptive, fake as a three-dollar bill. Why can I confidently say fake? Let’s look at the results screenshot below. There is the message “488.8 MByte aliased memory”. That means that the real memory is reused when writing past the end of that memory boundary, which looks to be 13.5 GB, so newer data silently and deceptively overwrites existing data. The card cannot be fully tested as the read speed drops off the face of the Earth.

Fake capacity LVCARDS microSD card results
Fake capacity LVCARDS microSD card results

Also, look at the write speed of about 20 MB/s. Amazing isn’t it? That is 2x better than the minimum Class 10 sustained write speed. An impressive illusion.

Having tested all of the “✘” cards, here is a progress animation of H2testw trying to verify one card for over 19 hours. The read speed falls and falls. I suspect this is a cheat mechanism to prevent cards from being fully tested.

H2testw verification progress over 19 hours
H2testw verification progress over 19 hours

No Refund or Replacements

Sadly, GAOMUYU EStore on AliExpress doesn’t respond to messages at all. Even worse, when I first received these cards, I tested two cards in the batch and they passed H2testw – (Un)lucky me. Each test took about an hour, so I assumed the rest of the cards would work as well and didn’t test them – remember, it would take days to test all the cards if they all worked. I left a nice review and time went on. It wasn’t until my AliExpress two-week review period had well expired that I discovered half the cards are corrupt or fake. The seller still does not respond to messages.

There is a saying: “A cheap person pays twice”.

Stay away from LVCARDS on AliExpress. They are priced too good to be true, and you may get some that do work, but they will be painfully slow. The seller does not reply to messages.

The Working LVCARDS MicroSD Cards

On the other hand, here is what one of the working “✔” LVCARDS comes back with under H2testw:

Successful H2testw test results
Successful H2testw test results

That’s what a bottom-end Class 10 write speed should be, but what about random read/write speeds?

CrystalDiskMark Speed Tests

Next, let’s run CrystalDiskMark on the same working LVCARDS card in the results screenshot above. Here are the results:

CrystalDiskMark speed tests for 32 GB LVCARDS
CrystalDiskMark speed tests for 32 GB LVCARDS

Imagine using this slow microSD card to hold a Linux OS with a write speed on the order of kilobytes per second. Let’s do just that next…

Phoronix Test Suite Async IO Tests – LVCARDS

Next, I’ll really put these cards though their paces with Phoronix Test Suite AIO stress test. It took a long time to install Ubuntu Bionic, apt update && apt upgrade, and add the Phoronix Test Suite on the same LVCARDS card above. It took even longer to run a simple test. Here are the agonizing results:

System Information

  PROCESSOR:          AArch64 rev 4 @ 1.15GHz
    Core Count:       4
    Scaling Driver:   cpufreq-sunxi interactive

  MOTHERBOARD:        sun50iw1p1

  MEMORY:             2048MB

  DISK:               32GB N/A
    File-System:      ext4
    Mount Options:    data=ordered noatime rw stripe=1024

  OPERATING SYSTEM:   Ubuntu 18.04
    Kernel:           3.10.105-bsp-1.2-ayufan-136 (aarch64)
    Compiler:         GCC 7.3.0

AIO-Stress 0.21:
    pts/aio-stress-1.1.1 [Test: Random Write]
    Test 1 of 1
    Estimated Trial Run Count:    3
    Estimated Time To Completion: 5 Minutes [13:15 UTC]
        Started Run 1 @ 13:10:24
        Started Run 2 @ 13:34:59
        Started Run 3 @ 14:01:00
        Started Run 4 @ 14:30:16 *
        Started Run 5 @ 15:00:18 *
        Started Run 6 @ 15:32:08 *
        Started Run 7 @ 16:07:27 *

    Test: Random Write:
        1.87
        1.75
        1.54
        1.5
        1.41
        1.31
        1.06

    Average: 1.49 MB/s
    Deviation: 18.12%

This test took over three hours to run, and the average random write speed was found to be 1.49 MB/s. Excruciatingly slow.

I’ve cloned the microSD card holding the Ubuntu Bionic (18.04) OS with Phoronix Test Suite to a handful of the working “✔” LVCARDS cards and observe similar results.

Samsung EVO Plus MicroSD 64GB Cards

For a reference of how well reputable SD cards can perform, here are benchmarks using a Samsung EVO Plus 64GB card. This is a genuine card purchased from Samsung directly – the card is made in the Philippines, the SD adapter has “Samsung” debossed (not printed), the edge of the card is white (not mass-production black), it passed H2testw twice, and it is nearly as fast as advertised using CrystalDiskMark.

Genuine Samsung EVO Plus SD with H2testw
Genuine Samsung EVO Plus SD with H2testw
Genuine Samsung EVO Plus vs LVCARDS: Class 10
Class 10: LVCARDS vs. Genuine Samsung EVO Plus

Phoronix Test Suite Async IO Tests – Samsung EVO Plus

Let’s try the same random write speed test again with the Samsung EVO card. For this test the OS was cloned to this brand-new Samsung SD card so all settings and configurations are identical.

System Information

  PROCESSOR:          AArch64 rev 4 @ 1.15GHz
    Core Count:       4
    Scaling Driver:   cpufreq-sunxi interactive

  GRAPHICS:           
    Screen:           1920x2160

  MOTHERBOARD:        sun50iw1p1

  MEMORY:             2048MB

  DISK:               64GB EC2QT
    File-System:      ext4
    Mount Options:    data=ordered noatime rw stripe=1024

  OPERATING SYSTEM:   Ubuntu 18.04
    Kernel:           3.10.105-bsp-1.2-ayufan-136 (aarch64)
    Compiler:         GCC 7.3.0

AIO-Stress 0.21:
    pts/aio-stress-1.1.1 [Test: Random Write]
    Test 1 of 1
    Estimated Trial Run Count:    3
    Estimated Time To Completion: 5 Minutes [20:12 UTC]
        Started Run 1 @ 20:07:54
        Started Run 2 @ 20:18:04
        Started Run 3 @ 20:28:47
        Started Run 4 @ 20:39:18 *
        Started Run 5 @ 20:49:26 *
        Started Run 6 @ 21:00:32 *
        Started Run 7 @ 21:11:23 *
        Started Run 8 @ 21:22:31 *
        Started Run 9 @ 21:33:04 *

    Test: Random Write:
        4.59
        4.13
        4.14
        4.34
        4.01
        4.18
        4.07
        4.21
        3.85

    Average: 4.17 MB/s
    Deviation: 5.00%

This test took half as long – just shy of an hour and a half – but the average random write speed was found to have increased to 4.17 MB/s – 2.8x faster than the previous cards. Not amazing, but respectable for what SD cards are designed for.

Not all Class 10 SD cards are created equally. The working LVCARDS are Class 10 UHS-1 (up to 10MB/s write speed) and the genuine Samsung EVO Plus is a Class 10 UHS-3 (up to 30 MB/s write speed). We can see above that the Samsung card greatly outperforms the inexpensive AliExpress cards, and Samsung goes way over spec – minimum 30MB/s sequential write vs. actual 67 MB/s sequential write speed. My recommendation is to purchase brand-name SD cards directly from the manufacturer, and as high a rating as budget will allow.

Notes:

  1. The fake cards are really 16GB or 8GB cards with doctored firmware to report 32GB