From d6b99410381b2a9450a9dea8a78f53f9029afb68 Mon Sep 17 00:00:00 2001 From: Rick Yiu Date: Wed, 31 Aug 2022 07:52:02 +0000 Subject: [PATCH] Config dex2oat according to thermal status Config dex2oat cpuset and thread count according to thermal status. LIGHT cpuset = 0,1,2,3,4,5 thread = 6 MODERATE cpuset = 0,1,2,3 thread = 4 SEVERE cpuset = 0,1,2,3 thread = 4 CRITICAL cpuset = 0,1,2,3 thread = 2 EMERGENCY cpuset = 0,1,2,3 thread = 1 Bug: 242948832 Test: build pass Change-Id: I04adb1aeb343b71a2741aaef1ad776398a3be1b7 --- powerhint.json | 370 +++++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 325 insertions(+), 45 deletions(-) diff --git a/powerhint.json b/powerhint.json index a9c8223..d0d30d8 100644 --- a/powerhint.json +++ b/powerhint.json @@ -484,6 +484,28 @@ "1" ], "DefaultIndex": 0 + }, + { + "Name": "Dex2oatThreads", + "Path": "vendor.powerhal.dalvik.vm.dex2oat-threads", + "Values": [ + "1", + "2", + "4", + "6", + "8" + ], + "Type": "Property" + }, + { + "Name": "Dex2oatCPUSet", + "Path": "vendor.powerhal.dalvik.vm.dex2oat-cpu-set", + "Values": [ + "0,1,2,3", + "0,1,2,3,4,5", + "0,1,2,3,4,5,6,7" + ], + "Type": "Property" } ], "Actions": [ @@ -1380,76 +1402,250 @@ "Value": "60000" }, { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPUBigClusterMaxFreq", - "Duration": 1000, - "Value": "9999999" + "PowerHint": "THERMAL_VIRTUAL-SKIN_LIGHT", + "Node": "Dex2oatThreads", + "Duration": 0, + "Value": "6" }, { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPUBigClusterMinFreq", - "Duration": 1000, - "Value": "9999999" + "PowerHint": "THERMAL_VIRTUAL-SKIN_LIGHT", + "Node": "Dex2oatCPUSet", + "Duration": 0, + "Value": "0,1,2,3,4,5" }, { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPU_LITTLE_TSKIN_BYPASS", - "Duration": 1000, + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "PMU_POLL", + "Duration": 0, "Value": "1" }, { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPU_MID_TSKIN_BYPASS", - "Duration": 1000, + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "BigControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "MidControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "LittleControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "G3dControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "TpuControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "BigSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "MidSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "LittleSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "G3dSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "TpuSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "Dex2oatThreads", + "Duration": 0, + "Value": "4" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_MODERATE", + "Node": "Dex2oatCPUSet", + "Duration": 0, + "Value": "0,1,2,3" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "PMU_POLL", + "Duration": 0, "Value": "1" }, { - "PowerHint": "FACE_UNLOCK_BOOST", - "Node": "CPU_BIG_TSKIN_BYPASS", - "Duration": 1000, + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "BigControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "MidControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "LittleControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "G3dControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "TpuControlTempSet", + "Duration": 0, + "Value": "80000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "BigSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "MidSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "LittleSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "G3dSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "TpuSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "Dex2oatThreads", + "Duration": 0, + "Value": "4" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_SEVERE", + "Node": "Dex2oatCPUSet", + "Duration": 0, + "Value": "0,1,2,3" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "PMU_POLL", + "Duration": 0, "Value": "1" }, { - "PowerHint": "FP_BOOST", - "Node": "CPUBigClusterMaxFreq", - "Duration": 1000, - "Value": "9999999" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "BigControlTempSet", + "Duration": 0, + "Value": "80000" }, { - "PowerHint": "FP_BOOST", - "Node": "CPUBigClusterMinFreq", - "Duration": 1000, - "Value": "9999999" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "MidControlTempSet", + "Duration": 0, + "Value": "80000" }, { - "PowerHint": "FP_BOOST", - "Node": "CPU_LITTLE_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "LittleControlTempSet", + "Duration": 0, + "Value": "80000" }, { - "PowerHint": "FP_BOOST", - "Node": "CPU_MID_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "G3dControlTempSet", + "Duration": 0, + "Value": "80000" }, { - "PowerHint": "FP_BOOST", - "Node": "CPU_BIG_TSKIN_BYPASS", - "Duration": 1000, - "Value": "1" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "TpuControlTempSet", + "Duration": 0, + "Value": "80000" }, { - "PowerHint": "FP_BOOST", - "Node": "TRUSTY_VIRTIO_HIGH", - "Duration": 1000, - "Value": "1" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "BigSwitchOnTempSet", + "Duration": 0, + "Value": "60000" }, { - "PowerHint": "FP_BOOST", - "Node": "TRUSTY_HIGH", - "Duration": 1000, - "Value": "1" + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "MidSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "LittleSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "G3dSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "TpuSwitchOnTempSet", + "Duration": 0, + "Value": "60000" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "Dex2oatThreads", + "Duration": 0, + "Value": "2" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_CRITICAL", + "Node": "Dex2oatCPUSet", + "Duration": 0, + "Value": "0,1,2,3" }, { "PowerHint": "THERMAL_VIRTUAL-SKIN_EMERGENCY", @@ -1535,6 +1731,90 @@ "Duration": 0, "Value": "60000" }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_EMERGENCY", + "Node": "Dex2oatThreads", + "Duration": 0, + "Value": "1" + }, + { + "PowerHint": "THERMAL_VIRTUAL-SKIN_EMERGENCY", + "Node": "Dex2oatCPUSet", + "Duration": 0, + "Value": "0,1,2,3" + }, + { + "PowerHint": "FACE_UNLOCK_BOOST", + "Node": "CPUBigClusterMaxFreq", + "Duration": 1000, + "Value": "9999999" + }, + { + "PowerHint": "FACE_UNLOCK_BOOST", + "Node": "CPUBigClusterMinFreq", + "Duration": 1000, + "Value": "9999999" + }, + { + "PowerHint": "FACE_UNLOCK_BOOST", + "Node": "CPU_LITTLE_TSKIN_BYPASS", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FACE_UNLOCK_BOOST", + "Node": "CPU_MID_TSKIN_BYPASS", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FACE_UNLOCK_BOOST", + "Node": "CPU_BIG_TSKIN_BYPASS", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FP_BOOST", + "Node": "CPUBigClusterMaxFreq", + "Duration": 1000, + "Value": "9999999" + }, + { + "PowerHint": "FP_BOOST", + "Node": "CPUBigClusterMinFreq", + "Duration": 1000, + "Value": "9999999" + }, + { + "PowerHint": "FP_BOOST", + "Node": "CPU_LITTLE_TSKIN_BYPASS", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FP_BOOST", + "Node": "CPU_MID_TSKIN_BYPASS", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FP_BOOST", + "Node": "CPU_BIG_TSKIN_BYPASS", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FP_BOOST", + "Node": "TRUSTY_VIRTIO_HIGH", + "Duration": 1000, + "Value": "1" + }, + { + "PowerHint": "FP_BOOST", + "Node": "TRUSTY_HIGH", + "Duration": 1000, + "Value": "1" + }, { "PowerHint": "ML_ACC", "Node": "MLUclampBoost",