====== Benchmark of XU4 with Active Cooler and XU4Q with Passive Cooler ====== This wiki page shows benchmark test results to analysis and compare their system performance\\ with ODROID-XU4 and ODROID-XU4Q that equips with a passive cooler.\\ {{:en:201704250351126731.jpg?423|}} * [[en:xu4_benchmark_xu4_xu4q&#benchmark_1_-_thermal_and_performance_using_sysbench| 1. Thermal and Frequency Performance Comparison]] * [[en:xu4_benchmark_xu4_xu4q&#benchmark_2_-_android_antutu | 2. AnTuTu Performance Comparison ]] * [[en:xu4_benchmark_xu4_xu4q&#benchmark_3_-_kernel_build_time| 3. Kernel Build Time Performance Comparison]] We've tested three categories of benchmarking utilities and here is a brief result for each test cases.\\ **sysbench**\\ - to investigate and compare thermal/cpu frequency performance\\ - Sysbench running time increased by 16% and 6% for each cases of cpu max 2GHz and 1.8GHz\\ **AnTuTu**\\ - for examining a variety of categories performance\\ - The decreasing score value of XU4Q from XU4 is just 2% \\ **Kernel build**\\ - to check the hardest stress case\\ - About 5m 17s increase of the total execution time (20%)\\ Except the hardest case like kernel build, the differences are under just 10% or lower.\\ ==== [ Benchmark (1) - Thermal and Frequency Performance Comparison ]==== === Environment and Instructions === * **sysbench** 100,000 iterations # sysbench --test=cpu --cpu-max-prime=100000 --num-threads=8 run * setting the max cpu frequency of CPU4-7 # echo 1800000 > /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq # cat /sys/devices/system/cpu/cpu4/cpufreq/scaling_max_freq 1800000 * All of 8 cores are ON * Script #!/bin/sh echo "Temp, FreqCPU0, FreqCPU4, FreqCPU5, Freq6CPU, FreqCPU7 " while true : do t=`cat /sys/devices/virtual/thermal/thermal_zone0/temp` t1=$(( $t/1000)) f0=`cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq` f0_r=$(( $f0/100000)) f4=`cat /sys/devices/system/cpu/cpu4/cpufreq/scaling_cur_freq` f4_r=$(( $f4/100000)) f5=`cat /sys/devices/system/cpu/cpu5/cpufreq/scaling_cur_freq` f5_r=$(( $f5/100000)) f6=`cat /sys/devices/system/cpu/cpu6/cpufreq/scaling_cur_freq` f6_r=$(( $f6/100000)) f7=`cat /sys/devices/system/cpu/cpu7/cpufreq/scaling_cur_freq` f7_r=$(( $f7/100000)) echo $t1, $f0_r, $f4_r, $f5_r, $f6_r, $f7_r sleep 2 === Test Case 1 - Max CPU Frequency 2.0GHz case === Here is sysbench test result in case of max cpu frequency 2.0GHz.\\ * Running Time : about 16% increase - XU4Q / XU4 = 420 / 362 = **116%** * Average CPU Frequency : about 22% loss - XU4Q / XU4 = 1.48 / 1.89 = **78%** {{:en:1_xu4_max_2ghz.png?700}}{{:en:2_xu4q_max_2ghz.png?700}} === Test Case 2 - Max CPU Frequency 1.8GHz case === * Running Time : about 6% increase - XU4Q / XU4 = 392 / 368 = **106%** * Average CPU Frequency : about 11% loss - XU4Q / XU4 = 1.61 / 1.8 = **89%** {{:en:3_xu4_max_1_8ghz.png?700}}{{:en:4_xu4q_max_1_8ghz.png?700}} === Test Case 3 - Finding the threshold not to drop under max frequency === {{:en:5_xu4q_max_1_2ghz.png?700}} ==== [ Benchmark (2) - Android AnTuTu ] ==== Here is Android AnTuTu benchmark result for examining common and a variety of categories' score. === Environment === ** OS - LineageOS-14.1 Android 7.1.1 Nougat \\ Resolution - 1280x720 \\ The benchmark has been tested at twice. ** === Result === ** ODROID-XU4 **\\ {{:en:screen-xu4_1.png?direct&600|}}\\ \\ ** ODROID-XU4Q **\\ {{:en:screen-xu4q_1.png?direct&600|}}\\ \\ === Detail score === ^ Category ^ XU4 ^ XU4Q ^ % ^ | 3D | 9823 | 9843.5 | 0.21 | | Marooned | 6337 | 6347 | 0.16 | | Garden | 3486 | 3496.5 | 0.30 | | UX | 21681 | 21443 | -1.11 | | Data secure | 4976.5 | 4975 | -0.03 | | Data process | 3517.5 | 3496.5 | -0.60 | | Strategy games | 5677.5 | 5751.5 | 1.29 | | Image process | 4787.5 | 4505 | -6.27 | | I/O performance | 2722 | 2715 | -0.26 | | CPU | 23933.5 | 22774 | -5.09 | | Mathematics | 5245 | 5248.5 | 0.07 | | Common use | 7798 | 7621 | -2.32 | | Multi-Core | 10890.5 | 9904.5 | -9.96 | | RAM | 5791 | 5543 | -4.47 | | Result | 61228.5 | 59603.5 | -2.73 | \\ {{:en:xu4vsxu4q_antutu.png?direct&700|}} {{:en:xu4vxxu4q_percentage.png?direct&600|}} ==== [ Benchmark (3) - Kernel Build Time ] ==== To check the hardest stress case, we did put kernel build test on XU4 and XU4Q.\\ The test instruction is as following. $ make odroidxu3_defconfig $ time make -j8 Based on the result, in this case, the kernel build time on XU4Q gets **around 20%** increase from XU4's one. ^ time ^ XU4 ^ XU4Q ^ | real | 25m 1.43s | 30m 18.36s | | user | 149m 58.72s | 184m 44.36s | | sys | 22m 54.96s | 27m 21.55s |