Android smartphones often end up killing apps in the background. It makes for a very inconvenient user experience. This behavior is entirely randomized. A future change in Android, however, has people hopeful that this behavior of killing background apps might, at the very least, slow down. Google may introduce this new change as early as Android 13. although there have not been any confirmations regarding this as of yet.
The feature is known as “Multi-Generational Least Recently Used”, or MGLRU. The feature has already been out on Chrome OS for a while now. The tech giant maintains MGLRU over “a number of different kernels between 4.14 and 5.15”. According to one Googler, it has become “the default for tens of millions of users”, and the feature is seemingly due for introduction to Android. One commit on the Android Gerrit shows that Google has merged the change for Generic Kernel Image (GKI) for Android 13. Another unmerged commit under review shows that soon, it may even be possible to enable it via adb.
Google has identified a 40% reduction in kswapd CPU usage. Moreover, Google identified a decrease in 18% of out-of-memory (OOM) app killings on Android. According to the same Google engineer, the company tested MGLRU on “one million” Android devices. This seems to be about the Android Runtime on Chrome OS Virtual Machine (ARCVM) which powers Android 11 on Chrome OS. The engineer writes, “We’ve seen substantial improvements in terms of CPU utilization and memory pressure resulting in fewer OOM kills and reduced UI latency.”
The process managing virtual memory is kswapd. Therefore, if there is a 40% reduction in CPU usage, it implies freeing up a lot of potential processing headroom. With a decrease in out-of-memory app killing, it willl not kill background apps as often, benefitting end-users.