Commit graph

164 commits

Author SHA1 Message Date
TeYuan Wang
bd612e022b thermal: Low power shutdown policy bringup
Bug: 363336093
Bug: 361454856
Bug: 363070211
Test: emul_temp battery and VIRTUAL-SKIN for idle, camera use cases
and check thermal log.

Flag: EXEMPT config change
Change-Id: Ic01a4b5c8bdfa242e05bd560297d4e04d1159fc3
2025-01-17 07:07:19 -08:00
Treehugger Robot
3e3b22216c Merge "powerhint: Disable auto margins" into main 2024-12-13 18:58:49 -08:00
Qais Yousef
7bc8f435e5 powerhint: Disable auto margins
And restore DownRateLimitUs to previous values as they're not compatible
without the feature being enabled.

Bug: 383127224
Bug: 383332732
Flag: EXEMPT not support for powerhints
Signed-off-by: Qais Yousef <qyousef@google.com>
Change-Id: Ie6cfaf4855d647337f0295f89588e426269d7b7b
2024-12-14 00:32:27 +00:00
Jimmy Shiu
a8a40d9322 powerhint: Remove hints associated with the default TAUClampBoost value
Since the default value 1 is the lowest priority, it only
takes effect while all other values are disabled.
Therefore, the hints associated to value 1 are unnecessary.

Bug: 357445276
Change-Id: Ic7fdddfafc92969629cfbfd5cb4a392fe0060c3d
Flag: EXEMPT not supported by this component yet
Test: Boot to home and check the trace and ADPF profile
Test: adb shell dumpsys android.hardware.power.IPower/default
2024-12-12 01:01:50 -08:00
Paulsu Su
5241d8cf2f powerhint: Set Launch hint duration for TARampupMultiplier
bug: 383449126
flag: EXEMPT powerhint do not support flag

Change-Id: I8ef1ec6fae6dffc0b26181be2230936688ba5d22
2024-12-11 07:15:56 +00:00
Treehugger Robot
131d5c33a9 Merge "Add support for AMM experiment." into main 2024-12-07 07:44:25 +00:00
Dmitry Skiba
0977e86695 Add support for AMM experiment.
See go/pixel-perf-amm-experiment for more info.

Bug: 365855872
Test: build/flash; set .Perf__amm_experiment=true, observe auto_migration_margins_enable value changing 1->0; set .Perf__amm_experiment="", observe the value changing 0->1
Flag: NONE controlled by Mendel instead
Change-Id: Iacd310c83821cce8f50cdb82ab39f714c50f0e42
Signed-off-by: Dmitry Skiba <dskiba@google.com>
2024-12-06 22:52:32 +00:00
Dmitry Skiba
22dcc3447b Add a way to disable auto prefer fit for launch.
This change introduces "is APF enabled" system properties, and
uses them as trigger conditions for APF nodes / pre-APF nodes.

By default APF nodes are active, and pre-APF nodes are inactive,
which maintains the situation before this change.

A future experiment will flip "is APF enabled" system properties,
deactivating APF nodes and activating pre-APF nodes. For more
info see go/pixel-perf-apf-experiment.

Bug: 365855872
Test: set vendor.powerhal.apf_enabled=false, vendor.powerhal.apf_disabled=true, observe auto_prefer_fit
procfs value is never "1"
Flag: NONE powerhint change does not support flags
Change-Id: I919ad3ffe5f496df75bcb492bd3b4fa2285df65c
Signed-off-by: Dmitry Skiba <dskiba@google.com>
2024-12-05 23:03:23 +00:00
Qais Yousef
673b514e96 Merge changes from topic "auto-margins" into main
* changes:
  powerhint: Set response_time_ms for clusters
  powerhint: Enable auto migration margins/dvfs headroom by default
2024-12-04 00:28:10 +00:00
Guibing Cai
de438d5d34 Merge "ADPF:caimito: add tagged ADPF profile for SYSTEM_UI." into main 2024-12-03 00:25:04 +00:00
Ali K. Zadeh
2ccc8a111e Merge "[caimito] Define multiple levels of PA kill to be used in Mendel experiments" into main 2024-11-19 00:03:13 +00:00
Ali K. Zadeh
3e9baa929a [caimito] Define multiple levels of PA kill to be used in Mendel experiments
Level 1: 100MB
Level 2: 300MB
Level 3: 500MB

Bug: 375039716
Test: logcat
Flag: EXEMPT resource only file change
Change-Id: Ic6dc610fd1d21b83ff93891b8739f74ec5e1fcbf
2024-11-18 19:42:07 +00:00
Qais Yousef
74d165dc6e powerhint: Set response_time_ms for clusters
By default slow it down as auto margins can lead to faster ramping up in
low activity use cases.

Set it back to default in GAME mode to retain previous behavior. Set it
explicitly for DISPLAY_IDLE as a potential area for more tuning in the
future.

Bug: 315748906
Flag: EXEMPT powerhints are not compatible with flagging
Signed-off-by: Qais Yousef <qyousef@google.com>
Change-Id: I1ffb04afb0911acc8aae4388e7f6478ebfc96dae
2024-11-14 17:25:06 +00:00
Qais Yousef
4cdac3a773 powerhint: Enable auto migration margins/dvfs headroom by default
And reduce DownRateLimitUs to 500us as the system should be more
reactive now when something needs to rampup quickly.

Enable pertask iowait boost too as with auto dvfs headroom enabled all
tasks will start form 0 util_avg and this could impact iowait tasks
without this being enabled to help them migrate up to bigger cores.

Camera use cases should still use their own default DownRateLimitUs and
disable this feature to keep their dvfs_headroom tuning intact.

Bug: 315748906
Flag: EXEMPT powerhints are not compatible with flagging
Signed-off-by: Qais Yousef <qyousef@google.com>
Change-Id: Id8959b1debe8612623f47cdc103349ae0412a609
2024-11-14 17:23:25 +00:00
Chungkai Mei
ec685d8107 Enable TAPreferHighCap for first frame
we already saw some janks caused by longer runnable time.
so Enable TAPreferIdle for first frame

Bug: 372168866
Flag: NONE powerhint do not support flag
Change-Id: I01f699abd1eaed5760789d6c0788cbe4791e2b13
Signed-off-by: Chungkai Mei <chungkai@google.com>
2024-11-11 03:31:58 +00:00
Richard Chang
20ca16779a powerhint: Add WriteOnly flag for PA_KILL to avoid SELinux error
The node "/sys/kernel/vendor_mm/pa_kill/reclaim_kb" is write-only. So we need to add WriteOnly flag to prevent powerhal to read the node.

SELinux errors:
avc:  denied  { dac_read_search } for  comm="android.hardwar" capability=2  scontext=u:r:hal_power_default:s0 tcontext=u:r:hal_power_default:s0 tclass=capability permissive=0
avc:  denied  { dac_override } for  comm="android.hardwar" capability=1  scontext=u:r:hal_power_default:s0 tcontext=u:r:hal_power_default:s0 tclass=capability permissive=0

Bug: 350830411
Change-Id: Ic78a419b1500efce631e848d36816bc87d666920
Test: adb shell dumpsys android.hardware.power.IPower/default, check if any avc denied messages
Flag: EXEMPT config json change
2024-10-29 08:25:10 +00:00
guibing
c063e41292 ADPF:caimito: add tagged ADPF profile for SYSTEM_UI.
- Add a event node for SYSTEM_UI;
- Add a separate SYSTEM_UI profile;
- Remove unused profiles.

Bug: 359672110
Test: adb shell dumpsys android.hardware.power.IPower/default
Flag: NONE powerhal doesn't have a flag yet
Change-Id: I9f5fa718c72c94229e23993b551592f567093dec
2024-10-17 22:02:32 +00:00
Ali K. Zadeh
e7f0cfb382 Merge "[caimito] Define CAMERA_MULTICAM_BOOST" into main 2024-10-15 23:10:58 +00:00
Rick Yiu
6d0de408f4 Enable TA and FG prefer idle for some camera streams
These streams do not disable TA or FG prefer idle, so restore it.

Bug: 236868627
Flag: NONE powerhint change does not support flags
Test: build pass
Change-Id: Iadb6f711c907e6ba25c29ac15cc1e8cb73b57684
2024-10-10 11:40:35 +00:00
Wei Wang
cb0300f17c Merge "powerhint: enable auto_prefer_idle in games" into main 2024-10-09 18:38:28 +00:00
Treehugger Robot
aba5cf7aa4 Merge "Use auto prefer fit for launch" into main 2024-10-07 16:17:21 +00:00
Yvonne Yip
a6d5fc884a powerhint: enable auto_prefer_idle in games
Bug: 353987938
Test: manual testing
Flag: NONE powerhint
Change-Id: Iddf88214a408d874bd6be8fa9bc72aa335bfa482
2024-10-01 16:01:54 -07:00
Sam Ou
a3244ab2c8 Merge "thermal: Remove bcl related tzones" into main 2024-09-18 15:49:46 +00:00
Rick Yiu
827f321757 Use auto prefer fit for launch
Enable auto prefer fit for high prio tasks when app launch, and tune
uclmap min settings for different task prio.

Bug: 353885521
Flag: NONE powerhint change does not support flags
Test: build pass
Change-Id: Iad6f5d332e66dc09ed12d09e3e443144bc25c31d
2024-09-13 09:56:57 +00:00
Wei Wang
8c8f944c73 Merge "Enable auto prefer idle" into main 2024-08-29 23:51:42 +00:00
Ali K. Zadeh
f5d247a3f2 Revert^2 "Set max load balance to 4, reduce Downrate Limit for lit and mid cores"
This reverts commit e00b219010.

Reason for revert: Fix the tokay powerhint

Test: tokay device boots successfully
Bug: 354763942

Change-Id: I218bd68a770bf8af43f154a51cdc31521486950f
2024-08-19 16:50:57 +00:00
Maciej Żenczykowski
e00b219010 Revert "Set max load balance to 4, reduce Downrate Limit for lit and mid cores"
This reverts commit d1274379ad.

Reason for revert:

git_main tokay-trunk_staging-userdebug boot failure (something about failing to parse /vendor/etc/powerhint.json).

https://android-build.corp.google.com/test_investigate/?invocationId=I81200010307251269&testResultId=TR31029411252209740&legacy=&tab=changes

Confirmed locally a revert results in a phone that boots.

Change-Id: I134fc0926170940f374a04362b71f5b9c28188d4
2024-08-17 05:02:12 +00:00
Ali K. Zadeh
d1274379ad Set max load balance to 4, reduce Downrate Limit for lit and mid cores
Bug: 354763942
Test: b/354763942#comment29
Flag: EXEMPT resource file change only
Change-Id: I7683bd8847504b7db2fbd19f31ccb6af1b9037de
2024-08-08 22:25:08 +00:00
Paulsu Su
77224746ca powerhint: CPULittleClusterMinFreq default 820MHz
Change-Id: Ib546be142955d36eb417f34d6ab086833e380320
Test: boot to home
Bug: 348088963
Flag: NONE powerhint do not support flag
2024-08-07 07:27:06 +00:00
samou
d35eeb2c3d thermal: Remove bcl related tzones
Flag: EXEMPT tuning changes
Bug: 349935208
Test: Confirm boot
Change-Id: I2029cde12297d51ab14e336e3ce733cbed879f6c
Signed-off-by: samou <samou@google.com>
2024-08-06 03:55:18 +00:00
Ali K. Zadeh
b990268c1c [caimito] Define CAMERA_MULTICAM_BOOST
This CL defines CAMERA_MULTICAM_BOOST (with the same settings as the
existing CAMERA_ZOOMING_BOOST). Having both definitions is necessary to
be able to transition from zooming boost to multicam boost. Once the
multicam boost flag is fully rolled out, we can remove the
CAMERA_ZOOMING_BOOST.

Bug: 347829135
Test: adb logcat
Flag: EXEMPT resource file only change
Change-Id: I964f40926914d5006e5440a71a288f23e594161a
2024-08-02 19:41:54 +00:00
Martin Liu
ae6907b6b8 Boosting kswapd uclamp min value when the panel is on
Boosting kswapd's uclamp minimum value in the scheduler
allows kswapd more opportunities to remain in middle cores.
This change enhances kswapd's memory reclamation efficiency.

Bug: 351708752
Test: check kbnob value when the panel is on/off
Flag: EXEMPT device policy tuning
Change-Id: I4b75016aa3f2de22b0b9e46d8e594d4042124a04
Signed-off-by: Martin Liu <liumartin@google.com>
2024-08-01 14:29:57 +00:00
Rick Yiu
89d596b0f8 Enable auto prefer idle
Also disable prefer idle for TA and FG by default.

Bug: 236868627
Flag: NONE powerhint change does not support flags
Test: build pass
Change-Id: I0c09c4ef30e10d358a71de11283dda43b4f96837
2024-07-30 09:11:58 +00:00
Treehugger Robot
874d9c7a23 Merge "Adpf:caimito: switch to multitier heuristic boost." into main 2024-07-27 00:58:12 +00:00
guibing
ca3ac26d16 Adpf:caimito: switch to multitier heuristic boost.
Bug: 344685639
Test: Checked the trace file running on the device.
Flag: NONE powerhal doesn't have a flag yet
Change-Id: I550086e5c47991ed25c3b988ca11e8cf9df5d118
2024-07-26 23:21:38 +00:00
Ali K. Zadeh
fb22d799d6 [caimito] Enable PA_KILL during PA_KILL_BOOST
Currently, we enable PA_KILL always on camera launch. This CL puts this
feature behind a power boost profile which can only be triggered from
camera hal and is controlled by a mendel flag.

Bug: 350594261
Test: adb logcat
Flag: EXEMPT resource only update
Change-Id: Id227bd35fda97d5b0cbdfe9e4df39eff2e565b7d
2024-07-19 18:58:03 +00:00
Zorah Chen
0495e5cffe Merge "Powerhint tuning for photo capture" into main 2024-07-12 05:54:56 +00:00
zorahchen
d68bded2d6 Powerhint tuning for photo capture
UClamp.min of all threads in top app is set to mid core max capacity during photo capture, which will dispatch them to big core.
Critical threads of photo capture will be interrupted due to their lower priority, while other cores idle.

To deal with this situation,
prefer_idle mask to big/mid cores can reduce the idle in mid cores.
UClamp.min on nice can set UClamp.min of photo capture critical threads to mid core max capacity, while others as zero,
this can make critical threads run on big core without frequently interrupted.
By applying this, photo capture latency can be reduced with slight change of power consumption.

Bug:345601796
Performance Test:https://g3doc.corp.google.com/wireless/android/camera/camera_performance_analyzer/power_tuning/results/g3doc/pmu_retune_capture_enhanced/index.md?cl=alikz/1010
Kibble Power Test:https://g3doc.corp.google.com/wireless/android/camera/camera_performance_analyzer/power_tuning/results/g3doc/pmu_kibble_capture_rt_enhanced/index.md?cl=alikz/1044
Flag: NONE powerhint change does not support flags
Change-Id: I8683b50b212d50b85b22b5cb48d712fc8eb43444
2024-07-12 02:03:49 +00:00
Ali K. Zadeh
7c81eff0a1 Increase SPC thresholds based on the field data
Bug: 350111391
Test: Kibbles/Framedrops https://docs.google.com/document/d/1QvryQvAj_hjSjouG7P6MD1HwVB0n46GZNvmZgz6uQ9M/edit?resourcekey=0-rexjumgYT6SqyTbb0OvOEg&tab=t.0
Test: https://docs.google.com/spreadsheets/d/1e1pm7N1GBfYHU9tvG3gx9Z84tVYCokDlpSnHF2wlbbA/edit?gid=0#gid=0
Flag: EXEMPT bugfix

Change-Id: Iad09beafc595e89d86131b00a3a221af0688eb7a
2024-07-10 16:19:27 +00:00
Kurt Huang
0f93229c19 powerhint: set valid PMU_BIG_SPC_THRESHOLD for CAMERA_PROJECT11
http://ag/27702721 removed value 50 from PMU_BIG_SPC_THRESHOLD. Set the
value to 20 for CAMERA_PROJECT11.

Bug: 347647774
Test: Flash on ripcurrentpro board and boot
Change-Id: I20aa20119ab8317d3ba92b8118d34f3b9e884b66
2024-07-02 07:21:57 +00:00
Richard Chang
62e495a0dd Merge "Reapply "powerhint: add proactive kill hint for camera launch"" into main 2024-06-27 07:19:51 +00:00
Qais Yousef
176560b44a powerhint: Enable auto migration margins/dvfs headroom for game mode
Since the system is more reactive now when tasks are getting busier, set
DownRateLimitUs to 500us to avoid increasing power.

Also enable pertask iowait boost as util_avg will always start from
0 for forked tasks and this could impact io tasks that need additional
help to ensure to migrate to bigger core if they need more perf.

Bug: 339664411
Test: PTE A/B test
Flag: NONE powerhint change does not support flags
Signed-off-by: Qais Yousef <qyousef@google.com>
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:c09bc9d8b58cc4f9bba136a1dc97b5c0b7751dce)
Merged-In: Iecbbaccc81297ee0f66f8c45299846f2415ee29c
Change-Id: Iecbbaccc81297ee0f66f8c45299846f2415ee29c
2024-06-24 23:08:44 +00:00
Qais Yousef
0de9ecec3a powerhint: Add nodes to control per-task iowait boost
It's disabled by default.

Ensure camera and game mode explicitly disable it too as it is only
required when auto margins are enabled for now.

Ensure it is disabled when screen is off too as We don't want io
activities to cause wake up on bigger cores while screen is off.

Bug: 339664411
Test: PTE A/B test
Flag: NONE no behavior change
Signed-off-by: Qais Yousef <qyousef@google.com>
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:6e7e510a8eeace8d37836d6e428e13a61d66f0c1)
Merged-In: Icbbfb2d332b412fa51d6d434d44d1ada8545338c
Change-Id: Icbbfb2d332b412fa51d6d434d44d1ada8545338c
2024-06-24 23:08:28 +00:00
Yvonne Yip
eb1267c4d3 powerhint: Add nodes required to enable auto migration margins/dvfs headroom
Everything should be disabled by default.

Make sure camera and game explicitly disable them by default too.

Ensure the feature is disable when screen is idle.

Bug: 339664411
Test: PTE A/B test
Flag: NONE no behavior change
Signed-off-by: Yvonne Yip <ykyyip@google.com>
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:a4523a214541f2cd3a079c010790c372b8058f31)
Merged-In: I3dd2bfe1824af489cd1ccc3a69557c180bf33ddf
Change-Id: I3dd2bfe1824af489cd1ccc3a69557c180bf33ddf
2024-06-24 23:05:07 +00:00
Qais Yousef
d92ae25af8 powerhint: Explicitly set DownRateLimitUs for camera
So that we can change the default values without impacting it.

Bug: 339664411
Test: PTE A/B test
Flag: NONE no behavior change
Signed-off-by: Qais Yousef <qyousef@google.com>
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:eb1962034f12f42907e5641a195f49456e951b31)
Merged-In: I8ca117bba2e0b59802de5fb19eae507548ff0a6e
Change-Id: I8ca117bba2e0b59802de5fb19eae507548ff0a6e
2024-06-24 22:58:21 +00:00
Richard Chang
4fe16883a8 Reapply "powerhint: add proactive kill hint for camera launch"
This reverts commit 09e63f9519.

Bug: 322916612
Test: local test
Flag: EXEMPT resource only update
Change-Id: Ida78f3e34cd7ac29b9d6311b6c1afb6f57bca224
2024-06-21 07:02:05 +00:00
Wei Wang
7427169bcb Merge "Set big core to group_cfs_skip_mask for sys group by default" into main 2024-06-17 17:08:07 +00:00
Lynn Yeh
7ebbdf444d Merge changes from topic "pmu_fix" into 24D1-dev am: 3a4927f4ec
Original change: https://googleplex-android-review.googlesource.com/c/device/google/caimito/+/27765730

Change-Id: Ic8e2ed0f2659a7eebc72448d8d7458910edead3f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-13 03:06:45 +00:00
Ali K. Zadeh
7f98995d82 Update PMU thresholds with PMU ignorance logic disabled am: 8a6924bd35
Original change: https://googleplex-android-review.googlesource.com/c/device/google/caimito/+/27702721

Change-Id: If07b24c018a4fab6fea5c0a70718de2546d0ad76
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-06-13 03:06:41 +00:00
Ali K. Zadeh
f1dfb794d4 Reduce CPUDVFSHeadroom for mid and big core (for 60fps and 240fps)
Reducing CPUDVFSHeadroom can help save power in 60fps and 240fps
use-cases once RT threads are enabled. Even without the RT patch
(ag/27725456), we can see savings without any impact to framedrop rate.

Bug: 341495529
Test: https://docs.google.com/document/d/14djeCdDIjDy9wqtYc4C9OPnp7sOx3HfbQz4dIZarvVE
Change-Id: Ib16a52d83669c5e9705d80c48b7097e102cc807f
2024-06-12 23:43:15 +00:00