Raspberry Pi 3B+ MicroSD / SSD Speed Benchmarks

After publishing my Raspberry Pi Minecraft Server tutorial I got some feedback on Reddit to try using a USB SSD for storage.  I expected some marginal improvement but nothing spectacular due to the USB 2.0 bus data rates.  In fact the results were so spectacular that I’m changing my storage recommendations entirely.  Let the games begin!

The contenders for the RPI storage benchmarks
The contenders for the RPI storage benchmarks

The Contenders

The Test

Each drive was imaged with Raspbian Lite and booted up once and a sudo apt-get update && sudo apt-get upgrade was issued.  After a reboot the testing began.  The test used was the Dramble Benchmark tool.  The mSATA solid state drive uses a USB 3.0 adapter to create a really cool flash drive (see my article here on how to make one).  The Crucial solid state drive uses a 2.5″ SATA to USB 3.0 adapter.

The Raspberry Pi 3B+ was set to boot from USB mode so the entire operating system was running on the solid state drives just like the mSATA drives to provide a fair playing field.

The most important factor performance wise for a card running an operating system is small random read/writes.  The operating system is constantly reading/writing these.  The dd test measures raw throughput and represents what performance you’d see transferring a large file.  Some storage devices have very high throughput but poor 4k read/writes which indicates a poor medium to use as a card for your Raspian operating system.

Alright, on to the testing!

Results

Contenderdd test4k random read4k random write4k read4k write4k rewrite
EMTEC8.4 MB/s64222057431209204
Samsung Evo+7.3 MB/s476876149146131117
SanDisk Ultra13.6 MB/s92472686955823242895
Samsung Evo16.6 MB/s1029733291034514953230
Samsung Pro Plus23.5 MB/s1018921151024724602985
SanDisk Cruzer USB4.7 MB/s398911161017020261969
SanDisk Extreme USB16.1 MB/s7339907711491973210291
Hynix mSATA SSD USB35.5 MB/s923111401114891099611473
Crucial 2.5″ SATA SSD USB35.1 MB/s1016711419110811041211443

Conclusion

The cheap MicroSD cards performed about as poorly as expected.  If you are running one of the generic cheap MicroSD cards in your Pi you are *really* slowing it down.  The difference from a generic EMTEC to a Samsung Pro Plus is staggering.  The raw dd throughput is 280% faster but the 4k random writes are 1000% faster on the Pro Plus!  You really do get what you pay for with a MicroSD card.

Now on to the flash drives.  The SanDisk Cruzer USB Flash drive is $5.  It performed predictably poorly.  Even mid range MicroSD cards beat it in every category and it was dead last in the dd test.  However don’t write off USB flash drives yet, because the SanDisk Extreme 64GB *crushed* it in 4k random writes.  Although the raw dd test throughput lost to the Samsung Pro Plus it is 233% faster when it comes to random writes.  None of the MicroSD cards come even close.  Conclusion?  If you use a very good USB flash drive you will outperform MicroSD cards fairly easily as there are much faster drives out there than the SanDisk Extreme I used in my test.

Now let’s talk about the final category and the true winner here: SSDs.  It’s not even close folks.  These drives are maxing the bus.  They have no weaknesses in any category and are faster than the most premium of all other storage mediums.  The two SSDs tested are not the same speeds.  They are just so fast that they are faster than the USB 2.0 bus can handle and it maxes out somewhere around 35MB/sec.  We are talking a 540% gain in 4k writes over the Samsung Pro Plus (not at all a cheap card).

The big takeaway here is that YES, they are worth using over MicroSD cards and flash drives.  On average you are getting at least 4x the random 4k write speed by using a solid state drive with your Raspberry Pi than the most premium of MicroSD cards can provide.  Unless you need your Pi to fit somewhere small and can’t fit a USB-based storage medium into your project, solid state storage is the best choice and clear winner!

Leave a Reply

Your email address will not be published.