ODROID XU4 performance fixes

This commit is contained in:
Thomas Kaiser 2017-04-11 19:18:11 +02:00
parent 00ed67e03d
commit ebd555081e
2 changed files with 15 additions and 4 deletions

View File

@ -21,6 +21,7 @@ collect_information() {
ARCH=$(lscpu | awk '/Architecture/ {print $2}')
HARDWARE=$(awk '/Hardware/ {print $3}' </proc/cpuinfo)
[ "X${HARDWARE}" = "XAllwinner" ] && HARDWARE=$(awk '/Hardware/ {print $4}' </proc/cpuinfo)
[ "X${HARDWARE}" = "XSAMSUNG" ] && HARDWARE=$(awk '/Hardware/ {print $4}' </proc/cpuinfo)
KERNELID=$(uname -r)
} # collect_information
@ -77,7 +78,7 @@ prepare_board() {
done
echo 3 >/proc/irq/$(awk -F":" "/usb1/ {print \$1}" </proc/interrupts | sed 's/\ //g')/smp_affinity_list
;;
ODROID-XU3) # ODROID XU4
ODROID-XU3|EXYNOS) # ODROID XU3/XU4
echo 2 >/proc/irq/$(awk -F":" "/usb2/ {print \$1}" </proc/interrupts | sed 's/\ //g')/smp_affinity
echo 4 >/proc/irq/$(awk -F":" "/usb3/ {print \$1}" </proc/interrupts | sed 's/\ //g')/smp_affinity
echo 8 >/proc/irq/$(awk -F":" "/usb5/ {print \$1}" </proc/interrupts | sed 's/\ //g')/smp_affinity
@ -86,6 +87,9 @@ prepare_board() {
for i in $(awk -F':' '/11800000.mali/{print $1}' /proc/interrupts); do
echo 64 >/proc/irq/$i/smp_affinity
done
echo 7 >/sys/class/net/eth0/queues/rx-0/rps_cpus
echo 32768 >/proc/sys/net/core/rps_sock_flow_entries
echo 32768 >/sys/class/net/eth0/queues/rx-0/rps_flow_cnt
;;
sun4i|sun5i) # only one core, nothing to improve
:

View File

@ -123,12 +123,19 @@ InstallOpenMediaVault() {
echo ondemand >/sys/devices/system/cpu/cpu0/cpufreq/scaling_governor \
sleep 0.1 \
echo 1 >/sys/devices/system/cpu/cpufreq/ondemand/io_is_busy \
echo 1 >/sys/devices/system/cpu/cpu0/cpufreq/ondemand/io_is_busy \
echo 1 >/sys/devices/system/cpu/cpu4/cpufreq/ondemand/io_is_busy \
echo 25 >/sys/devices/system/cpu/cpufreq/ondemand/up_threshold \
echo 25 >/sys/devices/system/cpu/cpu0/cpufreq/ondemand/up_threshold \
echo 25 >/sys/devices/system/cpu/cpu4/cpufreq/ondemand/up_threshold \
echo 10 >/sys/devices/system/cpu/cpufreq/ondemand/sampling_down_factor \
echo 10 >/sys/devices/system/cpu/cpu0/cpufreq/ondemand/sampling_down_factor \
echo 10 >/sys/devices/system/cpu/cpu4/cpufreq/ondemand/sampling_down_factor \
' /etc/rc.local
echo '* * * * * root for i in `pgrep "smbd|afpd|cnid"` ; do ionice -c1 -p $i ; done >/dev/null 2>&1' \
>/etc/cron.d/make_samba_and_netatalk_faster
chmod 600 /etc/cron.d/make_samba_and_netatalk_faster
[ "${BOARD}" = "odroidxu4" ] && XU4_HMP_Fix='; taskset -c -p 4-7 $i '
echo "* * * * * root for i in \`pgrep \"ftpd|nfsiod|smbd|afpd|cnid\"\` ; do ionice -c1 -p \$i ${XU4_HMP_Fix}; done >/dev/null 2>&1" \
>/etc/cron.d/make_nas_processes_faster
chmod 600 /etc/cron.d/make_nas_processes_faster
# add SATA port multiplier hint if appropriate
[ "${LINUXFAMILY}" = "sunxi" ] && \