Sample Header Ad - 728x90

How to investigate/solve Google Play Store high memory usage (-> high CPU -> battery drain)?

3 votes
0 answers
1510 views
Ever since my (not-rooted stock Android) Nokia 6.1 phone was upgraded to Android 10, last January, I have a performance issue with it: A couple of times per day it becomes near or completely unusable, often permanently until a hard restart. Also this causes high battery usage. However, using a battery analysis app didn't turn up any specific suspect. Recently I discovered adb shell, and when the phone starts behaving badly, - top showed me that the CPU-hogging process at such moments is kswapd:
Tasks: 681 total,   1 running, 680 sleeping,   0 stopped,   0 zombie
     Mem:      2.6G total,      2.4G used,      198M free,       11M buffers
    Swap:      1.0G total,      1.0G used,      112K free,      311M cached
   800%cpu  38%user  10%nice  52%sys 684%idle  10%iow   2%irq   4%sirq   0%host
     PID USER         PR  NI VIRT  RES  SHR S[%CPU] %MEM     TIME+ ARGS
    1739 system       18  -2 7.9G 144M  47M S 12.3   5.2  13:37.24 system_server
     148 root         20   0    0    0    0 S  8.6   0.0   3:50.15 [kswapd0]
     564 logd         30  10 168M  10M 0.9M S  7.3   0.3   1:11.69 logd
   28119 shell        20   0  35M 3.1M 1.7M R  5.0   0.1   0:00.45 top
     705 root         20   0 5.1G  44M  24M S  5.0   1.6   0:54.88 zygote64
- top -s 6 (sorts by memory use, RES) showed me that the main memory-using process at such moments is com.android.vending (= Google Play Store).
Tasks: 690 total,   1 running, 689 sleeping,   0 stopped,   0 zombie
     Mem:      2.6G total,      2.4G used,      180M free,       17M buffers
    Swap:      1.0G total,      0.9G used,      2.1M free,      412M cached
   800%cpu   9%user   3%nice  13%sys 772%idle   1%iow   2%irq   1%sirq   0%host
     PID USER         PR  NI VIRT [RES] SHR S %CPU  %MEM     TIME+ ARGS
    5296 u0_a105      20   0 2.1G 472M  24M S  0.0  17.2   1:18.80 com.android.vending
    1739 system       18  -2 7.9G 150M  53M S  3.0   5.4  13:12.22 system_server
    2233 u0_a111      20   0 6.1G 108M  56M S  0.6   3.9   2:03.84 com.android.systemui
    7120 u0_a161      20   0 7.7G  93M  45M S  0.6   3.4   8:22.83 com.google.android.youtube
    2931 u0_a90       20   0 5.9G  83M  36M S  0.0   3.0   3:05.21 com.google.android.gms.persistent
   26244 u0_a90       20   0 5.2G  74M  39M S  0.0   2.7   0:02.38 com.google.android.gms.ui
\[Side note. That seems to explain why battery analysis didn't help: Presumably kswapd CPU usage is ascribed to general kernel processing, not to this specific app.\] And that app is really the cause: Stopping that Google Play Store process (e.g., using am force-stop com.android.vending) quickly brings performance back to normal levels. As a workaround, I tried to disable automatic updates in Google Play Store, and that seems to have improved things a little, but the issue is definitely still there. So now, as another workaround, a couple of times per day I hard-stop that application, which helps to prevent it usually. ---- My vague **question** is: How to I get further with this issue? - Is this a known issue that has already been reported somewhere? Is the cause known? (E.g., is this triggered by the Google Play Store app detecting updates?) - Can I report it to Nokia in some bug tracker? Can I report it to Google somewhere? - What kind of additional information/dumps/logs would help to investigate this further? - Are there any other/better workarounds? (Disable some feature, go back to an older version of Google Play Store, clear some cache or force something to be regenerated, disable swap, whatever...) - Is there some way to automate the workaround I currently have? (I'm already using [Automate](https://play.google.com/store/apps/details?id=com.llamalab.automate) for some other things, but any automated solution apparently requires my device to be rooted.) (Note that my device is not rooted, and I would like to try to keep it that way. But I will consider rooting it, if there some kind of solution or workaround that requires that. If it helps, phone model is TA-1043, currently running build number 00WW_4_10C_SP04.)
Asked by MarnixKlooster ReinstateMonica (81 rep)
May 15, 2020, 06:28 PM
Last activity: Sep 22, 2020, 05:14 PM