Hi Olliver,

Unfortunately, I have a problem to see and use quoted text so I delete it.

I saw broken-hpi option but currently I use mainly kernel 4.5.3 so not sure 
if it is available there.
About 8-bit staff in my patch it is there by error. I really use 4-bit bus 
without additional pins definitions.

About better results measured by you it is definitely because of larger 
buffers.
If you want to get a real figures you have to measure performance for a set 
of buffer sizes like I do with iozone tool:
root@egpr:~# uname -a
Linux egpr 4.6.0-sunxi #1 SMP Tue May 10 20:50:21 EEST 2016 armv7l GNU/Linux

root@egpr:/mnt# 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 32 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: Tue May 10 23:28:08 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
              kB  reclen    write  rewrite    read    reread    read     
write
          102400       4     3653     4003    12637    12521     9501     
3997
          102400      16     7277     7531    16300    16413    14910     
7392
          102400     512    11733    11739    39496    39444    39254    
11718
          102400    1024    11793    11843    40015    40086    39951    
11887
          102400   16384    11977    11895    40680    40781    40656    
11952

                                                              random   
 random
              kB  reclen    write  rewrite    read    reread    read     
write
          102400       4     3768     4008    12458    12432     9565     
3895
          102400      16     7231     7526    16488    16634    15085     
7432
          102400     512    11608    11700    38424    38358    38172    
11655
          102400    1024    11841    11853    39543    39736    39573    
10977
          102400   16384    11923    11950    40756    40823    40824    
11994

iozone test complete.
It is strange that read speed of ~40 MB/s is reached at 512+ kB buffers but 
write speed of 17MB/s (as you mention) is never reached at my tests.

For reference iozone test gives eMMC speeds at kernel 4.5.3:
                                                              random   
 random
              kB  reclen    write  rewrite    read    reread    read     
write
          102400       4     3444     3677     9663     9626     7801     
3577
          102400      16     6290     6514    13084    12740    11873     
6409
          102400     512    11623    11653    21592    21567    21485    
10617
          102400    1024    11787    11859    21862    21907    21811    
11805
          102400   16384    11944    11914    22131    22125    22147    
11947

4GB SD card class 10 speeds at kernel 4.6.0 are:
                                                              random   
 random
              kB  reclen    write  rewrite    read    reread    read     
write
          102400       4      630      736     5242     5149     4683      
171
          102400      16     1140     1507    11630    11651    11517      
331
          102400     512     6247     6465    21572    20748    21567      
945
          102400    1024     6297     6521    20707    21943    21901     
1945
          102400   16384     6363     6416    22209    21001    22208     
6459

4GB SD card class 10 speeds at kernel 4.5.3 are:
                                                              random   
 random
              kB  reclen    write  rewrite    read    reread    read     
write
          102400       4      222      227     5790     5821     4180      
203
          102400      16     5681     6149     9470     9661     8340       
62
          102400     512    12033    11656    21194    21194    20982     
2199
          102400    1024    12548    11792    21606    21616    20760     
4737
          102400   16384    12755    11831    21929    21964    21214    
10531
Strange is that SD card write speed is better at kernel 4.5.3 than at 
kernel 4.6.0 while read speed is almost the same.

About using your patch in kernel 4.6 at Armbian build I did not see any 
errors at patching phase.
Maybe I have to try patched with my patches u-boot and kernel 4.6 patched 
with your patch.
But I am not sure that u-boot has to do something for kernel to work with 
eMMC.

I am ready to test if you have some ideas because your patch is probably 
better than one used by me at the moment.

Best regards
Chris

-- 
You received this message because you are subscribed to the Google Groups 
"linux-sunxi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to linux-sunxi+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to