Commit graph

83 commits

Author SHA1 Message Date
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
Shijie “Jessie” Hu
43ec216bd3 Merge "[Project11] CPU scheduling update." into 24D1-dev 2024-05-24 02:53:49 +00:00
Shijie (Jessie) Hu
061f44ae4f [Project11] CPU scheduling update.
Bug: 341968564
Test: power and perf test on Komodo.Test result show in b/341968564#comment27

- Use newly tuned STREAMING_STANDARD setting.

Change-Id: If64ad8148c4740fe5716381d21543bc9d26ab623
2024-05-23 22:53:23 +00:00
Taeju Park
8a52ed0919 powerhint: bug fix for PMU_FORCE_LIMIT
PMU_FORCE_LIMIT node is used without declaration

Bug: 341151887
Change-Id: I6ca864d80e25a5c81f04606d0a3315edd1357386
Signed-off-by: Taeju Park <taeju@google.com>
2024-05-21 18:50:49 +00:00
Ali K. Zadeh
c14ec8230a 60fps: change PMU max frequency for CL2 to 1164MHz
Bug: 340289125
Test: clock residency
(https://docs.google.com/spreadsheets/d/1TQQU5TGHE6B0xOgd77tyUyGnU-oksXi1X0Bs_vCsENE/edit#gid=1243247080)
Test: Kibble (https://docs.google.com/spreadsheets/d/1WF9WVVeNvDSawzUtrq-L89jh1vuAootVET3vRXQTJR8/edit#gid=1987296588)

Change-Id: I18fc6a3ffe535278d95ea32e855d3b8b8ab12b4a
2024-05-16 22:18:54 +00:00
Taeju Park
ef1f5d317a Merge "powerhint: add PMU_FORCE_LIMIT control knob" into 24D1-dev 2024-05-10 19:07:40 +00:00
Ali K. Zadeh
0508270ad8 Merge "Enable PMU during photo capture" into 24D1-dev 2024-05-09 23:58:52 +00:00
Ali K. Zadeh
730f445f01 Enable PMU during photo capture
Bug: 298227152
Test: Kibble 12MP - https://docs.google.com/spreadsheets/d/1Exxzy_7CHu4RQQ_-eR2s16Ob9BpxdQZFn6GIkUmoc4k/edit?resourcekey=0-CrG5HCXn9v7iR0PFk84j2g#gid=328258859
Test: Kibble 50MP - https://docs.google.com/spreadsheets/d/1qIdxci3qRwgM_XD5rRdmQPqDrsf8VHQIqQggDh2rgGY/edit?resourcekey=0-t25YyqKalsLbrCM7ADDHlQ#gid=2134912777
Test: Kibble 12MP - repeated capture - https://docs.google.com/spreadsheets/d/1XTwC5iCaobxwCcj5QH1f_34lJysvFDv53wt4K9l8DAM/edit#gid=1477598242
Test: Kibble 50MP - repeated capture - https://docs.google.com/spreadsheets/d/17wlxE2MsRx56Vhr9IE1iBYLz1Lee1s7Bb7E_GKaBJtc/edit?resourcekey=0-Vh8vf55xZHgYnWqDESm5lA#gid=1630323952
Test: Latency 12MP - https://docs.google.com/spreadsheets/d/1xUmS4H8SmwKzrL-CScIhZABsrlCq1CZsDT9ZSWFAMwU/edit#gid=466916271
Test: Latency 50MP - https://docs.google.com/spreadsheets/d/1GUs1TVCCOD6Bv73ilxrjg99tJVq6wQ5kJfYrJ1djY54/edit#gid=1885938822
Change-Id: I5083184f9e226d42584de5b6910994f1d5d3cc52
2024-05-09 22:44:32 +00:00
Rick Yiu
d8c84c47ff Set big core to group_cfs_skip_mask for sys group
Set big core to group_cfs_skip_mask for sys group when screen is off,
so that sys group tasks will run less in big core.

Bug: 328210236
Test: suspend/resume test
Change-Id: I4868ba0303e981250105b1ff69a6db6458df844a
2024-05-09 16:06:24 +00:00
Rick Yiu
1ae838086c Merge "Revert^2 "Set big core to cpu skip mask by default"" into 24D1-dev 2024-05-08 09:33:23 +00:00
Rick Yiu
4958f15db0 Revert^2 "Set big core to cpu skip mask by default"
This reverts commit b64afc1747.

Reason for revert: regression fixed

Bug: 248621289
Change-Id: Ia3479262bf7188b2abf35f5b5ec5f18b0fe63aff
Test: build pass
2024-05-07 07:39:47 +00:00
Taeju Park
3cfc93b4f6 powerhint: add PMU_FORCE_LIMIT control knob
Bug: 335331630
Change-Id: Idb5f21cdb98611edd07d3edcafca5699515e9bae
Signed-off-by: Taeju Park <taeju@google.com>
2024-05-06 19:33:24 +00:00
Wei Wang
c381116bd3 Merge "Revert "Set big core to cpu skip mask by default"" into 24D1-dev 2024-05-02 21:28:03 +00:00
Wei Wang
b64afc1747 Revert "Set big core to cpu skip mask by default"
This reverts commit 2cc7bc7c3d.

Reason for revert: may get geekbench5/6 regressed
Bug: 338140604
Bug: 338141118
Change-Id: I76b2b98ca233fccc1f9a15c99bbb622bd7869392
2024-05-02 20:26:43 +00:00
Ali K. Zadeh
7563d4d627 Merge "Change PMU_BIG_LIMIT_FREQUENCY of 1298MHz to 1396MHz" into 24D1-dev 2024-05-02 00:49:03 +00:00
Matt Buckley
4a19787592 Add POWER_EFFICIENCY uclamp max to adpf config
Add the "UclampMax_EfficientBase" value to the ADPF config in the
powerhint.json to specify efficient core scheduling in the static
case, and "UclampMax_EfficientOffset" for the dynamic case, for this
device.

Bug: 277285195
Test: manual
Change-Id: If377f6384a1a7863abf80f0a4a0cf0fe3074ec21
2024-04-30 16:54:35 +00:00
Ali K. Zadeh
32364863c3 Merge "Disable CDPreferIdle, set DSUMin to 610MHz for 60fps" into 24D1-dev 2024-04-29 20:22:15 +00:00
Ali K. Zadeh
a4151229c8 Merge "Reduce DVFSHeadroom to 1100 for CAMERA_STREAMING_STANDARD" into 24D1-dev 2024-04-26 22:03:46 +00:00
Taeju Park
635801795b powerhint: tune default value for PMU limit parameter
Bug: 310237445
Change-Id: I0ed334a447afdc420655ca1733125e8ab0ab43f1
Signed-off-by: Taeju Park <taeju@google.com>
2024-04-26 18:32:42 +00:00
Wei Wang
95295f6e14 Merge "powerhint: remove lcpi parameter for PMU limit" into 24D1-dev 2024-04-26 17:49:54 +00:00
Ali K. Zadeh
f81ce08592 Reduce DVFSHeadroom to 1100 for CAMERA_STREAMING_STANDARD
With CDPreferIdle enabled, the current DVFSHeadroom pushes the CL0
frequency too high. This CL reduces this value to 1100, resulting in a
lower CPU power while performance remains mostly intact.

Bug: 304536786
Test: 1080p30fps - https://docs.google.com/spreadsheets/d/1A6Ck6Hyhs5su_xhn_6YIrLKSGc-tVIbzMIcGP4ucp-w/edit?resourcekey=0-Tj0KiAgzcejZJAUem9D2Ew#gid=2127971741
Test: 4k30fps - https://docs.google.com/spreadsheets/d/1scT3e3jeAekH6L7vZ3WtLLJsRxyxaq6JxbXKW4_tkH8/edit#gid=1060301792
Test: Photo preview - https://docs.google.com/spreadsheets/d/1W8WhkDqZccYvh4Zd0wXNFaCxWrUY-TOuXoFuBSVkk88/edit?resourcekey=0-i8drOxv0D8QioXYJNhZyGA#gid=380332953
Test: Portrait preview - https://docs.google.com/spreadsheets/d/1g9olzsTKNodKH8o0EtlcYbmLHOSbwnUVLyHAGs89tTE/edit?resourcekey=0-az_TeGJi_aH-B_DGqyTugQ#gid=524055346
Test: Video Bokeh - https://docs.google.com/spreadsheets/d/162XjO8vhbL9JFolzjqDUhaMp40NWWQP7PMr_34JS8PE/edit?resourcekey=0-gtA-l_Z0c_aDK5Y898XnrA#gid=1290026232
Test: 120fps - https://docs.google.com/spreadsheets/d/1nSA2ybed-fu6RqBdsa0JZ4CRM6002HPYiW3dJC_rxvw/edit#gid=961019110
Test: loaded test - https://docs.google.com/spreadsheets/d/1wGlPn_WdX5ZJAhppmZBh_Iih3UcSwGQeDb8R-OG2Jhk/edit?resourcekey=0-NKPtSKHqq1HwPwZDw7OljA#gid=1710307951
Change-Id: I1271c60e669dbf437467f28903254bb95a07beb0
2024-04-26 17:13:32 +00:00
Treehugger Robot
5c92151009 Merge "Set big core to cpu skip mask by default" into 24D1-dev 2024-04-26 04:14:05 +00:00
Treehugger Robot
4c7c69f0e3 Merge "Adpf:caimito: revert heuristic boost triggering condition." into 24D1-dev 2024-04-26 02:42:19 +00:00
Yadong Xu
5b49713231 Merge "Fix face auth powerhint for face unlock boost" into 24D1-dev 2024-04-26 00:18:11 +00:00
Yadong Xu
71395ffb99 Fix face auth powerhint for face unlock boost
Test: Not required.

Fixed:335714087

Change-Id: I2f19bd4df763a6665762d67c3df66d444805e5a4
2024-04-26 00:17:54 +00:00
guibing
2ea470d49a Adpf:caimito: revert heuristic boost triggering condition.
This reverts previous JankCheckTimeFactor from 1.43 to 1.2.

Since the current reported duration doesn't include the GPU
part, the JankCheckTimeFactor needs to be smaller for matching
jank frame detection.

Bug: 204204746
Test: adb shell dumpsys android.hardware.power.Ipower/default;
      check adpf sessions' traces.
Change-Id: I36ab5e699187650011a91a2c0814c33e62e4e125
2024-04-25 22:52:05 +00:00
Ali K. Zadeh
9c39373a33 Disable CDPreferIdle, set DSUMin to 610MHz for 60fps
With MulticamRoutingNode on RT, the performance is no longer impacted by
having CDPreferIdle disabled. Additionally, this CL reduces DSUMin to
610MHz, saving overall up to 50mW in CPU power.

Test: 1080p60: https://docs.google.com/spreadsheets/d/1KoMO-hFl8t5KxLOWTn9eGSEXJqMVhDh4PRgn94_aTfk/edit?usp=sharing&resourcekey=0-DnXRxfkqmKNE8Cbh664inA
Test: 4k60: https://docs.google.com/spreadsheets/d/1PntdXFCyBL4H3kswAoIRota-FGbqSHXRZCQP3opnuj8/edit?usp=sharing&resourcekey=0--wdtPAqsz2XbsHQq67rgeg
Bug: 334945465
Bug: 304536786
Change-Id: Ic1d24975c01c65f8495a26ad9b29c97efed85ee1
2024-04-24 22:38:19 +00:00
Taeju Park
04a98d59e4 powerhint: remove lcpi parameter for PMU limit
PMU-based soft freq limit no longer use lcpi parameter

Bug: 295054083
Change-Id: I0d4eb0d90934dcd441e7272292c34cffa533ae25
Signed-off-by: Taeju Park <taeju@google.com>
2024-04-23 20:29:56 +00:00
Rick Yiu
2cc7bc7c3d Set big core to cpu skip mask by default
Also reset the mask for launch and other camera streaming modes that
do not use it.

Bug: 248621289
Test: build pass
Change-Id: I752bcf27ac6c9064a464af54200a506fd6db03ff
2024-04-23 05:29:35 +00:00
Ali K. Zadeh
3f30ceb9e1 Change PMU_BIG_LIMIT_FREQUENCY of 1298MHz to 1396MHz
1298MHz is no longer in the list of available frequencies of the big
core. This CL replaces this value with the next available one which is
1396MHz.

Bug: 304536786
Test: device boot
Change-Id: I2f58c18c41494e0a0ea4b006f641f55405b72cfd
2024-04-22 21:11:25 +00:00
Ali K. Zadeh
3d27c634c1 Merge "Increase SPC thresholds for 60fps" into 24D1-dev 2024-04-22 21:11:03 +00:00
Ali K. Zadeh
c3a6514d48 Increase SPC thresholds for 60fps
This CL increase SPC threshold for little core to 55, and for mid core
to 32. Tests show that in a loaded scenario, framedrop rate can reduce
to almost zero, while not impacting the power in the unloaded (baseline)
scenario.

Bug: 304536786
Test: 1080p60: https://docs.google.com/spreadsheets/d/10g6mWm8q9FgnBDvC1CzYWgVM6DZZJQLdAYqf2zW209U/edit?usp=sharing
Test: 4k60: https://docs.google.com/spreadsheets/d/1Rnz5gkqgoHFz5vwq5uezy8JD1uGkq_52fqDAmBetafY/edit?usp=sharing&resourcekey=0-zAOJ1GPbHWGYdU5QlUaH3Q
Test: Loaded - 1080p60: https://docs.google.com/spreadsheets/d/1Ae1sFdXfHL0R_za3o7tUhws-4Xs3F7XktPld9Eh0xYE/edit?usp=sharing&resourcekey=0-dPQmBCXISNX_GA8s2uzLcw
Test: Loaded - 4k60: https://docs.google.com/spreadsheets/d/1QeSJjTRhyL41Bjm9wF9tKcC8mHpC02vkr6R2qJlNA1w/edit?usp=sharing
Change-Id: I077a42349527721f31eeb10c4521f48c1448374a
2024-04-19 22:02:04 +00:00
Ali K. Zadeh
c2a2ce209d Make PreferHighcap settings for VideoCall consistent between devices
Bug: 323257509
Test: device boot
Change-Id: I3ba16e14c75847ef0bf08dee946ead65d762f63c
2024-04-19 18:10:58 +00:00
Treehugger Robot
c9cf9bdb16 Merge "adpf:caimito: update hboost jank check time factor." into 24D1-dev 2024-04-19 02:32:32 +00:00
guibing
95f08c856a adpf:caimito: update hboost jank check time factor.
Update it to align with the HWUI target duration scale factor,
so the adjusted jank check time duration is same as expected frame
timeline's duration.

HWUI target duration scale factor is 70%, and its inverse value is
approximately 1.43.

Bug: 204204746
Test: adb shell dumpsys android.hardware.power.IPower/default;
      Check the device adpf sessions' traces.

Change-Id: Id835b30e7acd50b34840131669eaf3894ea5e629
2024-04-18 22:21:55 +00:00
Ali K. Zadeh
d5db58d628 Increase SPC threshold for little and mid cores for CAMERA_STREAMING_STANDARD
SPC threshold is too low for both Little and Mid cores. This CL increases this
threshold to 55 for Little Core and to 30 for Mid core.
Test results show lower framedrop rate in presence of background load,
without having a negative impact on the power.

Test: 1080p30: https://docs.google.com/spreadsheets/d/1ANQ7hCkvDR03vHVKfy_i8Eh2tyKEw2qpZmFktCACCgI/edit?resourcekey=0-JXymSV8n68bVlqG2B2MVOw#gid=839467803
Test: 4k30: https://docs.google.com/spreadsheets/d/1YBz9TahcF7iMLRC6iPCl-t_-Vx_Lu6qNTdrs_EmOvZk/edit?resourcekey=0-UarnZQ86b6Vt_LBBjeZQQg#gid=586707919
Test: 1080p120: https://docs.google.com/spreadsheets/d/1kgSEqpT24_qmMrIPGjUkxTVsqVZg5gJAWOCu7p2n02c/edit#gid=697949868

Test: Loaded: Spc Lit 55: https://docs.google.com/spreadsheets/d/1j3MBl0uyjQQmeqC-JN6pqDpYd9FI4UfQq8xXfJcwcis/edit?resourcekey=0-BsWXhyH5D6QJGU2nqfoi_Q#gid=1983120744
Test: Loaded: Spc Mid 30: 1080p30 https://docs.google.com/spreadsheets/d/1FeHEOp_XHM_NJdXeTgDi9VZY2Nql_44aJEvEVtCHWUQ/edit#gid=1505208441
Test: Loaded: Spc Mid 30: 4k30: https://docs.google.com/spreadsheets/d/137ltu2nq5aN-5gA7CxwrCVpUC3fLRE94D30hsaH0-SI/edit#gid=17725636

Bug: 304536786

Change-Id: I07c81d6c3297e54202dc8966b4306d77daf34447
2024-04-18 20:46:34 +00:00
Ali K. Zadeh
a57ee838cb Merge "Increase TAUClampBoost during capture to reduce latency" into 24D1-dev 2024-04-18 20:35:43 +00:00
Rick Yiu
e5df2a1fb3 Merge "Revert "Add cpuset system group"" into 24D1-dev 2024-04-17 08:06:59 +00:00
Rick Yiu
8153899d60 Revert "Add cpuset system group"
This reverts commit 8116ee60ba.

Reason for revert: need more perf evaluation

Bug: 328210236
Test: build pass
Change-Id: Id389c7b78c8c168a3015cd207b6d7b1a00c5d3a2
2024-04-17 05:05:44 +00:00
Ali K. Zadeh
7af4854125 Increase TAUClampBoost during capture to reduce latency
Bug: 298227152
Test: 12mp: https://docs.google.com/spreadsheets/d/1LT4Nxiffr0V63SBEhdD3W7VXtaZGTEWT7vD70yio5Is/edit?resourcekey=0-eE7u5RnJP_E0hBZX8AO7BQ#gid=1777320174
Test: 50mp: https://docs.google.com/spreadsheets/d/1n0nnfl9W_m683SsjJuA5rpvcMVhn1uK1r38P8vgYfbQ/edit?resourcekey=0-nYeECKN1CTDFfsVhNn72cA#gid=1511403903
Change-Id: I632940ec5fe01cdd026c50960657142ea589d155
2024-04-16 18:46:47 +00:00
Wei Wang
2da6c42eeb Merge "adpf:caimito: add hboost junk detection time factor into power hint json files." into 24D1-dev 2024-04-16 03:50:58 +00:00
guibing
4a72fa6721 adpf:caimito: add hboost junk detection time factor into power hint json files.
Bug: 204204746
Test: adb shell dumpsys android.hardware.power.IPower/default;
      Check the device adpf sessions' traces.
Change-Id: Id2912923a55c7788271312db9feefdecbfbc380f
2024-04-16 00:03:58 +00:00
Rick Yiu
8116ee60ba Add cpuset system group
Set cpuset system group to little and mid cores only when screen
off.

Bug: 328210236
Test: build pass
Change-Id: I3c116998e3bb5f347b8a0d401b7a22c458b19657
2024-04-15 14:40:17 +00:00
guibing
64592cbc5a caimito: Add heuristic boost configs in power hint json files.
Bug: 204204746
Test: Power hal launches in device without configuration parsing issue.
Change-Id: I316abe2c302fc528b558b5fff30f77dd7b438e12
2024-04-12 21:11:45 +00:00
Chungkai Mei
04ff9efa0d reorder the powerhint.json
since exynos driver take a longer time during access MEM/INT/DSU/BCI file nodes, change the order of powerhint and do other boost first

Bug: 329209796
Change-Id: I63a709d0607f5999cd30c8fe12de0699934b4c53
Signed-off-by: Chungkai Mei <chungkai@google.com>
2024-04-12 08:04:18 +00:00
Jimmy Shiu
b4d0311ea5 powerhint: set ADPF CPU_LOAD_UP CPU_LOAD_RESET values
Bug: 329483662
Test: Manual Test
Change-Id: I06d4774d81506080858127a9f992500d92b78ba7
2024-04-10 11:45:05 +00:00
Wei Wang
13d745f1af Merge "Disable auto prefer idle explictly for some conditions" into 24D1-dev 2024-04-09 16:00:46 +00:00
Rick Yiu
3b22e46ef6 Disable auto prefer idle explictly for some conditions
In auto prefer idle mode, a task in top-app will be granted prefer
idle if it satisfied the conditions. So turn auto prefer idle off
if top-app prefer_idle is explictly disabled. Also turn auto prefer
off when other group enables prefer_idle explictly.

Bug: 236868627
Test: build pass
Change-Id: I6e5694dfd9b5ed30bfad31509415027d5bac71cb
2024-04-09 04:12:14 +00:00
Ali K. Zadeh
1bd6e91fec Thermal Boost for severe thermal state
Bug: 299487324
Test: framedrop rates improve in
https://docs.google.com/spreadsheets/d/1XKNwe82bjAqUfEcRTCgMStI6DfSZdjsupi1rcyLynZk/edit#gid=1123570530, https://docs.google.com/spreadsheets/d/1IHiPRzkSdtn140oaksbO8vRAGfpzUXhKBcdqrMDOFvo/edit?resourcekey=0-qyzlX1XyVmWNSv3SVc04uQ#gid=1703956858
Change-Id: I7ed38eaf28178fbf26404f195a276d72752b5671
2024-04-04 22:33:46 +00:00
TeYuan Wang
df6bb6e93c thermal: remove PMU_POLL control for game mode
We already have the CPU scheduler optimization for game mode to sustain
the power and perf, so keep PMU_POLL being disabled to avoid the interfence on CPU scheduler.

Bug: 329697728
Test: run genshin
Change-Id: Ifb6838be9767d67cc1cf6a8109a33c5bfd402727
2024-04-04 00:29:41 +00:00