Optimizing low memory killers for mobile devices using reinforcement learning

C. Li, J. Bao, H. Wang. USENIX 2017

[IEEE]

Different from memory management mechanisms in legacy systems, those in mobile devices leverage the use of app caching to accelerate app launch performance. The responsiveness of switching back to a recently used app becomes significantly worse if the cached app process has been killed in the past due to a low memory constraint. We propose a new approach to optimize the low memory killer with reinforcement learning. The new low memory killer acts as an autonomic decision maker in an uncertain environment, continuously observing various indicators and metrics for memory management, making the process-killing decisions, and taking app launch latencies as the penalties from the decision-making environment. Through a trial-and-error exploration, the killer interacts with the dynamic environment and automatically learns a holistic policy through reinforcement learning optimizing the expected app launch latency over a long run. Preliminary experimental results show that the new approach consistently and significantly improves the app launch performance, outperforming the baselines.