From 0915155b03967efe7c841b0aee2f98bf37c02edc Mon Sep 17 00:00:00 2001 From: Jake Weinstein Date: Fri, 22 Jul 2022 04:32:04 -0500 Subject: common: perf: copy task_profiles from system/core for 5.4 The reason Qualcomm maintains their own copy of task_profiles for lahaina is that API 30 does not support UClamp. However, the current task_profiles for API 31 and higher does support UClamp. Qualcomm's modifications such as I/O CGroups and audio CPUSet are already integrated in the CLO system/core task_profiles, so we can use that instead of maintaining our own. Change-Id: Ibd3378976cf6f761eefdec3a1051ba80fa1e247e --- perf/Android.bp | 7 - perf/qti-perf.mk | 11 +- perf/task_profiles.json | 592 ------------------------------------------------ 3 files changed, 6 insertions(+), 604 deletions(-) delete mode 100644 perf/task_profiles.json diff --git a/perf/Android.bp b/perf/Android.bp index 14049af..fd5a6e9 100644 --- a/perf/Android.bp +++ b/perf/Android.bp @@ -14,10 +14,3 @@ soong_namespace { } - -prebuilt_etc { - name: "task_profiles-qti", - filename_from_src: true, - src: "task_profiles.json", - vendor: true, -} diff --git a/perf/qti-perf.mk b/perf/qti-perf.mk index 51e834d..99ca864 100644 --- a/perf/qti-perf.mk +++ b/perf/qti-perf.mk @@ -42,6 +42,12 @@ PRODUCT_COPY_FILES += \ $(LOCAL_PATH)/perf/poweropt-service-disable.rc:$(TARGET_COPY_OUT_VENDOR)/etc/init/poweropt-service-disable.rc endif +# Only copy task_profiles.json for 5.4 targets. +ifeq ($(TARGET_KERNEL_VERSION),5.4) +PRODUCT_COPY_FILES += \ + system/core/libprocessgroup/profiles/task_profiles.json:$(TARGET_COPY_OUT_VENDOR)/etc/task_profiles.json +endif + # Packages PRODUCT_PACKAGES += \ android.hardware.thermal@2.0.vendor \ @@ -50,11 +56,6 @@ PRODUCT_PACKAGES += \ libtflite \ vendor.qti.hardware.servicetracker@1.2.vendor -ifeq ($(TARGET_KERNEL_VERSION),5.4) -PRODUCT_PACKAGES += \ - task_profiles-qti -endif - # Properties PRODUCT_PROPERTY_OVERRIDES += \ ro.vendor.perf-hal.ver=2.2 \ diff --git a/perf/task_profiles.json b/perf/task_profiles.json deleted file mode 100644 index 695a7d9..0000000 --- a/perf/task_profiles.json +++ /dev/null @@ -1,592 +0,0 @@ -{ - "Attributes": [ - { - "Name": "LowCapacityCPUs", - "Controller": "cpuset", - "File": "background/cpus" - }, - { - "Name": "HighCapacityCPUs", - "Controller": "cpuset", - "File": "foreground/cpus" - }, - { - "Name": "MaxCapacityCPUs", - "Controller": "cpuset", - "File": "top-app/cpus" - }, - { - "Name": "AudioAppCapacityCPUs", - "Controller": "cpuset", - "File": "audio-app/cpus" - }, - - { - "Name": "MemLimit", - "Controller": "memory", - "File": "memory.limit_in_bytes" - }, - { - "Name": "MemSoftLimit", - "Controller": "memory", - "File": "memory.soft_limit_in_bytes" - }, - { - "Name": "MemSwappiness", - "Controller": "memory", - "File": "memory.swappiness" - }, - { - "Name": "UClampMin", - "Controller": "cpu", - "File": "cpu.uclamp.min" - }, - { - "Name": "UClampMax", - "Controller": "cpu", - "File": "cpu.uclamp.max" - } - ], - - "Profiles": [ - { - "Name": "HighEnergySaving", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpu", - "Path": "background" - } - } - ] - }, - { - "Name": "Frozen", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "freezer", - "Path": "frozen" - } - } - ] - }, - { - "Name": "Unfrozen", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "freezer", - "Path": "" - } - } - ] - }, - { - "Name": "NormalPerformance", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpu", - "Path": "" - } - } - ] - }, - { - "Name": "HighPerformance", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpu", - "Path": "foreground" - } - } - ] - }, - { - "Name": "MaxPerformance", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpu", - "Path": "top-app" - } - } - ] - }, - { - "Name": "RealtimePerformance", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpu", - "Path": "rt" - } - } - ] - }, - { - "Name": "AudioAppPerformance", - "Actions" : [ - { - "Name" : "JoinCgroup", - "Params" : - { - "Controller": "cpu", - "Path": "audio-app" - } - } - ] - }, - - { - "Name": "VrKernelCapacity", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "" - } - } - ] - }, - { - "Name": "VrServiceCapacityLow", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "system/background" - } - } - ] - }, - { - "Name": "VrServiceCapacityNormal", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "system" - } - } - ] - }, - { - "Name": "VrServiceCapacityHigh", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "system/performance" - } - } - ] - }, - { - "Name": "VrProcessCapacityLow", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "application/background" - } - } - ] - }, - { - "Name": "VrProcessCapacityNormal", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "application" - } - } - ] - }, - { - "Name": "VrProcessCapacityHigh", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "application/performance" - } - } - ] - }, - - { - "Name": "ProcessCapacityLow", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "background" - } - } - ] - }, - { - "Name": "ProcessCapacityNormal", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "" - } - } - ] - }, - { - "Name": "ProcessCapacityHigh", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "foreground" - } - } - ] - }, - { - "Name": "ProcessCapacityMax", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "top-app" - } - } - ] - }, - - { - "Name": "ServiceCapacityLow", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "system-background" - } - } - ] - }, - { - "Name": "ServiceCapacityRestricted", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "restricted" - } - } - ] - }, - - { - "Name": "CameraServiceCapacity", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "cpuset", - "Path": "camera-daemon" - } - } - ] - }, - { - "Name": "AudioAppCapacity", - "Actions" : [ - { - "Name" : "JoinCgroup", - "Params" : - { - "Controller": "cpuset", - "Path": "audio-app" - } - } - ] - }, - - { - "Name": "BlkIOForeground", - "Actions" : [ - { - "Name" : "JoinCgroup", - "Params" : - { - "Controller": "blkio", - "Path": "" - } - } - ] - }, - { - "Name": "BlkIOBackground", - "Actions" : [ - { - "Name" : "JoinCgroup", - "Params" : - { - "Controller": "blkio", - "Path": "bg" - } - } - ] - }, - - { - "Name": "LowIoPriority", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "blkio", - "Path": "background" - } - } - ] - }, - { - "Name": "NormalIoPriority", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "blkio", - "Path": "" - } - } - ] - }, - { - "Name": "HighIoPriority", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "blkio", - "Path": "" - } - } - ] - }, - { - "Name": "MaxIoPriority", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "blkio", - "Path": "" - } - } - ] - }, - - { - "Name": "TimerSlackHigh", - "Actions": [ - { - "Name": "SetTimerSlack", - "Params": - { - "Slack": "40000000" - } - } - ] - }, - { - "Name": "TimerSlackNormal", - "Actions": [ - { - "Name": "SetTimerSlack", - "Params": - { - "Slack": "50000" - } - } - ] - }, - - { - "Name": "PerfBoost", - "Actions": [ - { - "Name": "SetClamps", - "Params": - { - "Boost": "50%", - "Clamp": "0" - } - } - ] - }, - { - "Name": "PerfClamp", - "Actions": [ - { - "Name": "SetClamps", - "Params": - { - "Boost": "0", - "Clamp": "30%" - } - } - ] - }, - - { - "Name": "LowMemoryUsage", - "Actions": [ - { - "Name": "SetAttribute", - "Params": - { - "Name": "MemSoftLimit", - "Value": "16MB" - } - }, - { - "Name": "SetAttribute", - "Params": - { - "Name": "MemSwappiness", - "Value": "150" - - } - } - ] - }, - { - "Name": "HighMemoryUsage", - "Actions": [ - { - "Name": "SetAttribute", - "Params": - { - "Name": "MemSoftLimit", - "Value": "512MB" - } - }, - { - "Name": "SetAttribute", - "Params": - { - "Name": "MemSwappiness", - "Value": "100" - } - } - ] - }, - { - "Name": "SystemMemoryProcess", - "Actions": [ - { - "Name": "JoinCgroup", - "Params": - { - "Controller": "memory", - "Path": "system" - } - } - ] - } - ], - - "AggregateProfiles": [ - { - "Name": "SCHED_SP_DEFAULT", - "Profiles": [ "TimerSlackNormal" ] - }, - { - "Name": "SCHED_SP_BACKGROUND", - "Profiles": [ "HighEnergySaving", "LowIoPriority", "TimerSlackHigh" ] - }, - { - "Name": "SCHED_SP_FOREGROUND", - "Profiles": [ "HighPerformance", "HighIoPriority", "TimerSlackNormal" ] - }, - { - "Name": "SCHED_SP_TOP_APP", - "Profiles": [ "MaxPerformance", "MaxIoPriority", "TimerSlackNormal" ] - }, - { - "Name": "SCHED_SP_RT_APP", - "Profiles": [ "RealtimePerformance", "MaxIoPriority", "TimerSlackNormal" ] - }, - { - "Name": "CPUSET_SP_DEFAULT", - "Profiles": [ "TimerSlackNormal" ] - }, - { - "Name": "CPUSET_SP_BACKGROUND", - "Profiles": [ "HighEnergySaving", "ProcessCapacityLow", "LowIoPriority", "TimerSlackHigh" ] - }, - { - "Name": "CPUSET_SP_FOREGROUND", - "Profiles": [ "HighPerformance", "ProcessCapacityHigh", "HighIoPriority", "TimerSlackNormal" ] - }, - { - "Name": "CPUSET_SP_TOP_APP", - "Profiles": [ "MaxPerformance", "ProcessCapacityMax", "MaxIoPriority", "TimerSlackNormal" ] - }, - { - "Name": "CPUSET_SP_SYSTEM", - "Profiles": [ "ServiceCapacityLow", "TimerSlackNormal" ] - }, - { - "Name": "CPUSET_SP_RESTRICTED", - "Profiles": [ "ServiceCapacityRestricted", "TimerSlackNormal" ] - } - ] -} -- cgit v1.2.3