Linux-Bench - Qualcomm Dragonboard 410c

Discussion in 'Linux-Bench Results and Discussion' started by Patrick, Mar 9, 2016.

  1. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    #1
    Last edited: Mar 10, 2016
  2. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    Run #1 completed: Linux-Bench Linux CPU Benchmarks by ServeTheHome and ServeThe.Biz

    Looks like we got results for UnixBench (partial), c-ray, OpenSSL and 7-zip.

    • NAMD, NPB I think we may need to re-compile for ARM - @Chuckleb I may need your help since you were the guru on getting this done for x86
    • Redis looks like the same bug we had issues with on the x86 side and Ubuntu 15.04/ 15.10
    • Sysbench appears not to be in the Linaro Debian release. This one may be the low hanging fruit to get working
    Code:
    root@linaro-alip:~# apt-get install sysbench -y
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    The following extra packages will be installed:
      libmysqlclient18 mysql-common
    The following NEW packages will be installed:
      libmysqlclient18 mysql-common sysbench
    0 upgraded, 3 newly installed, 0 to remove and 18 not upgraded.
    Need to get 0 B/762 kB of archives.
    After this operation, 3653 kB of additional disk space will be used.
    Selecting previously unselected package mysql-common.
    dpkg: unrecoverable fatal error, aborting:
     files list file for package `linux-headers-4.4.0-linaro-lt-qcom' contains empty filename
    E: Sub-process /usr/bin/dpkg returned an error code (2)
    
    • Hardinfo - apt-get install hardinfo does not work on the arm64 Linaro branch.
    Code:
    root@linaro-alip:~# apt-get install hardinfo
    Reading package lists... Done
    Building dependency tree
    Reading state information... Done
    E: Unable to locate package hardinfo
    
    • STREAM - likely need a few tweaks to get working
    • UnixBench - I think this is close to working fully so it may be something to work on soon
     
    #2
  3. Chuckleb

    Chuckleb Moderator

    Joined:
    Mar 5, 2013
    Messages:
    1,017
    Likes Received:
    330
    @Patrick: I may have time this weekend to work on this. Let me get caught up.
     
    #3
  4. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    OK the issue that was:
    Code:
    dpkg: unrecoverable fatal error, aborting:
    files list file for package `linux-headers-4.4.0-linaro-lt-qcom' contains empty filename
    
    I managed to fix by:
    Code:
    cd /var/lib/dpkg/info
    rm linux-headers-4.4.0-linaro-lt-qcom*
    apt-get update
    
    Update - looks like we have sysbench "working"
    Code:
    sysbench 0.4.12:  multi-threaded system evaluation benchmark
    
    Running the test with following options:
    Number of threads: 4
    
    Doing CPU performance benchmark
    
    Threads started!
    Done.
    
    Maximum prime number checked in CPU test: 300000
    
    
    Test execution summary:
        total time:                          298.1018s
        total number of events:              10000
        total time taken by event execution: 1192.3072
        per-request statistics:
             min:                                118.96ms
             avg:                                119.23ms
             max:                                249.07ms
             approx.  95 percentile:             119.39ms
    
    Threads fairness:
        events (avg/stddev):           2500.0000/3.67
        execution time (avg/stddev):   298.0768/0.02
    
    
    @Chuckleb no worries. I think this is going to take a bit of work.
     
    #4
    Last edited: Mar 10, 2016
  5. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    PyKCB.py
    Code:
    scripts/kconfig/conf  --silentoldconfig Kconfig
    .config:8204:warning: symbol value 'm' invalid for KVM
    *
    * Restart config...
    *
    *
    * Platform selection
    *
    Broadcom iProc SoC Family (ARCH_BCM_IPROC) [N/y/?] (NEW) aborted!
    
    Console input/output is redirected. Run 'make oldconfig' to update configuration.
    
    scripts/kconfig/Makefile:37: recipe for target 'silentoldconfig' failed
    make[2]: *** [silentoldconfig] Error 1
    Makefile:531: recipe for target 'silentoldconfig' failed
    make[1]: *** [silentoldconfig] Error 2
    make: *** No rule to make target 'include/config/auto.conf', needed by 'include/config/kernel.release'.  Stop.
    
    Interesting.
     

    Attached Files:

    #5
  6. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    Run #2 working with Sysbench
     
    #6
  7. mstone

    mstone Active Member

    Joined:
    Mar 11, 2015
    Messages:
    505
    Likes Received:
    117
    I don't think the kernel compile part will ever work in a meaningful way across architectures.

    What's the problem with STREAM? That code runs on just about anything, and seems to work fine in emulation.
     
    #7
  8. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    I am going to step through STREAM and see what the issue is:
    Code:
    /dev/fd/62: line 360: ./stream-me: No such file or directory
     
    #8
  9. mstone

    mstone Active Member

    Joined:
    Mar 11, 2015
    Messages:
    505
    Likes Received:
    117
    ah, it's the way it's compiled: -march=native isn't valid on aarch64 on gcc 5.
     
    #9
  10. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    OK STREAM will work we just need to change a line in the compile part for ARM:
    Code:
    -------------------------------------------------------------
    STREAM version $Revision: 5.10 $
    -------------------------------------------------------------
    This system uses 8 bytes per array element.
    -------------------------------------------------------------
    Array size = 10000000 (elements), Offset = 0 (elements)
    Memory per array = 76.3 MiB (= 0.1 GiB).
    Total memory required = 228.9 MiB (= 0.2 GiB).
    Each kernel will be executed 10 times.
    The *best* time for each kernel (excluding the first iteration)
    will be used to compute the reported bandwidth.
    -------------------------------------------------------------
    Number of Threads requested = 4
    Number of Threads counted = 4
    -------------------------------------------------------------
    Your clock granularity/precision appears to be 1 microseconds.
    Each test below will take on the order of 61655 microseconds.
       (= 61655 clock ticks)
    Increase the size of the arrays if this shows that
    you are not getting at least 20 clock ticks per test.
    -------------------------------------------------------------
    WARNING -- The above is only a rough guideline.
    For best results, please be sure you know the
    precision of your system timer.
    -------------------------------------------------------------
    Function    Best Rate MB/s  Avg time     Min time     Max time
    Copy:            2218.5     0.072932     0.072120     0.073203
    Scale:           3296.8     0.048972     0.048532     0.050221
    Add:             3342.7     0.071880     0.071799     0.072051
    Triad:           3294.0     0.073196     0.072860     0.073849
    -------------------------------------------------------------
    Solution Validates: avg error less than 1.000000e-13 on all three arrays
    -------------------------------------------------------------
    
    Also a bit interesting, if you do not use the -fopenmp flag on the ARM A53 platform performance goes way down:
    Code:
    -------------------------------------------------------------
    Function    Best Rate MB/s  Avg time     Min time     Max time
    Copy:            1937.8     0.083227     0.082567     0.083963
    Scale:           2757.6     0.061091     0.058021     0.064225
    Add:             2494.8     0.096385     0.096200     0.096802
    Triad:           2355.6     0.102100     0.101883     0.102422
    -------------------------------------------------------------
    Solution Validates: avg error less than 1.000000e-13 on all three arrays
    -------------------------------------------------------------
    
    Ha! @mstone I think we found the same thing! I was testing the -fopenmp v. not having it on the ARM side while you were replying. That is an easy fix.
     
    #10
  11. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    Redis issue:
    Code:
    
    2016-03-10 19:14:43 (1.34 MB/s) - ‘6379.conf’ saved [29602/29602]
    
    Failed to start redis_6379.service: Unit redis_6379.service failed to load: No such file or directory.
    
    At least that is something to work with.
     
    #11
  12. mstone

    mstone Active Member

    Joined:
    Mar 11, 2015
    Messages:
    505
    Likes Received:
    117
    Single vs multithreaded. I'd actually argue that in general the benchmark should run both versions to get a better idea of the system's balance. E.g., a new skylake i3 can trounce an e3 in single-threaded memory bandwidth, but basically maxes out with the one thread and doesn't scale as you add more whereas the e3 keeps increasing.
     
    #12
  13. mstone

    mstone Active Member

    Joined:
    Mar 11, 2015
    Messages:
    505
    Likes Received:
    117
    #13
    Patrick likes this.
  14. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    #14
  15. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    So interesting note, the benchmark did not report results for 7zip but when I ran through it manually:
    upload_2016-3-11_5-35-42.png

    I also think I have hardinfo working on ARM now.
    upload_2016-3-11_5-36-7.png
     
    #15
  16. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    I would say significant progress: Linux-Bench Linux CPU Benchmarks by ServeTheHome and ServeThe.Biz

    Here is the current status:
    • CPU/ motherboard detection: Core count/ thread detection works but the CPUID and such we may need to re-think how to parse.
    • c-ray: works
    • 7zip: works
    • hardinfo: works
    • openssl: works
    • stream: works
    • sysbench (CPU): works
    • UnixBench: running single threaded only - testing a fix now (not using fix limitation patch)
    • NAMD: need to recompile ARMv8 binaries
    • NPB: need to recompile ARMv8 binaries
    • redis: service not starting
    This is certainly far from perfect, but looking good. I have this on a local file I have been editing but will get something live when it gets a bit more mature.
     
    #16
  17. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    #17
  18. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    npb status: works!!!!!

    upload_2016-3-22_21-48-37.png
     
    #18
  19. Patrick

    Patrick Administrator
    Staff Member

    Joined:
    Dec 21, 2010
    Messages:
    11,496
    Likes Received:
    4,440
    #19
Similar Threads: Linux-Bench Qualcomm
Forum Title Date
Linux-Bench Results and Discussion Dockerizing Linux-Bench Q2 2017 Jun 25, 2017
Linux-Bench Results and Discussion Linux-Bench: suggestion Mar 1, 2017
Linux-Bench Results and Discussion 4x Intel Xeon E7-8890 V4 Linux-Bench Sep 16, 2016
Linux-Bench Results and Discussion Linux-Bench Error Jun 15, 2016
Linux-Bench Results and Discussion Linux-Bench beta moving! Mar 5, 2016

Share This Page