Boost SF when interaction hint is active.

We have seen cases SF main thread running longer occasionally which may
run in danger of missing frames. This CL lifts cpufreq for SF when touch
boost is active to compensate the sudden jump of its cpu demand.

Bug: 192099706
Test: Build
Signed-off-by: Wei Wang <wvw@google.com>
Change-Id: I49b2d589249f60a38eab907afbadfbcfdd233d1c
This commit is contained in:
Wei Wang 2021-07-12 23:35:08 -07:00
parent d1a9bedcfe
commit 30393266aa
4 changed files with 25 additions and 4 deletions

View file

@ -37,6 +37,8 @@ on init
chown system system /sys/kernel/vendor_sched/set_task_group_sysbg
chown system system /sys/kernel/vendor_sched/set_task_group_ta
chown system system /sys/kernel/vendor_sched/set_task_group_rt
chown system system /sys/kernel/vendor_sched/set_task_group_sf
chown system system /sys/kernel/vendor_sched/set_task_group_dex2oat
chown system system /sys/kernel/vendor_sched/clear_group
chmod 0220 /sys/kernel/vendor_sched/set_task_group_bg
@ -47,6 +49,8 @@ on init
chmod 0220 /sys/kernel/vendor_sched/set_task_group_sysbg
chmod 0220 /sys/kernel/vendor_sched/set_task_group_ta
chmod 0220 /sys/kernel/vendor_sched/set_task_group_rt
chmod 0220 /sys/kernel/vendor_sched/set_task_group_sf
chmod 0220 /sys/kernel/vendor_sched/set_task_group_dex2oat
chmod 0220 /sys/kernel/vendor_sched/clear_group
wait /dev/block/platform/${ro.boot.boot_devices}
@ -677,8 +681,11 @@ on property:sys.boot_completed=1
write /sys/kernel/vendor_sched/bg_group_throttle 512
# Skip little core for RT vendor_grp
write /sys/kernel/vendor_sched/rt_uclamp_min 125
# Setup groups for SF (RT used for SF RE, SF used for SF main)
write /sys/kernel/vendor_sched/rt_uclamp_min 12
write /sys/kernel/vendor_sched/rt_prefer_idle 1
write /sys/kernel/vendor_sched/sf_uclamp_min 30
write /sys/kernel/vendor_sched/sf_prefer_idle 1
# Setup cpu.shares to throttle background group at 5%
write /dev/cpuctl/background/cpu.shares 1024

View file

@ -641,7 +641,6 @@ PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.has_HDR_display=true
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.use_color_management=true
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.protected_contents=true
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.display_update_imminent_timeout_ms=50
PRODUCT_DEFAULT_PROPERTY_OVERRIDES += ro.surface_flinger.uclamp.min=30
# force to blend in P3 mode
PRODUCT_PROPERTY_OVERRIDES += \

View file

@ -126,6 +126,15 @@
"DefaultIndex": 1,
"ResetOnInit": true
},
{
"Name": "SFUClampBoost",
"Path": "/sys/kernel/vendor_sched/sf_uclamp_min",
"Values": [
"65",
"30"
],
"ResetOnInit": true
},
{
"Name": "MLUclampBoost",
"Path": "/sys/kernel/vendor_sched/nnapi_uclamp_min",
@ -331,6 +340,12 @@
"Type": "EndHint",
"Value": "DISABLE_TA_BOOST"
},
{
"PowerHint": "INTERACTION",
"Node": "SFUClampBoost",
"Duration": 5000,
"Value": "65"
},
{
"PowerHint": "DEVICE_IDLE",
"Node": "F2fsRecessModeEnable",

View file

@ -191,7 +191,7 @@
"Name": "WriteFile",
"Params":
{
"FilePath": "/sys/kernel/vendor_sched/set_task_group_fg",
"FilePath": "/sys/kernel/vendor_sched/set_task_group_sf",
"Value": "<pid>",
"LogFailures": "false"
}