Relax SurfaceFlinger cpuset and adding uclamp.min for RenderEngine

SurfaceFlinger IPC improved with mid and big cores, relaxing cpuset will
help improve its efficiency. For render engine, we set uclamp.min to
skip scheduling on little cores.

FWIW, we let the RT scheduler figure out what is good for perf/power.

Bug: 170507315
Bug: 191054286
Test: Build and boot
Signed-off-by: Wei Wang <wvw@google.com>
Change-Id: I880cf549e33a3a2f629e8260366c4ce8c34c3ae6
This commit is contained in:
Wei Wang 2021-06-11 15:27:01 -07:00
parent e81847c70d
commit 2fee52bbf5
2 changed files with 47 additions and 0 deletions

View file

@ -664,6 +664,9 @@ 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 cpu.shares to throttle background group at 5%
write /dev/cpuctl/background/cpu.shares 1024
write /dev/cpuctl/system/cpu.shares 20480

View file

@ -175,6 +175,50 @@
}
}
]
},
{
"Name": "SFMainPolicy",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "top-app"
}
},
{
"Name": "WriteFile",
"Params":
{
"FilePath": "/sys/kernel/vendor_sched/set_task_group_fg",
"Value": "<pid>",
"LogFailures": "false"
}
}
]
},
{
"Name": "SFRenderEnginePolicy",
"Actions": [
{
"Name": "JoinCgroup",
"Params":
{
"Controller": "cpuset",
"Path": "top-app"
}
},
{
"Name": "WriteFile",
"Params":
{
"FilePath": "/sys/kernel/vendor_sched/set_task_group_rt",
"Value": "<pid>",
"LogFailures": "false"
}
}
]
}
]
}