Raspberry Pi Storage Benchmarks 2019 + Benchmarking Script

Pi Benchmark 2019 Contenders
Pi Benchmark 2019 Contenders

Storage options continue to advance at a very fast pace. We’ve seen a lot of changes in the past couple of years with viable storage options for your Pi. Solid state drives are now so cheap that it can be cheaper to outfit your Pi with a SSD than buy a MicroSD card! MicroSD cards also continue to evolve with the new “Application Class” A1 and A2 certifications.

This year I wanted to do something more than just benchmark my ever-growing pile of MicroSD cards and solid state drives. Although I have a wide variety of storage to test I don’t have everything! So this time I created a benchmark that gives you a easy to compare score and anonymously submits the storage specifications and the results to this site.

Running the benchmark is extremely easy. Run the following command on your Pi:

curl https://raw.githubusercontent.com/TheRemote/PiBenchmarks/master/Storage.sh | sudo bash

Current Benchmark Results

ScoreUserManufacturerModelClassBrandArchDD WriteRandW IOPSRandR IOPSRand WriteRand ReadIO ReadIO WriteIO Rand ReadIO Rand WriteHost Manuf.Host ModelHost OSProductVersionFirmwareM. DateCapacityVendorSD ClockCPU ClockCore ClockRAM ClockHDParm CachedHDParm DiskDriveDate
3262AnonymousJMicronCT500MX5SSD (2.5" SATA)Crucial MX500armv7l34.746173269184701307615502116651249115439Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SSD2.10M3CR023465.8GCrucialN/A120040045028.8128.82/dev/sda12019-04-16 6:16 PM
3165zwippetKingstonSA400S37120GSSD (2.5" SATA)Kingston SA400S37 120GBarmv7l31.849902798199611119217839137411247614144Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10SBFKB1D1111.8GKingstonN/A140040045033.0036.16/dev/sda12019-04-15 2:39 AM
2900jchambersSamsungSSDPM871bSSD (2.5" SATA)Samsung PM871barmv7l33.541103347164421339012993132641170912812Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10MVT03D0Q253GSamsungN/A140040045029.2329.47/dev/sda12019-03-15 9:40 PM
2864jchambersSamsungMZ-7KE256SSD (2.5" SATA)Samsung 850 Proarmv7l33.241313107165241242912749138441121812723Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10253GSamsungN/A140040045028.3629.06/dev/sda12019-03-11 9:38 PM
2849testKingstonSA400S37120GSSDKingston A400armv7l33.439843073159371229312782126631153612702Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10SBFK61K1111.8GKingstonN/A140040045028.6328.32/dev/sda12019-03-18 9:18 AM
2845hellifiknowKingstonSA400S37120GSSD (2.5" SATA)Kingston A400armv7l33.242242988168971195213076112491153512592Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10SBFK61K1111.8GKingstonN/A140040045026.4827.21/dev/sda12019-04-04 11:49 AM
2837hellifiknowKingstonSA400S37120GSSD (2.5" SATA)Kingston A400armv7l32.741113015164471206213251105561025913228Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10SBFK61K1111.8GKingstonN/A140040045026.7527.03/dev/sda12019-04-05 11:37 AM
2789jchambersSK HynixSH920SSD (mSATA)SK Hynixarmv7l33.54232261216931104481293812537970712756Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.101010BL00127GSK HynixN/A140040045028.4528.91/dev/sda12019-03-15 8:18 AM
2783lesfackoUgreenForceGTSSD (2.5" SATA)Corsair ForceGTarmv7l30.339852725159421090212734125381070812844Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.101.3.3111.8GCorsairN/A140040045027.2626.44/dev/sda12019-04-07 5:56 PM
2628jchambersLITEONCV3-CE128-11SATASSD (2.5" SATA)LITEONarmv7l33.94202262416809104961139098251038411291Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.10TC7110B127GLITEONN/A140040045030.6529.91/dev/sda12019-03-16 6:13 AM
2623AnonymousKingstonSA400S37120GSSD (2.5" SATA)Kingstonarmv7l34.140642705162561082310467117781033311238Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SSD2.1003090004111.8GKingstonN/A140040045026.7428.57/dev/sda12019-04-01 6:25 PM
2481AnonymousPatriotBlazeSSD (2.5" SATA)Patriot Blaze 120GBarmv7l30.1358324761433599071190310632919911224Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SSD2.00S9FM01.9111.8GPatriotN/A120040045026.9826.98/dev/sda62019-03-27 12:19 AM
2330jchambersSanDiskSanDiskpSSDSSD (USB SSD)SanDisk Extreme Pro USBarmv7l35.227282202109158808.31265612215833610270Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)USB SSD2.106EB1030127GSanDiskN/A140040045033.2532.97/dev/sda12019-03-13 4:28 AM
1965AnonymousSanDiskSL16GA1 Class 10 U1SanDisk Proarmv7l34.0263518461054273879689735968708348Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x002/2018119.3GSanDisk50.0140040045022.1222.02/dev/mmcblk0p12019-03-21 11:26 AM
1333se55ySanDiskSE32GA1 Class 10 V30 U3SanDisk Extremearmv7l21.212202483488299358649305281244535Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x008/201729.7GSanDisk50.0120025045022.1222.10/dev/mmcblk0p12019-04-06 10:50 PM
1245jchambersSamsung00000Class 10 U1Samsung Evoarmv7l15.588230913530.912366104183100101833320Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x10x011/201532GSamsung100.0140040045036.0035.79/dev/mmcblk0p12019-03-15 7:22 PM
1240AnonymousPhisonSD32GClass 10 U1Kingstonarmv7l15.312002289480391569048406576294355Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x60x012/201828.9GPhison50.0120040045022.0922.06/dev/mmcblk0p12019-04-12 10:43 AM
1183AnonymousSanDiskSC16GA1 Class 10SanDisk Ultraarmv7l9.09362368374694729483342485344326Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x006/201814.9GSanDisk100.0140040045033.8333.72/dev/mmcblk0p12019-04-16 11:57 PM
1160AnonymousPanasonicSD16GA1 Class 10 V10 U1Panasonicarmv7l13.7973253438921013710378344380833601Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x60x002/201914,5GPanasonic100.0140040045035.7635.66/dev/mmcblk0p62019-03-27 9:28 AM
1157jchambersSamsung00000Class 10 U1Samsung Pro+armv7l21.157630452304.412182101912484101202301Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x10x003/201532GSamsung83.3140040045035.7635.84/dev/mmcblk0p12019-03-15 7:16 PM
1138kkSamsungEB1QLClass 10 U1Samsungarmv7l13.810332313413492538937359874153790Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x001/201929.9GSamsung50.0140040045022.1022.05/dev/mmcblk0p12019-04-15 12:54 AM
1130DannyDSanDiskSC32GA1 Class 10 U1SanDisk Proarmv7l17.2751281130061124710081352789432733Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x012/201829.7GSanDisk100.0140040045035.6735.73/dev/mmcblk0p12019-04-16 8:30 AM
1108AnonymousSanDiskSC16GA1 Class 10SanDisk Ultraarmv7l13.28792058351982338006333668504156Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x006/201814.9GSanDisk50.0140040045022.0122.02/dev/mmcblk0p12019-04-16 11:48 PM
1103AnonymousUnknownSD256A1 Class 10 V30 U3TIarmv7l13.110292130411985208699361870723750Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x60x110/201829.5GTI50.0140040045022.2122.00/dev/mmcblk0p12019-03-19 9:04 AM
1089AnonymousSanDiskSC32GA1 Class 10 U1Sandisk Ultraarmv7l16.378127113127108459407338484502704Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Ubuntu 18.04.2 LTSSD0x80x001/201929.7GSanDisk83.334.9535.01/dev/mmcblk0p12019-04-05 9:31 AM
1086AnonymousSamsungGE8QTClass 10 U3Samsung Evo Selectarmv7l13.29822235392889418109326880283289Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x012/2018238.5GSamsung50.0140040045019.9021.40/dev/mmcblk0p12019-03-24 10:38 AM
1086piSanDiskSC16GA1 Class 10SanDisk Ultraarmv7l12.38322043333181728064320070114021Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x012/201814.9GSanDisk50.0140040045021.9322.01/dev/mmcblk0p12019-04-13 8:15 AM
1075AnonymousSanDiskSC64GA1 Class 10 U1Sandisk Proarmv7l11.07912334316593399327350988393087Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Arch Linux ARMSD0x80x007/201863GSanDisk50.0140025025045022.0022.13/dev/mmcblk0p12019-03-17 1:45 AM
1060Anonymous0x00009cUSD00Class 0GoodRAMarmv7l20.46242431249697259777245281552433Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x10x002/20187.3G50.0140040045022.3822.39/dev/mmcblk0p12019-04-06 9:11 PM
1053AnonymousPhisonSD64GA1 Class 10 V30 U3SanDiskarmv7l18.58971957358878318026316064723253Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x50x007/201858.2GPhison50.0120040045021.8921.79/dev/mmcblk0p12019-04-09 1:04 AM
1052AnonymousSamsungGD4QTClass 10 U3Samsung Evo Selectarmv7l13.035730461431.312188109672784109131876Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x001/2019126GSamsung100.0150050041.1442.99/dev/mmcblk0p12019-03-17 9:32 AM
1050AnonymousSanDiskSL16GA1 Class 10 U1SanDiskarmv7l12.78062033322481357875330165283853Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x002/201814.9GSanDisk50.0140040045022.1622.09/dev/mmcblk0p12019-03-25 6:37 AM
1039jchambersSanDiskSR64GA2 Class 10 V30 U3SanDisk Extreme Proarmv7l21.384522403381.58962.97789187660033105Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x001/201963GSanDisk100.0140040045023.9734.30/dev/mmcblk0p12019-03-15 7:37 PM
1038jchambersSamsung00000Class 10 U1Samsung Evoarmv7l16.452126382086105558656249485652586Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Arch Linux ARMSD0x10x011/201529.8GSamsung100.0120040045033.4933.06/dev/mmcblk0p12019-03-17 8:15 PM
1023AnonymousSanDiskSC32GA1 Class 10 U1SanDisk SDHCarmv7l16.87192352287894108535345676012615Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x012/201829.7GSanDisk50.0140040045022.1222.07/dev/mmcblk0p62019-04-06 9:42 PM
1013AnonymousSamsungEC2QTClass 10 U3Samsung Evo+armv7l10.44572328182893158117320580713317Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x005/201859,6GSamsung50.0140040045022.0922.17/dev/mmcblk0p12019-03-24 2:44 AM
1012AnonymousSanDiskSC32GA1 Class 10 U1Kingstonarmv7l14.48662236346789448089335671592883Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x008/201729.7GSanDisk50.0120040045022.1022.10/dev/mmcblk0p12019-03-28 4:25 AM
1012JoeLouieNetacSD128A1 Class 10 V30 U1Kingston Canvas Selectarmv7l11.29441983377779358063335965973464Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x60x112/2018116.2GMaxell50.0140040050019.4319.41/dev/mmcblk0p12019-04-18 4:15 PM
1000WaldoHeheSanDiskSN64GA2 Class 10 V30 U3SanDisk Extremearmv7l20.08731923349476946694213556043186Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x012/201859.5GSanDisk50.0120040045022.0322.03/dev/mmcblk0p12019-04-18 2:02 AM
999AnonymousSanDiskSC32GA1 Class 10 U1SanDisk Proarmv7l14.284222293370.68917.18155342867922932Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x002/201832GSanDisk50.0120040045022.1422.12/dev/mmcblk0p12019-03-16 6:24 AM
993AnonymousSanDiskSC16GA1 Class 10 U1SanDiskarmv7l17.56822279272891187955318978442295Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x003/201814.9GSanDisk50.0120040045022.0622.05/dev/mmcblk0p12019-03-31 5:48 AM
991AnonymousSamsungEB1QTClass 10 U1Samsungarmv7l17.63992305159792228024275480012512Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x005/201829.8GSamsung50.0140040045019.7621.29/dev/mmcblk0p62019-04-06 3:07 AM
990AnonymousSamsungJB1RTClass 10 U1SanDisk Proarmv7l20.84072390162895608177254980892107Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x011/201829.8GSamsung50.0140040045021.3821.94/dev/mmcblk0p12019-04-20 2:44 AM
984jchambersSanDiskSN64GA2 Class 10 V30 U3SanDisk Extremearmv7l20.951223142048.59257.87925219562792744Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x001/201963GSanDisk100.0140040045035.9235.88/dev/mmcblk0p12019-03-15 11:16 PM
982AnonymousSanDiskSC32GA1 Class 10 U1SanDisk Ultraarmv7l15.86882336275493478453343276342339Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x003/201929.7GSanDisk50.0140040045022.0222.02/dev/mmcblk0p12019-04-07 4:55 PM
981AnonymousSanDiskSC32GA1 Class 10 U1SanDisk Ultraarmv7l15.86862307274792288294340476232371Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x003/201929.7GSanDisk50.0140040045022.0422.03/dev/mmcblk0p12019-04-07 3:19 PM
971JBSamsung00000Class 10 U1Samsung Evoarmv7l10.83532358141494328181300680572968Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x10x008/201629,8GSamsung50.0120040045022.1222.14/dev/mmcblk0p12019-03-22 5:04 AM
959AnonymousSanDiskSC32GA1 Class 10 U1SanDisk Ultraarmv7l14,271322922852.69168.78864315577692227Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x009/201832GSanDisk50.0140040045022.0721.92/dev/mmcblk0p12019-03-16 11:17 PM
955PeterSanDiskSC32GA1 Class 10 U1Sandisk Proarmv7l16.27022232280889317799330072272299Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x011/201829.7GSanDisk50.0120040045022.1822.21/dev/mmcblk0p62019-03-19 11:49 AM
949jchambersSanDiskACLCEA1 Class 10SanDisk Ultraarmv7l7.059325872374.8103529073199282742730Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x003/201763GSanDisk100.0140040045035.6935.68/dev/mmcblk0p12019-03-15 7:48 PM
943AnonymousSanDiskSC16GA1 Class 10 U1SanDisk Proarmv7l17.36742236269689457917327274581992Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x012/201814.9GSanDisk50.0120040045022.1822.17/dev/mmcblk0p62019-03-22 9:30 AM
938SamsungSamsungEB1QTClass 10 U3Samsung Evo+armv7l17.955122022206.68810.67475265474152144Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x30x010/201732GSamsung50.0120040045021.6121.74/dev/mmcblk0p62019-03-16 9:33 AM
914hellifiknowSanDiskSC32GA1 Class 10 U1SanDisk SC32Garmv7l12.16392297255691918543328675722136Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x004/201829.7GSanDisk50.0140040045022.0522.06/dev/mmcblk0p62019-04-04 12:01 PM
902AnonymousSanDiskSL16GClass 10SanDisk Ultraarmv7l11.77132073285382957790315962552684Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x005/201758.9GSanDisk50.0140040045022.0622.04/dev/mmcblk0p12019-03-31 9:53 AM
899AnonymousSanDiskSL16GClass 10SanDisk Ultraarmv7l10.96812055272582227652316662082813Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x005/201714.9GSanDisk50.0140040045022.0722.05/dev/mmcblk0p12019-03-31 3:43 AM
893AnonymousSamsungGB1QTClass 10 U1Samsung Evo+armv7l17.64812322192592916573312165172143Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x012/201829.8GSamsung50.0140040045021.5222.11/dev/mmcblk0p62019-04-07 8:12 AM
892AnonymousSanDiskSL16GClass 10SanDiskarmv7l9.26522220261188828255269667562641Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x004/201714.9GSanDisk100.0120040045032.4635.34/dev/mmcblk0p12019-04-09 12:22 PM
871AnonymousSamsungEB1QTClass 10 U1Samsung 32GB EVO Plusarmv7l10.33472340139093638473263485081864Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x30x002/201829.8GSamsung50.0120040045019.2922.12/dev/mmcblk0p12019-03-27 11:29 AM
868AnonymousSanDiskSL16GClass 10 U1SanDisk Ultraarmv7l10.46672061267182447811290464572477Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x003/201714.9GSanDisk50.0130050050021.9522.01/dev/mmcblk0p62019-03-31 6:12 AM
866AnonymousSamsungEB1QTClass 10 U3Samsung Evo+armv7l15.529222041171.58817.47741262476401809Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x30x010/201732GSamsung50.0120040045021.8421.95/dev/mmcblk0p62019-03-16 3:16 AM
855AnonymousSanDiskSL16GClass 10Sandisk Ultraarmv7l10.46721842268973696897292558712754Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x004/201714.9GSanDisk50.0120040045022.0421.99/dev/mmcblk0p12019-04-16 3:47 AM
815AnonymousSanDiskSL32GClass 10SanDisk Ultraarmv7l7.15232000209280007369227265692511Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x011/201629,7GSanDisk50.0120040045022.1422.07/dev/mmcblk0p12019-03-22 10:39 PM
814AnonymousSanDiskACLCDA1 Class 10SanDisk Ultraarmv7l10.36352079254383187612266267741884Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x004/201729.7GSanDisk50.0140040045022.1821.99/dev/mmcblk0p62019-03-22 11:11 PM
812AnonymousSanDiskSL64GClass 10SanDisk Ultraarmv7l10.972119942885.47976.77091258265081915Raspberry Pi FoundationRaspberry Pi 2 Model B Rev 1.1Raspbian GNU/Linux 9 (stretch)SD0x80x004/201663GSanDisk50.090045021.6621.71/dev/mmcblk0p12019-03-17 8:37 AM
806AnonymousSanDiskSMIClass 0SanDiskarmv7l34.9419156167762410385108965261669Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x10x006/2012465.8G50.0140040045021.3720.01/dev/mmcblk0p72019-04-14 1:42 AM
803AnonymousSamsungED4QTClass 10 U3Samsung EVO Plusarmv7l10.3117203246981286860300258762715Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x30x001/2018119.3GSamsung50.0120040045021.9521.91/dev/mmcblk0p12019-03-29 12:38 AM
784AnonymousSanDiskADLCDA1 Class 10 U1SanDiskarmv7l9.855320712215.38286.97524258666381795Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x007/201732GSanDisk50.0140040045022.0122.00/dev/mmcblk0p12019-03-16 5:43 AM
751jchambersSeagateST500LM000-1EJ162HDD (5400 RPM)Seagatearmv7l34.55111702047.5680.651137610870700895Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)HDD2.10DEM4493GSeagateN/A140040045028.5028.22/dev/sda12019-03-13 7:20 AM
719AnonymousToshibaMK2555GSXFHDD (2.5" SATA)Toshibaarmv7l32.9342155136962010174100504961200Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)HDD2.00FH205B232.9GToshibaN/A120040045027.9126.21/dev/sda12019-03-17 4:07 PM
719umanoidSanDiskSP32GA1 Class 10 V30 U3SanDisk Extreme+ SDSQXBG-032G-GN6MAarmv7l2.71372581548103278823111584821364Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x009/20174.6TSanDisk50.0120025040021.9421.88/dev/mmcblk0p12019-04-20 1:21 AM
705voglerrSanDiskACLCDA1 Class 10SanDisk Ultraarmv7l5.13861921154476857561191766181781Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x001/201729.7GSanDisk50.0120025045021.9221.82/dev/mmcblk0p12019-04-07 8:36 PM
662AnonymousSanDiskSL32GClass 10SanDisk Proarmv7l12.5237170294868118123235957001102Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x80x007/201429.7GSanDisk100.0140040045030.9935.48/dev/mmcblk0p12019-03-31 5:05 AM
648AnonymousPhilipsUSB Flash DriveUSB FlashPhilipsarmv7l12.92631378105455141079718595667821Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)USB Flash2.1057.7GPhilipsN/A120040045029.3928.92/dev/sda12019-03-17 2:50 PM
632AnonymousSanDiskSMIClass 10SanDisk Ultraarmv7l12.913519125437648707713076970478Raspberry Pi FoundationRaspberry Pi 2 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x00x011/20177.5GSanDisk50.090040045018.5118.46/dev/mmcblk0p12019-03-18 9:07 AM
631AnonymousTranscendUSDU1Class 10 U1Transcendarmv7l14.1180170972368365920107355981066Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x20x005/201659.5GTranscend50.0140040045022.0522.01/dev/mmcblk0p12019-04-07 4:36 PM
617AnonymousTranscendUSDClass 10 V10 U1Transcendarmv7l8.9222183888873536425118362511043Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x10x011/201714.9GTranscend50.0120040045022.0622.06/dev/mmcblk0p12019-04-16 1:20 AM
616AnonymousSanDiskSDClass 10 V10 U1SanDiskarmv7l16.7391143115645724571818754463945Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x00x012/201828.9GSanDisk50.0140040045021.9921.94/dev/mmcblk0p12019-03-27 8:30 PM
612AnonymousADataSDClass 10 U1ADataarmv7l10.9179170371868145966116259091072Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x00x208/201314.7GAData50.0120040045022.1222.03/dev/mmcblk0p12019-03-18 5:11 AM
549AnonymousSonyUSD00Class 10 U1Sonyarmv7l5.017019166807664608312895781995Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x00x205/201829.9GSony50.0140025045022.1022.05/dev/mmcblk0p62019-03-25 2:22 AM
534jchambersKanguruFlashBlu30USB Flash Drive (3.0)Kanguru Flash Bluarmv7l17.02332637932.061055142398473009605Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)USB Flash2.1016GKanguruN/A140040045025.9129.78/dev/sda12019-03-15 4:26 PM
534zwippetSanDiskSC16GA1 Class 10SanDisk SC16Garmv7l3.11651749660699674466846022940Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x80x006/201814.9GSanDisk50.0120025045020.7321.94/dev/mmcblk0p62019-04-12 1:18 AM
533jchambersPhisonSD64GClass 10 U1EMTECarmv7l9.221208885.158353.473942116413207Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x001/201662GPhison100.0140040045035.3635.22/dev/mmcblk0p12019-03-15 4:39 PM
504AnonymousSanDiskSU16GClass 6SanDiskarmv7l7.01191491478.195967.4604317165135778Raspberry Pi FoundationRaspberry Pi 2 Model B Rev 1.1Raspbian GNU/Linux 9 (stretch)SD0x80x010/201116GSanDisk50.090045021.2721.82/dev/mmcblk0p12019-03-16 1:40 PM
500jchambersSamsung00000Class 10 U1Samsung Evo+armv7l9.61971415790.545662.2485010374726777Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x10x001/201732GSamsung100.0140040045030.0730.39/dev/mmcblk0p12019-03-15 9:36 PM
500jchambersPhisonSD16GClass 10 U1EMTECarmv7l7.2652030260.278120.669902556026252Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x010/201616GPhison100.0140040045035.2633.99/dev/mmcblk0p12019-03-16 12:00 AM
474AnonymousSanDiskSS16GClass 4SanDiskarmv7l4.88412763365104722816265142718Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Ubuntu 18.04.2 LTSSD0x80x007/201414.9GSanDisk83.335.1332.56/dev/mmcblk0p12019-04-09 1:07 PM
468AnonymousSamsung00000Class 10 U1Samsungarmv7l11.31381252554501144018624346625Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Raspbian GNU/Linux 9 (stretch)SD0x10x001/2017931.5GSamsung50.0120040045021.8321.84/dev/mmcblk0p12019-03-21 4:46 AM
452AnonymousPhisonSD16GClass 10 U1buffaloarmv7l7.4601681241672661052495379247Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x30x005/201614.5GPhison50.0140040045021.7421.40/dev/mmcblk0p12019-04-12 8:10 PM
435AnonymousKingstonSD32GClass 10 U1Kingstonarmv7l13.01841143738457447167233207553Raspberry Pi FoundationRaspberry Pi 3 Model B Rev 1.2Ubuntu 18.04.2 LTSSD0x30x007/201629.3GKingston50.0140040045021.8621.82/dev/mmcblk0p12019-04-06 10:16 AM
390AnonymousTeam GroupSDClass 10Teamarmv7l10.1214954856381941549942821632Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Ubuntu 18.04.2 LTSSD0x20x006/201814.7GTeam Group25.0140040045011.2211.22/dev/mmcblk0p12019-04-06 10:43 PM
383AnonymousTranscendUSDClass 10Transcendarmv6l4.51451676581670456868522598868Raspberry Pi FoundationRaspberry Pi Zero W Rev 1.1Raspbian GNU/Linux 9 (stretch)SD0x10x005/201714.8GJ`50.0100040045021.7421.76/dev/mmcblk0p12019-03-27 8:34 PM
305AnonymousPhisonSD16GClass 10 V10 U1Phisonarmv7l8.91611146544586126417238669Raspberry Pi FoundationRaspberry Pi 3 Model B Plus Rev 1.3Raspbian GNU/Linux 9 (stretch)SD0x50x002/201814.4GPhison50.0140040045021.2221.57/dev/mmcblk0p62019-03-30 2:13 PM

Scoring

The benchmark heavily favors 4k random reads / writes. This is because for application and operating system performance this is by far the most important metric. Traditional benchmarking methods like dd write, hdparm read tests, etc. are very poor indicators of everyday performance. What matters is not how fast your storage can push through giant files but how fast it can respond to random input that asks it to read / write anywhere on the disk.

To understand why we need to think of what your Raspberry Pi is usually doing. Most applications and services are not constantly writing giant sequential files which is what traditional synthetic benchmarks measure. Your Raspberry Pi is usually updating log files, reading data from different parts of the disk for various applications and services, responding to user input, etc. To your disk drive this behavior is considered “random” since it has no idea what it will be asked to read / write next.

Storage devices doing large sequential I/O like transferring files utilize extensive caching and other techniques to speed up these kinds of operations. Unfortunately these techniques do not work when the operating system and storage device doesn’t know what users / applications / services might request next. The storage device has no way to know or prepare for what your application will want next so it has to read it raw from the disk and can’t rely on cache.

This is why in our benchmarking we want to look very hard at 4k random read / writes. This is what will determine how “snappy” the Pi feels as you perform various tasks. Fast 4k random IO devices feel and perform much better than a device with huge throughput but poor random I/O performance.

The current scoring method is:

(DDWriteSpeed * 1024 + fio4kRandReadIOPS * 4 + fio4kRandWriteIOPS * 10 + io4kRead + io4kWrite + IO4kRandRead * 4 + IO4kRandWrite * 10) / 100

Methodology

The benchmark runs a few different tests in order to get a good overall idea of storage performance. It runs 4k read / write and random read / write in two separate benchmarks to verify the results and reduce variance. Here are the tests used in the benchmark:

FIO – An industry standard used for true storage benchmarking vs. just measuring throughput (like DD Write and HDParm — not considered true benchmarks). The benchmark tests 4k block size sequential read/write and random read/write. Gives a result in IOPS which stands for Input/Output Operations Per Second

IOZone – A very popular benchmarking program. We also test 4k block size sequential read / write and 4k random read / writes here to verify our results are close to the FIO results

DD Write – Basic throughput test of writing 0’s as fast as possible

HD Parm – Tests disk read throughput in direct mode (avoids caching)

Recommendations – 2019

The top recommendation this year for Pi storage will depend on your form factor. Let’s break it down:

My project is stationary (servers, media centers, etc.)

The best choice is a 2.5″ Solid State drive connected via USB. This is the highest performance choice and is very cheap (< $30). The benchmarks show that any solid state drive is so fast that it maxes out the Raspberry Pi’s USB 2.0 bus. I’ll talk about this more in the SSD analysis section below but basically it’s best to get the cheapest option while still picking a reliable brand.

Here is my current recommendation:

Kingston A400 SSD 120GB SATA 3 2.5” Solid State Drive

Sabrent USB 3.0 to SSD / 2.5-Inch SATA Adapter

My project moves around but can fit a USB drive

99% of USB drives are horrible choices for Pi storage media because they have very poor 4k random read / write performance. Micro SD cards are way faster than almost all of them. However, there is a special exception which in 2019 is much more reasonably priced.

There is a special USB drive by SanDisk that is actually a solid state drive on a stick. It has the same size / dimensions of a regular flash drive but uses solid state storage internally giving it great 4k random read / write performance. I own it and it benchmarked at 2330 putting it more than double any MicroSD card and only a couple hundred points below Samsung Pro 2.5″ SSDs.


SanDisk Extreme Pro 128GB USB Solid State Flash Drive

My project is small form factor and can’t use USB storage

There’s lots of cool projects out there that using any type of USB attached storage is not an option. For these projects Micro SD is still king. The good news is that Micro SD has had some recent developments such as the A1 / A2 application class cards. A2 is not supported by Raspberry Pi yet (or almost anything else really) so A1 is the important mark to hit.

I’ll cover Micro SD in depth in the Micro SD analysis section but here are the current recommendations:

SanDisk Extreme 32 GB

The SanDisk Extreme A1 is a good budget option. At time of writing it is only $10.94 for the 32GB version.

SanDisk Extreme Pro 64 GB – 400 GB

If you need higher capacity than 32GB it is cheaper to go with the A2 Extreme Pro version of the card. I own this version of the card and it benchmarked at a very high 1039. It had the highest 4k random write speed of any card I own.

SSD Analysis

SSD benchmarking so far has shown that there is not much of a difference between an older cheap SSD like a outdated mSATA Hynix drive and top of the line drives like the Samsung 850 Pro. The difference from the oldest cheap drives and top of the line was only about 100 points.

This is because the Pi has a USB 2.0 bus. Even the slowest oldest SSDs are so fast that they hit the maximum possible data transfer rate over USB 2.0. Because of this it makes sense to buy the cheapest SSD drive possible that is still reliable. See my recommendations section for ideas.

Micro SD Analysis

The Micro SD market has always been a difficult place for Raspberry Pi owners. Since there traditionally was no classification that indicated random read / write performance we simply had to buy different cards and benchmark them.

The problem with that was that Micro SD manufacturing processes change. They can even change from batch to batch. The 2015 Samsung Evo cards were a good example of this. We found a card with amazing 4k random read / write performance but one day they changed their process and the new ones are not even close.

Fortunately things have recently improved for us somewhat because of, well, smartphones! Let’s talk about the application class.

Micro SD A1 / A2 Application Class

Application class cards were created because smartphones have become one of the top use cases for SD cards. Many people run applications directly off their SD card or have applications that keep their active storage on there. Tech savvy smartphone users sick of slow performing cards demanded a speed class was created to measure this type of performance.

This is great for us Pi owners because this type of use is 4k random reads / writes and is exactly the same as what we do on the Pi. Thank you smartphone owners!

It’s important to note that right now the Pi (and pretty much everything else) cannot currently make use of the new A2 standard as it requires special driver support to take advantage of the new features. I have benchmarked both the SanDisk Extreme and the SanDisk Extreme Pro A2 cards in my benchmark results and they did not perform any better than the A1 cards because of this.

Lets look at the application class performance features:

The new A1 application cards are fantastic and performing very well on the benchmark. So far every application card benchmarked has hit the minimum A1 targets. If you are looking for a better performing SD card then A1 is the way to go.

Video Class (V30, etc) and U Class (U1 and U3)

These don’t matter for the Pi. Basically at all. They are measurements for maximum sequential I/O throughput. For example if you have a video camera that needs to record in 4k it will need a very high sequential I/O maximum transfer rate.

The Pi depends on 4k block size random I/O as I’ve explained in earlier sections and these classifications don’t measure that. Indeed, my 3 worst performers on the benchmark are all U1 cards and got easily stomped (nearly doubled in score) by a SanDisk Ultra Class 10.

This doesn’t mean U capable cards are bad. The Samsung Pro+ is a U1 class card and performed incredibly well on the benchmark. It just means that the Samsung Pro+ has much higher quality memory / a better controller inside it.

The conclusion is that unlike the application class these classifications will not tell you if your card is going to be good or awful for the Pi. You need to benchmark them to know!

The “Old Evo” Conundrum

You may have noticed that my top performing Micro SD card for this year was the 2015 Samsung Evo model. Again. Although the DD Write output throughput is a little lower than some of brand new cards it more than made up for it on the 4k random read / write performance.

This card’s random 4k read performance is so fast it actually beat several solid state drives. Only the Samsung Pro+ came close on read speed but got beat by a whopping 300 IOPS on the 4k random write letting it come out on top again.

The problem seems to be one of those “they don’t make them like this anymore” things. I bought the Samsung Evo+ (it should be better right?) and it occupies one of the worst performing cards in my arsenal all the way down with the EMTEC dollar store cards.

Other people have noticed this discrepancy too. At some point Samsung must have changed their manufacturing process and started using a different type of memory or on-board storage controller (likely to a cheaper one) for these cards.

This is a big reason why I created this benchmark. With a bigger sample size of cards we as a community can pool our card benchmarks together and figure out which manufacturers and lines of cards are getting the good memory / on-board storage controllers.

Manufacturers change their processes all the time (even from batch to batch) so to keep up we will need to watch the benchmark results and see where the “good stuff” is going and when the card quality quietly changes!

Conclusions

  • Use a solid state drive (SSD) if possible. Instructions on how to set one up with the Pi are in this article
  • The only sensible Micro SD cards to buy right now are application class (A1 or higher).
  • The Pi cannot utilize A2 so don’t pay extra for it (although sometimes the A2 versions are cheaper). A2 cards will run in A1 mode on the Pi
  • USB flash drives are terrible choices for Pi storage
  • Old “spinny disk” 5400 RPM and 7200 RPM HDDs underperform decent Micro SD cards

With the new benchmark we should be able to learn a lot more about storage on the Pi. Micro SD cards seem to be the area we need to learn the most about. As more people run the benchmark we’ll continue to analyze and revise recommendations based on what everyone finds!

Leave a Reply

Your email address will not be published. Required fields are marked *