08-16-2019, 06:41 AM
(This post was last modified: 08-16-2019, 08:59 AM by stuartiannaylor.)
(08-15-2019, 03:10 PM)neilman Wrote:Following this discussion I thought I would try to check the speed of my original 16GB eMMC as supplied with my PineBook (1080) which I replaced early on with a 64GB eMMC. I have the official USB adapter and used it to program my new 64GB eMMC module successfully last year.
I was hoping to provide a read/write figure for my surplus eMMC module but...
I formatted the drive with (Windows) SDFormatter successfully then followed that using the H2TestW media test program when I was plugged into a UBS 3 port.
It managed to write to the whole drive at a constant speed of 15.9MBps but on switching to verify the drive disappeared and the LED on the USB programmer went steady. The drive no longer existed to Windows.
Unplugged it and re-seated it, the drive appeared again and the USB LED flashed, Windows explorer confirmed the drive was full of 1GB test files but selecting verify only, the eMMC immediately disappeared again.
Repeated the whole process using a USB 2 port and, apart from write speed now at 15.3MBps it disappeared again on verify.Tried Etcher with a Q4OS Pinebook image and writing was ok but verification failed again.
Don't know whether the eMMC is now faulty (it was stored in an antistatic bag whilst plugged in the programmer) or the programmer
DD is not a really good test so used iozone as almost 90-95% of normal activity is going to be small 4k files.
Code:
Command line used: iozone -e -I -a -s 250M -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
256000 4 2065 2088 7301 7303 5593 1425
256000 16 6486 7265 28303 29047 29014 6356
256000 512 15325 14409 107559 110071 108360 13137
256000 1024 13470 13567 112071 112890 114135 12399
256000 16384 13026 13714 117179 120009 120015 12817
I am going to burn the image again so its fresh with and Ayufan but boy!!!
Its not just usb adaptor dunno where hdparm gets its figures but do iozone to real world timings the results are extremely poor.
Think there is a couple of probs writing on windows seems to quickly drop because the emmc / adaptor gets quite warm.
If you run iozone on windows then wow but what the F is happening with the rk3399? But sustained writes drops from those wonderful figures to suck city pretty quick.
Code:
Command line used: iozone -e -I -a -s 250M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Output is in Kbytes/sec
Time Resolution = -0.000000 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
256000 4 245281 288604 1141253 1169749 591445 193319
256000 16 295191 301778 2414916 3037014 1760110 276703
256000 512 319541 319514 4077387 5308383 4831446 324607
256000 1024 326327 324847 5414311 5556725 4987608 326130
256000 16384 315242 317253 4127388 4202814 4044966 320733
Code:
Command line used: iozone -e -I -a -s 250M -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
256000 4 2083 2199 6908 6891 5155 1431
256000 16 6340 7387 30967 30377 30230 6443
256000 512 15679 14352 102581 103662 104033 12753
256000 1024 13169 13524 104729 107799 108613 12195
256000 16384 12851 13681 114358 118152 118905 12850
Code:
Command line used: iozone -e -I -a -s 250M -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
256000 4 5517 6097 9271 9262 7268 5342
256000 16 10904 11170 22138 22246 19064 10875
256000 512 25052 28489 57366 57453 56779 27967
256000 1024 30793 31098 59722 59973 59748 26963
256000 16384 33204 33066 64785 64381 64118 32491
You might get higher big rec length reads on the emmc but in use you notice even sd feels faster in boot and use.