init.hardware.rc: schedtune for boottime

Set stune.boost to 100 to boost process to big cores and prefer_idle to
1 to spread tasks. This saves ~370ms from kernel boot to boot_complete.

Before CL:
BootComplete                  : 10.046  0.067631

Post CL:
BootComplete                  : 9.6713  0.083226

Test: boottime
Bug: 80345258
Change-Id: I29159ba3102a23f302ddc2a2747879fd1ca39c27
This commit is contained in:
Wei Wang
2019-04-17 21:31:06 -07:00
parent 47351c6338
commit 4ea1c03f74

View File

@@ -17,6 +17,10 @@
import /vendor/etc/init/hw/init.${ro.hardware}.usb.rc
on charger
# Set runtime stune value
write /dev/stune/schedtune.prefer_idle 0
write /dev/stune/schedtune.boost 0
# Offline CPUs
write /sys/devices/system/cpu/cpu2/online 0
write /sys/devices/system/cpu/cpu3/online 0
write /sys/devices/system/cpu/cpu4/online 0
@@ -80,6 +84,10 @@ on init
write /sys/devices/system/cpu/cpufreq/policy4/schedutil/up_rate_limit_us 500
write /sys/devices/system/cpu/cpufreq/policy4/schedutil/down_rate_limit_us 20000
# Set boottime stune value
write /dev/stune/schedtune.prefer_idle 1
write /dev/stune/schedtune.boost 100
# set default schedTune value for foreground/top-app
write /dev/stune/foreground/schedtune.prefer_idle 1
write /dev/stune/top-app/schedtune.boost 10
@@ -546,6 +554,10 @@ on property:sys.post_boot.parsed=1
setprop vendor.powerhal.init 1
on property:sys.boot_completed=1
# Set runtime stune value
write /dev/stune/schedtune.prefer_idle 0
write /dev/stune/schedtune.boost 0
# Enable power setting and set sys.post_boot.parsed to 1
start vendor.power_sh