Hi Jaski,
Thanks for your reply. Ugh. Bonnie++ takes ages to complete even on PC. Doing from iMX6ULL on USB key lowers sequential output 1.5 times, confirmed 12+ MiB/s by different tools, only 8 according to Bonnie++. I trust more dd, but OK.
2nd problem with Bonnie is that by default it tries to write 2x amount of free RAM, which is 2x 400+ MB, and I have only 300+ MB on NAND. It succeeds, which means data is compressible and UBI is able to fit such large file. OK, then I create folder and disable compression :
root@rcserv:/# mkdir 1
root@rcserv:/# chattr -c 1
and
root@rcserv:/# /bonnie++ -d /1 -u root
Using uid:0, gid:0.
Writing a byte at a time...done
Writing intelligently...Can't write block.: No such file or directory
Can't write block 44722.
root@rcserv:/#
Can’t write block, which must be duo to too large test file. Retrying with lowered data and RAM sizes:
root@rcserv:/# /bonnie++ -d /1 -u root -s 128 -r 64
Using uid:0, gid:0.
Writing a byte at a time...done
Writing intelligently...done
Rewriting...done
Reading a byte at a time...done
Reading intelligently...done
start 'em...done...done...done...done...done...
Create files in sequential order...done.
Stat files in sequential order...done.
Delete files in sequential order...done.
Create files in random order...done.
Stat files in random order...done.
Delete files in random order...done.
Version 1.97 ------Sequential Output------ --Sequential Input- --Random-
Concurrency 1 -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP /sec %CP
rcserv 128M 138 93 1607 15 1673 16 548 97 +++++ +++ 2135 229
Latency 104ms 118ms 106ms 52918us 1013us 50179us
Version 1.97 ------Sequential Create------ --------Random Create--------
rcserv -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
files /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP /sec %CP
16 2293 44 2064 36 3335 60 2900 55 +++++ +++ 1182 49
Latency 17385us 461ms 9277us 101ms 1028us 8241us
1.97,1.97,rcserv,1,1569318927,128M,,138,93,1607,15,1673,16,548,97,+++++,+++,2135,229,16,,,,,2293,44,2064,36,3335,60,2900,55,+++++,+++,1182,49,104ms,118ms,106ms,52918us,1013us,50179us,17385us,461ms,9277us,101ms,1028us,8241us
root@rcserv:/#
As you see sequential output for block is 1607 K/sec. This is quite close to what I see with dd (2.0-2.6MB/s). Reading NAND datasheet I see block (128k) erase time 1ms, page (2k) program time 300us. Block reprogram speed is limited by Reprogram time is limited by 128k / (0.001 + 128/2*0.0003) = 6+ MB/s. Hm, not a lot, but I saw 4x better NAND performance on iMX7D. Memory chips differ AB/AC at the end, but datasheets provide same erase/program times.
Thanks and regards,
Edward