OrangePI 2 Plus - Storage Performance query


Recommended Posts

All,

 

So in this example, let's use SMB, however it does seem to apply to any transport method i use.

 

I seem to have an issue when writing to the Pi whereby the throughput will peak to 50MBps then drop right down and float around 9MBps.

 

<a href="https://ibb.co/fSXXRG"><img src="https://thumb.ibb.co/fSXXRG/write.png" alt="write" border="0"></a>

 

Local disk test shows shows circa 450 Rear and 50MBps write.

I get the same results if i make use of the onboard flash or attach an SSD to the SATA port.

 

Does anyone know what's happening here? it's not the source device that is causing this, It appears as though some buffer or limit is being hit on the Pi?

 

Thanks

Lee

Link to post
Share on other sites
Donate and support the project!

24 minutes ago, Lee Noble said:

I get the same results if i make use of the onboard flash or attach an SSD to the SATA port.

 

There is no SATA port on this board, just the most crappy USB-to-SATA bridge currently known (called GL830 and even being broken since eating your last two sectors of any disk). When you forget about this 'SATA port' the best you could get are ~40MB/s with an external USB disk enclosure that makes use of UAS (see link). Onboard eMMC should be fast (40/80MB/s sequential write/read).

 

Please see http://linux-sunxi.org/Sunxi_devices_as_NAS#Benchmarking_.2F_Identifying_bottlenecks and use iozone and iperf3 to test storage/network locally. No idea which OS image you use but at least 12MB/s write should be possible writing to a 'SATA attached' disk, +30MB/s with an USB2 attached disk and maybe +50MB/s when writing to the eMMC (SD card has it's own limits, explained here)

Link to post
Share on other sites

I'm using the latest Armbian image with legacy kernel.

https://www.armbian.com/orange-pi-plus-2/

 

I have used Iperf3 to test and get no bottlenecks using that, hitting around 770mbit, but then again this is not writing anything to EMMC.

 

[ ID] Interval           Transfer     Bandwidth       Retr

[  4]   0.00-10.00  sec   918 MBytes   770 Mbits/sec    0             sender

[  4]   0.00-10.00  sec   918 MBytes   770 Mbits/sec                  receiver

 

/dev/mmcblk0p1:

 Timing cached reads:   918 MB in  2.00 seconds = 458.20 MB/sec

 Timing buffered disk reads: 166 MB in  3.02 seconds =  55.03 MB/sec

 

Making use of the EMMC flash gives the same results, starts around 60MBps then drops to below 10MBps when writing to storage. If reading from EMMC storage i get a steady 60MBps. I'm not making use of SD Cards either.

Makes no odds if i transfer over FTP, SMB etc etc, i get the same results when it involves writing to storage attached to the Pi, I will also add that i have tried other builds from the OrangePi site to experience the exact same results.

 

The issue appears to be when i'm writing to storage attached to the Pi. 

When reading from the Pi Over SMB at 60MBps:

59d5082205dd6_readfrompi.thumb.jpg.825d679e896d8ba793a0098349a77e1c.jpg

 

When writing to the Pi, starts at 60MBps then drops right down to just under 10MBps then sites there:

59d50827bf3bd_writingtopi.thumb.jpg.328b071af00de3ddc10c356094b7b2a0.jpg

 

 

I'm starting to wonder if maybe the CPU is heating up and throttling at hardware, yet nothing in dmesg states so.

 

Thanks

Link to post
Share on other sites
7 minutes ago, Lee Noble said:

I'm starting to wonder if maybe the CPU is heating up and throttling at hardware, yet nothing in dmesg states so.


If you want to understand why this is so, start with better diagnostic tools. Install RPI monitor via armbianmonitor and observe what's going on. Nothing is wrong - Board maker simply used the most shitty USB2SATA interface on this planet and there is nothing you can do about. Except getting some other board ... or at least switch to a modern kernel and use UASP capable USB 2 SATA converters to get some better performance. Next - use search. We talked a lot about those issues.

Link to post
Share on other sites
Just now, Igor said:


If you want to understand why this is so, start with proper diagnostic tools. Install RPI monitor via armbianmonitor and observe what's going. Nothing is wrong - Board maker simply used the most shitty USB2SATA interface on this planet and there is nothing you can do about. Except getting some other board ... or at least switch to a modern kernel and use UASP capable USB 2 SATA converters. Use search. We talked a lot about those issues.

I'm not actually using SATA though, I'm using the onboard EMMC 16GB of flash storage.

Link to post
Share on other sites
40 minutes ago, Lee Noble said:

I'm using the latest Armbian image with legacy kernel.

 

If you're somewhat experienced in Terminal please try to exchange contents of etc/init.d/armhwinfo with https://github.com/armbian/build/blob/master/packages/bsp/common/etc/init.d/armhwinfo, then reboot and test again (I would prefer numbers made with 'Helios Lantest' with '10 Gigabit Ethernet' settings since this tool eliminates client-side bottlenecks since running all the tests on the Client from RAM. Of course before/after numbers preferred).

 

And yes, always run some monitoring in parallel, either 'sudo armbianmonitor -m' in another terminal window or as already suggested use RPi-Monitor.

Link to post
Share on other sites
15 hours ago, tkaiser said:

 

If you're somewhat experienced in Terminal please try to exchange contents of etc/init.d/armhwinfo with https://github.com/armbian/build/blob/master/packages/bsp/common/etc/init.d/armhwinfo, then reboot and test again (I would prefer numbers made with 'Helios Lantest' with '10 Gigabit Ethernet' settings since this tool eliminates client-side bottlenecks since running all the tests on the Client from RAM. Of course before/after numbers preferred).

 

And yes, always run some monitoring in parallel, either 'sudo armbianmonitor -m' in another terminal window or as already suggested use RPi-Monitor.

Thank-you very much for your assistance, I shall test this later and report back.

Link to post
Share on other sites

I have just conducted the test:

 

Before hwinfo update:

LanTest-192_168.0.31-DESKTOP-STJ8DMJ_pre_hwinfo_update.jpg.1fae09b4748e2f2e01b9ced167b9967e.jpg

 

After hwinfo update:

LanTest-192_168.0.31-DESKTOP-STJ8DMJ_post_hwinfo_update.jpg.a7a7eeebc245319cd9349a7a7b936070.jpg

 

And just to show that it's not an issue with my network, here is a test from the same desktop to a laptop on my LAN.

LanTest-192_168.0.31-DESKTOP-STJ8DMJ_to_LAPTOP.jpg.af35631f9daff970bc008679e2860036.jpg

 

As you can see from the screenshots involving the Pi it spikes up and then drops to around 12MB/s. This is with the 16GB onboard EMMC. 

 

NO SD card or SSD/HDD is attached, take a look in the attached test.zip, you can see that the CPU temp is not an issue. Is some buffer getting filled up when writing to EMMC?

 

test.zip

Link to post
Share on other sites
11 minutes ago, Lee Noble said:

After hwinfo update:

 

I forgot to mention that exchanging this needs a reboot to have any effect :\

 

Anyway: the quick check would be a 'sudo cpufreq-set -g performance' and repeating the test. If numbers then are somewhat better one source of the problem were insufficient cpufreq settings (ondemand without tweaks responsible for the H3 all the time clocking with 480MHz instead of 1296 MHz).

 

Then if you installed Samba the usual way you most probably miss some important fixes, just check what the Samba and OMV installation routines here do differently.

 

My recommendation would be to purge Samba, keep /etc/init.d/armhwinfo as it is now, download softy from the link above, execute it and either install OMV (if you're running a Debian Armbian flavour) or Samba from softy. Samba without some tweaks simply sucks on ARM devices.

Link to post
Share on other sites
1 minute ago, tkaiser said:

 

I forgot to mention that exchanging this needs a reboot to have any effect :\

 

Anyway: the quick check would be a 'sudo cpufreq-set -g performance' and repeating the test. If numbers then are somewhat better one source of the problem were insufficient cpufreq settings (ondemand without tweaks responsible for the H3 all the time clocking with 480MHz instead of 1296 MHz).

 

Then if you installed Samba the usual way you most probably miss some important fixes, just check what the Samba and OMV installation routines here do differently.

 

My recommendation would be to purge Samba, keep /etc/init.d/armhwinfo as it is now, download softy from the link above, execute it and either install OMV (if you're running a Debian Armbian flavour) or Samba from softy. Samba without some tweaks simply sucks on ARM devices.

Thanks I will test that, I don't think it's SMB that's the issue, it does exactly the same over FTP.

 

Yup I did reboot :)

 

I will text the cpufreq now :)

Link to post
Share on other sites
1 minute ago, tkaiser said:

Funny, I forgot that I generated an OMV image for the Orange Pi Plus / Plus2 already: https://sourceforge.net/projects/openmediavault/files/Other armhf images/

Tested sudo cpufreq-set -g performance and it made no real difference.

 

I don't actually need to use Samba, i was just using it as a test platform. As i was noticing similar performance issues when using wget & ftp etc, which lead me to where i am now.

 

I will try your OMV image to see if it makes any difference.

 

Failing that, what other boards are there that will perform better than this one with Gbit ethernet?

Link to post
Share on other sites
10 minutes ago, Lee Noble said:

Spikes high then sits around 12MB/s.

 

Then as already suggested it's now time to check local storage performance. Please change to the mountpoint of the eMMC, execute the iozone call from the 'SD card performance' link above and report back. In the past the eMMC Xunlong used on these boards was able to achieve sequential write speeds of ~40MB/s. Yours seems to be limited to 12-13 MB/s instead (so once filesystem buffers are full fs performance jumps in).

 

There are a lot of other interesting boards available if you look for NAS performance:

 

Link to post
Share on other sites

Test with a single thread:

 

    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: Thu Oct  5 15:15:08 2017

    Excel chart generation enabled
    Record Size 4 kB
    File size set to 102400 kB
    Command line used: iozone -R -l 1 -u 1 -r 4k -s 100m -F /home/f1
    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.
    Min process = 1 
    Max process = 1 
    Throughput test with 1 process
    Each process writes a 102400 kByte file in 4 kByte records

    Children see throughput for  1 initial writers     =  240383.48 kB/sec
    Parent sees throughput for  1 initial writers     =   12976.74 kB/sec
    Min throughput per process             =  240383.48 kB/sec 
    Max throughput per process             =  240383.48 kB/sec
    Avg throughput per process             =  240383.48 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for  1 rewriters     =  334943.84 kB/sec
    Parent sees throughput for  1 rewriters     =   32081.80 kB/sec
    Min throughput per process             =  334943.84 kB/sec 
    Max throughput per process             =  334943.84 kB/sec
    Avg throughput per process             =  334943.84 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for  1 readers         =  487939.25 kB/sec
    Parent sees throughput for  1 readers         =  481572.10 kB/sec
    Min throughput per process             =  487939.25 kB/sec 
    Max throughput per process             =  487939.25 kB/sec
    Avg throughput per process             =  487939.25 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 re-readers     =  446510.19 kB/sec
    Parent sees throughput for 1 re-readers     =  441167.91 kB/sec
    Min throughput per process             =  446510.19 kB/sec 
    Max throughput per process             =  446510.19 kB/sec
    Avg throughput per process             =  446510.19 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 reverse readers     =   14843.72 kB/sec
    Parent sees throughput for 1 reverse readers     =   14837.98 kB/sec
    Min throughput per process             =   14843.72 kB/sec 
    Max throughput per process             =   14843.72 kB/sec
    Avg throughput per process             =   14843.72 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 stride readers     =  393369.38 kB/sec
    Parent sees throughput for 1 stride readers     =  388951.35 kB/sec
    Min throughput per process             =  393369.38 kB/sec 
    Max throughput per process             =  393369.38 kB/sec
    Avg throughput per process             =  393369.38 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 random readers     =  396329.59 kB/sec
    Parent sees throughput for 1 random readers     =  392065.17 kB/sec
    Min throughput per process             =  396329.59 kB/sec 
    Max throughput per process             =  396329.59 kB/sec
    Avg throughput per process             =  396329.59 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 mixed workload     =  396192.84 kB/sec
    Parent sees throughput for 1 mixed workload     =  391970.71 kB/sec
    Min throughput per process             =  396192.84 kB/sec 
    Max throughput per process             =  396192.84 kB/sec
    Avg throughput per process             =  396192.84 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 random writers     =  281903.44 kB/sec
    Parent sees throughput for 1 random writers     =   31672.63 kB/sec
    Min throughput per process             =  281903.44 kB/sec 
    Max throughput per process             =  281903.44 kB/sec
    Avg throughput per process             =  281903.44 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 pwrite writers     =  179351.41 kB/sec
    Parent sees throughput for 1 pwrite writers     =   12650.54 kB/sec
    Min throughput per process             =  179351.41 kB/sec 
    Max throughput per process             =  179351.41 kB/sec
    Avg throughput per process             =  179351.41 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for 1 pread readers     =  484868.84 kB/sec
    Parent sees throughput for 1 pread readers     =  478578.39 kB/sec
    Min throughput per process             =  484868.84 kB/sec 
    Max throughput per process             =  484868.84 kB/sec
    Avg throughput per process             =  484868.84 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for  1 fwriters     =  297088.16 kB/sec
    Parent sees throughput for  1 fwriters         =   33345.74 kB/sec
    Min throughput per process             =  297088.16 kB/sec 
    Max throughput per process             =  297088.16 kB/sec
    Avg throughput per process             =  297088.16 kB/sec
    Min xfer                     =  102400.00 kB

    Children see throughput for  1 freaders     =  432688.31 kB/sec
    Parent sees throughput for  1 freaders         =  427914.81 kB/sec
    Min throughput per process             =  432688.31 kB/sec 
    Max throughput per process             =  432688.31 kB/sec
    Avg throughput per process             =  432688.31 kB/sec
    Min xfer                     =  102400.00 kB

"Throughput report Y-axis is type of test X-axis is number of processes"
"Record size = 4 kBytes "
"Output is in kBytes/sec"

"  Initial write "  240383.48 

"        Rewrite "  334943.84 

"           Read "  487939.25 

"        Re-read "  446510.19 

"   Reverse Read "   14843.72 

"    Stride read "  393369.38 

"    Random read "  396329.59 

" Mixed workload "  396192.84 

"   Random write "  281903.44 

"         Pwrite "  179351.41 

"          Pread "  484868.84 

"         Fwrite "  297088.16 

"          Fread "  432688.31 


iozone test complete.
 

Link to post
Share on other sites

with 2 threads

 

invalid options: not enough filenames for 2 streams
    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: Thu Oct  5 15:23:35 2017

    Excel chart generation enabled
    Record Size 4 kB
    File size set to 512000 kB
    Command line used: iozone -R -l 2 -u 2 -r 4k -s 500m -F /home/f1 /home/f2
    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.
    Min process = 2 
    Max process = 2 
    Throughput test with 2 processes
    Each process writes a 512000 kByte file in 4 kByte records

    Children see throughput for  2 initial writers     =   13913.68 kB/sec
    Parent sees throughput for  2 initial writers     =   10150.19 kB/sec
    Min throughput per process             =    5408.52 kB/sec 
    Max throughput per process             =    8505.16 kB/sec
    Avg throughput per process             =    6956.84 kB/sec
    Min xfer                     =  334620.00 kB

    Children see throughput for  2 rewriters     =   13973.65 kB/sec
    Parent sees throughput for  2 rewriters     =   12338.59 kB/sec
    Min throughput per process             =    6985.27 kB/sec 
    Max throughput per process             =    6988.38 kB/sec
    Avg throughput per process             =    6986.82 kB/sec
    Min xfer                     =  511772.00 kB

    Children see throughput for  2 readers         =  956120.00 kB/sec
    Parent sees throughput for  2 readers         =  953373.61 kB/sec
    Min throughput per process             =  477813.00 kB/sec 
    Max throughput per process             =  478307.00 kB/sec
    Avg throughput per process             =  478060.00 kB/sec
    Min xfer                     =  511476.00 kB

    Children see throughput for 2 re-readers     =  882834.72 kB/sec
    Parent sees throughput for 2 re-readers     =  880518.77 kB/sec
    Min throughput per process             =  441303.53 kB/sec 
    Max throughput per process             =  441531.19 kB/sec
    Avg throughput per process             =  441417.36 kB/sec
    Min xfer                     =  511752.00 kB

    Children see throughput for 2 reverse readers     =  829007.16 kB/sec
    Parent sees throughput for 2 reverse readers     =  826988.76 kB/sec
    Min throughput per process             =  414120.91 kB/sec 
    Max throughput per process             =  414886.25 kB/sec
    Avg throughput per process             =  414503.58 kB/sec
    Min xfer                     =  511072.00 kB

    Children see throughput for 2 stride readers     =  795618.59 kB/sec
    Parent sees throughput for 2 stride readers     =  793736.37 kB/sec
    Min throughput per process             =  397330.00 kB/sec 
    Max throughput per process             =  398288.59 kB/sec
    Avg throughput per process             =  397809.30 kB/sec
    Min xfer                     =  510788.00 kB

    Children see throughput for 2 random readers     =  762159.50 kB/sec
    Parent sees throughput for 2 random readers     =  760174.56 kB/sec
    Min throughput per process             =  380603.88 kB/sec 
    Max throughput per process             =  381555.62 kB/sec
    Avg throughput per process             =  381079.75 kB/sec
    Min xfer                     =  510732.00 kB

    Children see throughput for 2 mixed workload     =  464711.15 kB/sec
    Parent sees throughput for 2 mixed workload     =    7138.52 kB/sec
    Min throughput per process             =   80552.02 kB/sec 
    Max throughput per process             =  384159.12 kB/sec
    Avg throughput per process             =  232355.57 kB/sec
    Min xfer                     =  110456.00 kB

    Children see throughput for 2 random writers     =    5875.95 kB/sec
    Parent sees throughput for 2 random writers     =    5127.23 kB/sec
    Min throughput per process             =    2906.99 kB/sec 
    Max throughput per process             =    2968.96 kB/sec
    Avg throughput per process             =    2937.98 kB/sec
    Min xfer                     =  501372.00 kB

    Children see throughput for 2 pwrite writers     =   13468.86 kB/sec
    Parent sees throughput for 2 pwrite writers     =   11874.78 kB/sec
    Min throughput per process             =    6405.37 kB/sec 
    Max throughput per process             =    7063.49 kB/sec
    Avg throughput per process             =    6734.43 kB/sec
    Min xfer                     =  482176.00 kB

    Children see throughput for 2 pread readers     =  987995.38 kB/sec
    Parent sees throughput for 2 pread readers     =  984986.73 kB/sec
    Min throughput per process             =  493711.94 kB/sec 
    Max throughput per process             =  494283.44 kB/sec
    Avg throughput per process             =  493997.69 kB/sec
    Min xfer                     =  511412.00 kB

    Children see throughput for  2 fwriters     =   13942.23 kB/sec
    Parent sees throughput for  2 fwriters         =   12325.09 kB/sec
    Min throughput per process             =    6967.28 kB/sec 
    Max throughput per process             =    6974.95 kB/sec
    Avg throughput per process             =    6971.11 kB/sec
    Min xfer                     =  512000.00 kB

    Children see throughput for  2 freaders     =  869964.94 kB/sec
    Parent sees throughput for  2 freaders         =  867891.46 kB/sec
    Min throughput per process             =  434929.25 kB/sec 
    Max throughput per process             =  435035.69 kB/sec
    Avg throughput per process             =  434982.47 kB/sec
    Min xfer                     =  512000.00 kB

"Throughput report Y-axis is type of test X-axis is number of processes"
"Record size = 4 kBytes "
"Output is in kBytes/sec"

"  Initial write "   13913.68 

"        Rewrite "   13973.65 

"           Read "  956120.00 

"        Re-read "  882834.72 

"   Reverse Read "  829007.16 

"    Stride read "  795618.59 

"    Random read "  762159.50 

" Mixed workload "  464711.15 

"   Random write "    5875.95 

"         Pwrite "   13468.86 

"          Pread "  987995.38 

"         Fwrite "   13942.23 

"          Fread "  869964.94 


iozone test complete.
 

Link to post
Share on other sites
1 minute ago, tkaiser said:

Could you please also provide results from


cd /home
iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 1024k -r 16384k -i 0 -i 1 -i 2
sudo armbianmonitor -u

(assuming /home is the eMMC mountpoint?)

Yes home is the eMMC mountpoint, i have no other storage attached.

 

I used the nand script to copy your image to the eMMC.

 

I will test now :)

 

Link to post
Share on other sites

Further output as requested.

 

root@orangepiplus:/home# sudo iozone -e -I -a -s 100M -r 4k -r 16k -r 512k -r 10                                                         24k -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: Thu Oct  5 15:48:18 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     4290     4488    15221    15253    13031     4113                                                           
          102400      16    11236    10293    39564    39601    35732     9434                                                           
          102400     512    12960    11991    76139    76070    75430    11921                                                           
          102400    1024    12069    12402    76525    76502    71900    12284                                                           
          102400   16384    12492    12149    80234    80223    80186    12458                                                           

iozone test complete.
 

http://sprunge.us/SQAf

 

 

Link to post
Share on other sites
4 minutes ago, Lee Noble said:

 

Crap, mmc info is missing there (please search for mmc2:0001 here to get the idea how it should look like), seems I've to adjust armhwinfo for latest mainline kernel. At least it's confirmed that you're testing on ext4 (no compression) and it's as expected: the eMMC now used shows dog slow write performance (12.5MB/s max). Xunlong switched to another eMMC variant in the meantime :(

 

The only good news: random IO is somewhat ok-ish so as soon as you use the eMMC for the OS and attach an USB2 disk (avoiding the crappy GL830 'SATA port') to store data you should be able to get ~37 MB/s now and maybe ~40MB/s in a few weeks (when Armbian provides THS/DVFS for H3 boards running mainline kernel)

Link to post
Share on other sites
1 minute ago, tkaiser said:

 

Crap, mmc info is missing there (please search for mmc2:0001 here to get the idea how it should look like), seems I've to adjust armhwinfo for latest mainline kernel. At least it's confirmed that you're testing on ext4 (no compression) and it's as expected: the eMMC now used shows dog slow write performance (12.5MB/s max). Xunlong switched to another eMMC variant in the meantime :(

 

The only good news: random IO is somewhat ok-ish so as soon as you use the eMMC for the OS and attach an USB2 disk (avoiding the crappy GL830 'SATA port') to store data you should be able to get ~37 MB/s now and maybe ~40MB/s in a few weeks (when Armbian provides THS/DVFS for H3 boards running mainline kernel)

Thanks again for all your help and really sorry for wasting time as it appears to be a hardware limitation - I should have spotted this earlier.

Link to post
Share on other sites
32 minutes ago, Lee Noble said:

Samsung klmag2wepd-b031

sadface.JPG.a53576862e7ade2960818f621a2aaa38.JPG

 

Well, on the Banana Pis you get eMMC with sequential write 'performance' as low as 6MB/s, on FriendlyELEC boards with eMMC it's 7.5MB/s, with Xunlong it was 40MB/s a while back (even on the little boards like PC Plus they used KLMAG2GEND-B031) but it seems the insanely rised flash memory costs within this year led them to exchange the eMMC with slower parts now :(

 

Edit: In fact KLMAG2WEPD-B031 is the type of eMMC the NanoPi also use but since there it's the 8GB variant it's as slow as 7.5MB/s.

Link to post
Share on other sites
Guest
This topic is now closed to further replies.