Thanks.
Very helpful again.
At first I thought that the constraint might be the Pine's 2.0 USB controller but if the random write performance from pine sd card to usb stick went down while the random read performance from Pine sd card to USB stick went up it doesn't seem that the Pine's 2.0 USB controller is what is limiting usb random write performance..
Using an Intergral 64GB USB 3.0:
Run began: Fri Jul 1 21:01:52 2016
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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
102400 4 1816 1668 5914 4980 5395 929
102400 16 5987 6767 18200 17952 17514 3320
102400 512 16531 17967 32526 33244 32805 12625
102400 1024 14803 19849 35492 36330 36312 14429
102400 16384 13931 11563 37908 37925 37153 14658
iozone test complete.
Thanks JamesRead90.
More data is always better!
So for random writes it looks like your Intergral 64GB USB 3.0 is faster (14,658 kBytes/sec) than the Pine64 SD card (11,300 kBytes/sec).
Xalius, how do these results stack up against the Pine64 card and my Integral 64GB USB 3.0? For this test I used my Kingston Datatraveler Ultimate USB 3.0.
Run began: Thu Jul 7 00:48:48 2016
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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.
Code: random random bkwd record stride
kB reclen write rewrite read reread read write read rewrite read fwrite frewrite fread freread
102400 4 5965 6589 10653 10657 7472 349
102400 16 12626 12643 21321 21292 21200 1274
102400 512 16669 13970 38586 38322 38251 807
102400 1024 12490 12473 39157 39186 39121 1589
102400 16384 26150 29875 41209 41221 41218 19738
iozone test complete.
So for random writes and ranked in order of speed from fastest to slowest:
1) Samsung EVO 64 GB xalius 21,690 kB/sec
2) Integral 64GB USB 3.0 Jamesread90 (2nd test) 19,738 kBytes/sec (Kingston Data traveler Ultimate USB 3.0)
3) Sony USB 64 GB USB 3.0 xalius 12,157 kB/sec
4) Integral 64GB USB 3.0 Jamesread90 14,658 kB/sec
5) Pine64 SD card xalius (11,373 kBytes/sec).
This ignores cost of each option.
Jamesread 90 what is the difference between your results in #2 and #4?
07-24-2016, 11:28 AM
(This post was last modified: 07-24-2016, 11:30 AM by xalius.)
Testing Linux pine64 4.7.0-rc1firebuild-MMC #1 SMP PREEMPT Sun Jul 24 11:56:29 CDT 2016 aarch64 GNU/Linux
Code: debian@pine64:~$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Iozone: Performance Test of File I/O
Version $Revision: 3.429 $
Compiled for 64 bit mode.
Build: linux
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone,
Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root,
Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer,
Vangel Bojaxhi, Ben England, Vikentsi Lapa.
Run began: Sun Jul 24 17:19:09 2016
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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
102400 4 1610 2793 5949 5955 5940 2852
102400 16 7435 7585 9155 9176 9175 7645
102400 512 11091 11199 11644 11624 11633 11122
102400 1024 11205 11258 11668 11651 11664 11264
102400 16384 11045 11297 11684 11681 11685 11304
iozone test complete.
For comparison with the latest BSP 3.10.x kernel (102-2):
Code: ubuntu@pine64:~$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Iozone: Performance Test of File I/O
Version $Revision: 3.429 $
Compiled for 64 bit mode.
Build: linux
Run began: Sat Jun 18 11:29:59 2016
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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
102400 4 2319 3321 7347 7363 7357 3526
102400 16 10166 12550 14464 14432 14471 12570
102400 512 21591 21566 23143 23140 23139 21616
102400 1024 21653 21565 23097 23100 23098 21645
102400 16384 21678 21662 23084 23082 23082 21690
iozone test complete
06-17-2017, 11:19 AM
(This post was last modified: 06-17-2017, 11:24 AM by xalius.)
New data from Pinebook eMMC for comparison, running with performance governor on Linux pinebook 3.10.105-bsp-1.2-ayufan-65 #1 SMP PREEMPT Mon Jun 5 06:57:47 UTC 2017 aarch64 aarch64 aarch64 GNU/Linux
Code: Run began: Sat Jun 17 19:12:37 2017
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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
kB reclen write rewrite read reread read write
102400 4 4078 4211 19836 19561 13048 3360
102400 16 18230 18891 50913 51223 37699 14025
102400 512 55205 54522 84858 84813 83709 49719
102400 1024 55929 55135 84625 85749 85235 51696
102400 16384 56507 56041 85515 85579 85930 55151
06-21-2017, 05:17 PM
(This post was last modified: 06-22-2017, 05:28 AM by pfeerick.
Edit Reason: added [code] formatting so things line up again ;)
)
Code: pine64@pinebook:~$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Iozone: Performance Test of File I/O
Version $Revision: 3.429 $
Compiled for 64 bit mode.
Build: linux
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone,
Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root,
Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer,
Vangel Bojaxhi, Ben England, Vikentsi Lapa.
Run began: Wed Jun 21 23:09:02 2017
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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
102400 4 3018 3096 8644 8631 8167 3715
102400 16 8248 8363 16757 16863 16571 9702
102400 512 21553 21338 23032 22853 22827 20587
102400 1024 21358 21313 22921 23142 22855 21118
102400 16384 21168 21375 22947 22915 23134 21070
iozone test complete.
Forgot to mention that this is one of the new Sandisk A1 32 gig card.
06-23-2017, 10:37 AM
(This post was last modified: 06-23-2017, 10:39 AM by xalius.)
Sandisk Extreme Pro 32GB with A1 / V30 rating
Code: pine64@pinebook:/media/pine64/6532-6630$ iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
Iozone: Performance Test of File I/O
Version $Revision: 3.429 $
Compiled for 64 bit mode.
Build: linux
Contributors:William Norcott, Don Capps, Isom Crawford, Kirby Collins
Al Slater, Scott Rhine, Mike Wisner, Ken Goss
Steve Landherr, Brad Smith, Mark Kelly, Dr. Alain CYR,
Randy Dunlap, Mark Montague, Dan Million, Gavin Brebner,
Jean-Marc Zucconi, Jeff Blomberg, Benny Halevy, Dave Boone,
Erik Habbinga, Kris Strecker, Walter Wong, Joshua Root,
Fabrice Bacchella, Zhenghua Xue, Qin Li, Darren Sawyer,
Vangel Bojaxhi, Ben England, Vikentsi Lapa.
Run began: Fri Jun 23 18:28:17 2017
Include fsync in write timing
O_DIRECT feature enabled
Auto Mode
File size set to 102400 kB
Record Size 4 kB
Record Size 16 kB
Record Size 512 kB
Record Size 1024 kB
Record Size 16384 kB
Command line used: iozone -e -I -a -s 100M -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
kB reclen write rewrite read reread read write
102400 4 3420 3442 7736 8133 7404 4750
102400 16 7509 8154 15160 15040 14810 10800
102400 512 17752 21726 22651 22747 22798 20674
102400 1024 17836 21356 22843 22907 22877 20994
102400 16384l 18359 22042 23038 23038 23093 21774
(01-24-2016, 06:10 PM)mronhb Wrote: please excuse the noob question but can anyone please recommend a good brand and class of micro sd card to buy to use with the PINE A64+ w/ 2GB SDRAM. I am very excited about receiving mine in March but very much wanting advice on the best micro sd card to buy. Any advice greatfully accepted thanks
Hello
The choice of sdcard is rather important, sd cards suffer from a symptom called 'Wear Level', this where cards that are constantly being written over and over again such as dashcams or video camera cards, suffer premature failure due to data blocks within the memory stack being corrupted and not accepting any more data. The blocks are tagged in the VTOC (Volume Table of Contents) and the 32gb sdcard is no longer 32gb, The Samsung line of SDcards (extreme usage) though a little more expensive seem to hold up the best when benchmarked, it is very important that the card is specified for high read/write (sometimes you may see a card specified for video for example) and the phrase the phrase Extreme Usage' should be displayed in the item description, this information is well known to the SD card manufacturers and is just now making its way into general parlance.
|