chwe Posted July 25, 2017 Posted July 25, 2017 Test setup: After the micro-USB thread where I showed that USB cable and charger matters, it’s time to speak about SD-Cards. For this I buyed a cheap SD-Card from aliexpress claimed to be a 8GB class 10 SDHC. Spoiler Since I have no other 8GB cards I’ll compare this card with a Samsung EVO+ 32GB card which I usually use with my SBCs. After arrival, I did (as recommended by the armbian getting started guide) a first H2testw to check if the card is in a good shape (test results in german). Spoiler Achtung: Nur 7659 von 7660 MByte getestet. Der Datenträger ist wahrscheinlich defekt. 7,4 GByte OK (15685248 Sektoren) 192 KByte DATEN VERLOREN (384 Sektoren) Details: 0 KByte überschrieben (0 Sektoren) 0 KByte leicht verfälscht (< 8 Bit/Sektor, 0 Sektoren) 192 KByte mit Datenmüll (384 Sektoren) 0 KByte mehrfach genutzt (0 Sektoren) Erster Fehler bei Offset: 0x00000000354b1000 Soll: 0x00000000354b1000 Ist: 0x00131000157f1000 H2testw Version 1.3 Schreibrate: 10,8 MByte/s Leserate: 17,2 MByte/s H2testw v1.4 Seems that this card still starts with bad sectors on it (384 sectors, 192 KB). Since formate a SD-Card on windows is shitty, I downloaded the tuxera SD-Card formater from sdcard.org. Formate the card and do the H2testw again showed that we no have 12MByte more space. but the number of corupted sectors also increased (896 sectors, 448KB). Spoiler Achtung: Nur 7671 von 7672 MByte getestet. Der Datenträger ist wahrscheinlich defekt. 7,4 GByte OK (15709312 Sektoren) 448 KByte DATEN VERLOREN (896 Sektoren) Details: 0 KByte überschrieben (0 Sektoren) 0 KByte leicht verfälscht (< 8 Bit/Sektor, 0 Sektoren) 448 KByte mit Datenmüll (896 Sektoren) 0 KByte mehrfach genutzt (0 Sektoren) Erster Fehler bei Offset: 0x0000000055864000 Soll: 0x0000000055864000 Ist: 0x3020000155865010 H2testw Version 1.3 Schreibrate: 11,3 MByte/s Leserate: 17,0 MByte/s H2testw v1.4 Burning Armbian: So we could expect that this card wouldn’t be a good choice for a SBC but doesn’t matter, let’s reformate the card and burn armbian 5.24 (debian with legacy kernel) to it. After burning the image with Etcher, it reminds me kindly that this may be not a good idea. Let’s forget about warnings, connect the board via lan to the router and via serial debug to PuTTY. The first boot needs about 50 seconds. Set up the new password and new user for daily use and reboot the system (~30 seconds + 15 seconds for log in). Since everything runs smoothly, I decided to follow @tkaisers SD-Card benchmark test to see how this card performs (10M instead of 100M, forgott to remove the 16384k files ) 'iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2' Spoiler Command line used: iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 674 720 2066 2140 2138 734 10240 16 2321 2561 6335 6356 6354 2329 10240 512 8436 9095 11466 11467 11465 6290 10240 1024 6244 6548 11499 11499 11498 8271 Command line used: iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 794 744 2390 2127 2125 739 10240 16 2794 2381 6321 6359 6355 2785 10240 512 8338 6509 11442 11467 11467 6712 10240 1024 6350 6194 11498 11480 11497 7489 Command line used: iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 864 757 2628 2083 2118 736 10240 16 2788 2485 6335 6344 6333 2813 10240 512 5921 6661 11450 11461 11439 7706 10240 1024 8799 8877 11496 11475 11497 8966 The results aren’t that stable and we should consider that there’s a different kernel used compared to tkaisers thread but we see clearly that this card is slow. The reason why I choosed a outdated armbian is simple. I wanna see much the impact of the sd-card is during apt-update/ apt-upgrade from 5.24 to 5.31. Apt-get update needs 43 seconds followed by apt-get upgrade which needs 14 minutes. After a second reboot (~34 seconds) the SD-Card was removed formatted and a third H2testw was done. Surprisingly h2testw found less corrupted sectors than before (608 sectors, 304KB) Spoiler Achtung: Nur 7671 von 7672 MByte getestet. Der Datenträger ist wahrscheinlich defekt. 7,4 GByte OK (15709600 Sektoren) 304 KByte DATEN VERLOREN (608 Sektoren) Details: 0 KByte überschrieben (0 Sektoren) 0 KByte leicht verfälscht (< 8 Bit/Sektor, 0 Sektoren) 304 KByte mit Datenmüll (608 Sektoren) 0 KByte mehrfach genutzt (0 Sektoren) Erster Fehler bei Offset: 0x000000001c2c4008 Soll: 0x1c2c4001a697c011 Ist: 0x1c2c4080ae87c031 H2testw Version 1.3 Schreibrate: 10,8 MByte/s Leserate: 16,9 MByte/s H2testw v1.4 After all these tests with the cheap SD-Card, I formatted my Samsung EVO+ SDHC 32GB card and tested it with H2testw. As expected there were no bad sectors since my last test of this card. Also read and write speed are ~3MB/s faster as with the cheap SD-Card. Spoiler Achtung: Nur 30530 von 30531 MByte getestet. Fertig, kein Fehler aufgetreten. Sie können die Testdateien *.h2w jetzt löschen oder nach Belieben nochmals überprüfen. Schreibrate: 14,0 MByte/s Leserate: 20,1 MByte/s H2testw v1.4 Burning the same image of Armbian to this SD-Card showed no error and the first boot needs about 44 seconds. After setup of the daily user followed by a reboot (30 seconds, 2 seconds after login), ‘iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2’ showed that the card is faster than the cheap SD-Card but not as fast as in tkaisers setup on the banana pi. Spoiler Command line used: iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 1418 1414 5001 5000 4584 1117 10240 16 5318 5514 12865 12897 12292 4436 10240 512 19497 19568 22725 22616 22621 19588 10240 1024 19270 20058 22840 22714 22678 19747 Command line used: iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 1414 1407 4999 5000 4589 1101 10240 16 3028 4689 12867 12899 12293 4357 10240 512 16867 19865 22707 22728 22693 19518 10240 1024 19848 19354 22715 22825 22802 20016 Command line used: iozone -e -I -a -s 10M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2 Output is in kBytes/sec Time Resolution = 0.000001 seconds. Processor cache size set to 1024 kBytes. Processor cache line size set to 32 bytes. File stride size set to 17 * record size. random random bkwd record stride kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread 10240 4 1397 1392 5000 5000 4624 1123 10240 16 5377 5277 12867 12899 12293 4509 10240 512 14489 19690 22715 22721 22664 19661 10240 1024 19608 19577 22782 22728 22797 19584 After finishing the SD-Card performance tests apt-get update was done in 40 seconds and apt-get upgrade to Armbian 5.31 was done in 11 minutes! Conclusion: Both, etcher and H2testw, did a good job. They indicated that the cheap SD-Card isn't recommended to install a OS on it. Iozone then showed also that the cheap SD-Card is a way slower than the Samsung EVO+, this was also proved by apt-upgrade, which took 3 minutes longer than on a Samsung EVO+ (~27% slower). Even if there were no instabilities during this short test, I would never use this SD-Card on an SBC cause it's only a matter of time until this setup runs into instabilities. Outlook: So, what's next? I'll combine the shitty charger with the shitty micro USB cable, mixed it with this SD-Card and serve it as the worst case armbian set up to you. This 'toxic cocktail' will then run 24/7 with some data generating stuff on it, sending some 'still alive' notes to a proper powered SBC, until it crashes (thinking about connecting a USB-Camera& motion to generate data). 1
Recommended Posts