skip to main content
10.1145/3552326.3567497acmconferencesArticle/Chapter ViewAbstractPublication PageseurosysConference Proceedingsconference-collections
research-article

ICE: Collaborating Memory and Process Management for User Experience on Resource-limited Mobile Devices

Published:08 May 2023Publication History

ABSTRACT

Mobile devices with limited resources are prevalent as they have a relatively low price. Providing a good user experience with limited resources has been a big challenge. This paper found that foreground applications are often unexpectedly interfered by background applications' memory activities. Improving user experience on resource-limited mobile devices calls for a strong collaboration between memory and process management. This paper proposes a framework, Ice, to optimize the user experience on resource-limited mobile devices. With Ice, processes that will cause frequent refaults in the background are identified and frozen accordingly. The frozen application will be thawed when memory condition allows. Evaluation of resource-limited mobile devices demonstrates that the user experience is effectively improved with Ice. Specifically, Ice boosts the frame rate by 1.57x on average over the state-of-the-art.

References

  1. R. Bakker. 2022. Android 12: how to know if an app is using the microphone and the camera secretly. https://crast.net/90775/android-12-how-to-know-if-an-app-is-using-the-microphone-and-the-camera-secretly/.Google ScholarGoogle Scholar
  2. K. Bareckas. 2022. Is my phone listening to me? https://nordvpn.com/zh/blog/is-my-phone-listening-to-me/.Google ScholarGoogle Scholar
  3. J. Brumley. 2017. The Apple and Samsung smartphone market survey. https://seekingalpha.com/article/4101007-apple-samsung-continue-lose-smartphone-market-share-shift-toward-value.Google ScholarGoogle Scholar
  4. Y. M. Chang, P. C. Hsiu, Y. H. Chang, and C. W. Chang. 2013. A Resource-Driven DVFS Scheme for Smart Handheld Devices. In ACM Transactions on Embedded Computer Systems. 1--22.Google ScholarGoogle Scholar
  5. J. Choi, J. Ahn, J. Kim, S. Ryu, and H. Han. 2016. In-memory file system with efficient swap support for mobile smart devices. In Transactions on Consumer Electronics (TCE). 275--282.Google ScholarGoogle Scholar
  6. D. Chu, A. Kansal, and J. Liu. 2012. Fast app launching for mobile devices using predictive user context. In International Conference on Mobile Systems, Applications and Services (MobiSys). 113--126.Google ScholarGoogle Scholar
  7. J. Courville and F. Chen. 2016. Understanding storage I/O behaviors of mobile applications. In 32nd Symposium on Mass Storage Systems and Technologies (MSST). 1--11.Google ScholarGoogle Scholar
  8. C. Crowder. 2022. Survey: Use Access Dots to Find Out If Apps Are Using Microphone and Camera in the Background. https://www.maketecheasier.com/prevent-android-apps-using-microphone-camera-background/.Google ScholarGoogle Scholar
  9. D. Dai, Y. Chen, D. Kimpe, and R. B. Ross. 2021. Trigger-Based Incremental Data Processing with Unified Sync and Async Model. In IEEE Transactions on Cloud Computing (TCC). 372--385.Google ScholarGoogle Scholar
  10. L. David, A. Chiu, and D. Yuan. 2021. M3: end-to-end memory management in elastic system software stacks. In Proceedings of the Sixteenth European Conference on Computer Systems (EuroSys). 507--522.Google ScholarGoogle Scholar
  11. R. Davis. 2021. Short-form video market soars: people are spending more and more time on short-form video. https://variety.com/2021/streaming/news/china-short-video-market-study-1235001776/.Google ScholarGoogle Scholar
  12. Engineers. 2009. Linux Completely Fair Scheduler. https://www.linuxjournal.com/node/10267.Google ScholarGoogle Scholar
  13. Engineers. 2020. Introduction of Android OOM Adjustments mechanism. https://developpaper.com/android-oom-adjustments/.Google ScholarGoogle Scholar
  14. Engineers. 2021. Process management in Android framework. https://developer.android.com/reference/android/os/Process.html.Google ScholarGoogle Scholar
  15. Hocuri et al. 2022. Source code of SuperFreezZ on GitLab. https://gitlab.com/SuperFreezZ/SuperFreezZ.Google ScholarGoogle Scholar
  16. Y. Feng, A. Riska, and E. Smirni. 2012. Busy bee: how to use traffic information for better scheduling of background tasks. In ACM/SPEC International Conference on Performance Engineering. 145--156.Google ScholarGoogle Scholar
  17. AOSP Foundation. 2021. Android Debug Bridge (ADB) Tool. https://androidmtk.com/download-minimal-adb-and-fastboot-tool.Google ScholarGoogle Scholar
  18. AOSP Foundation. 2021. Android ui/application exerciser monkey tool. https://developer.android.com/studio/test/monkey.Google ScholarGoogle Scholar
  19. AOSP Foundation. 2021. Performance tracing using Android Systrace. https://developer.android.com/topic/performance/tracing.Google ScholarGoogle Scholar
  20. Linux Foundation. 2012. Refault distance. https://lwn.net/Articles/495543/.Google ScholarGoogle Scholar
  21. Linux Foundation. 2017. Linux patch of per process reclaim. https://lwn.net/Articles/544319/.Google ScholarGoogle Scholar
  22. Linux Foundation. 2021. Least-recently-used (lru) algorithm in Linux kernel. https://www.kernel.org/.Google ScholarGoogle Scholar
  23. Linux Foundation. 2021. ZRAM in Linux kernel. https://www.kernel.org/doc/Documentation/blockdev/zram.txt.Google ScholarGoogle Scholar
  24. Linux Foundation. 2022. Process Freezing mechanism in Linux kernel. https://elixir.bootlin.com/linux/latest/source/include/linux/freezer.h.Google ScholarGoogle Scholar
  25. Linux Foundation. 2022. Shadow entry for refault awareness in the Linux kernel. https://android.googlesource.com/kernel/common/+/refs/heads/android-mainline/mm/workingset.c.Google ScholarGoogle Scholar
  26. X. Gao, M. Dong, X. Miao, W. Du, C. Yu, and H. Chen. 2019. EROFS: A Compression-friendly Readonly File System for Resource-scarce Devices. In USENIX Annual Technical Conference (USENIX ATC). 149--162.Google ScholarGoogle Scholar
  27. R. Gouicem, D. Carver, J.P. Lozi, J. Sopena, B. Lepers, W. Zwaenepoel, N. Palix, J. Lawall, and G. Muller. 2020. Fewer Cores, More Hertz: Leveraging High-Frequency Cores in the OS Scheduler for Improved Application Performance. In USENIX Annual Technical Conference (USENIX ATC). 435--448.Google ScholarGoogle Scholar
  28. J. Gu, Y. Lee, Y. Zhang, M. Chowdhury, and K. G. Shin. 2017. Efficient memory disaggregation with infiniswap. In 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI). 649--667.Google ScholarGoogle Scholar
  29. W. Guo, K. Chen, H. Feng, Y. Wu, R. Zhang, and W. Zheng. 2016. MARS: Mobile application relaunching speed-up through flash-aware page swapping. In IEEE Transactions on Computers (TC). 916--928.Google ScholarGoogle Scholar
  30. S. Hahn, S. Lee, I. Yee, D. Ryu, and J. Kim. 2018. Fasttrack: Foreground app-aware I/O management for improving user experience of android smartphones. In USENIX Annual Technical Conference (USENIX ATC). 15--28.Google ScholarGoogle Scholar
  31. Y. Hu, S. Liu, and P Huang. 2019. A case for Lease-Based, Utilitarian Resource Management on Mobile Devices. In Proceedings of the 24th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 301--315.Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. G. Huang, M. Xu, F. X. Lin, Y. Liu, Y. Ma, S. Pushp, and X. Liu. 2017. Shuffledog: Characterizing and adapting user-perceived latency of android apps. In IEEE Transactions on Mobile Computing. 2913--2926.Google ScholarGoogle Scholar
  33. Facebook Inc. 2015. Report of Facebook application battery drain. https://www.facebook.com/arig/posts/10105815276466163.Google ScholarGoogle Scholar
  34. MeiZu Inc. 2019. The smart freeze 3.0 of Flyme. https://meizu-bg.eu/en/some-new-features-and-improvements-in-flyme-7-3/.Google ScholarGoogle Scholar
  35. M. Ju, H. Kim, M. Kang, and S. Kim. 2015. Efficient memory reclaiming for mitigating sluggish response in mobile devices. In IEEE 5th International Conference on Consumer Electronics. 232--236.Google ScholarGoogle Scholar
  36. The kernel development community. 2007. Freezing of tasks in Linux kernel. https://www.kernel.org/doc/html/v5.6/power/freezing-of-tasks.html.Google ScholarGoogle Scholar
  37. S.H. Kim, J. Jeong, and J. Kim. 2017. Application-aware swapping for mobile systems. In ACM Transactions on Embedded Computing Systems. 1--19.Google ScholarGoogle Scholar
  38. S.H. Kim, J. Jeong, J.S. Kim, and S. Maeng. 2016. SmartLMK: A memory reclamation scheme for improving user-perceived app launch time. In ACM Transactions on Embedded Computing Systems. 1--25.Google ScholarGoogle Scholar
  39. S. Kwon, S.H. Kim, J. Kim, and J. Jeong. 2015. Managing gpu buffers for caching more apps in mobile systems. In International Conference on Embedded Software (EMSOFT). 207--216.Google ScholarGoogle Scholar
  40. N. Lebeck, A. Krishnamurthy, H. M. Levy, and I. Zhang. 2020. End the senseless killing: Improving memory management for mobile operating systems. In USENIX Annual Technical Conference (USENIX ATC). 873--887.Google ScholarGoogle Scholar
  41. C. Li, L. Shi, Y. Liang, and C. J. Xue. 2020. SEAL: User Experience-Aware Two-Level Swap for Mobile Devices. In Transactions on Computer-Aided Design of Integrated Circuits and Systems (TCAD). 4102--4114.Google ScholarGoogle Scholar
  42. C. Li, L. Shi, and Chun Jason Xue. 2021. MobileSwap: Cross-Device Memory Swapping for Mobile Devices. In 58th ACM/IEEE Design Automation Conference (DAC).Google ScholarGoogle Scholar
  43. C. Li, H. Zhuang, Q. Wang, C. Wang, and X. Zhou. 2018. LKSM: Light Weight Key-Value Store for Efficient Application Services on Local Distributed Mobile Devices. In Transactions on Services Computing (TSC). 1026--1039.Google ScholarGoogle Scholar
  44. Z. Li and M. Ierapetritou. 2008. Process scheduling under uncertainty: Review and challenges. In Computers and Chemical Engineering. 715--727.Google ScholarGoogle Scholar
  45. Y. Liang, J. Li, R. Ausavarungnirun, R. Pan, L. Shi, T. W. Kuo, and C. J. Xue. 2020. Acclaim: Adaptive memory reclaim to improve user experience in android systems. In USENIX Annual Technical Conference (USENIX ATC). 897--910.Google ScholarGoogle Scholar
  46. Y. Liang, Q. Li, and C. J. Xue. 2019. Mismatched memory management of android smartphones. In 11th USENIX Workshop on Hot Topics in Storage and File Systems (HotStorage).Google ScholarGoogle Scholar
  47. X. Liu, C. Vlachou, F. Qian, C. Wang, and K.H. Kim. 2020. Firefly: Untethered Multi-user VR for Commodity Mobile Devices. In USENIX Annual Technical Conference (USENIX ATC). 943--957.Google ScholarGoogle Scholar
  48. Nubia Technology Co Ltd. 2017. Patent of process freezing in mobile systems. https://patents.google.com/patent/CN107066320A/en.Google ScholarGoogle Scholar
  49. T. Masashi and U. Takeshi. 2013. Smartphone user interface. In FUJITSU Science Technical Journal.Google ScholarGoogle Scholar
  50. A. S. Miller. 2019. Study of the frame rate metric: frames-per-second. https://www.reneelab.com/frames-per-second.html.Google ScholarGoogle Scholar
  51. S. Nogd, G. Nelissen, M. Nasri, and B. Brandenburg. 2020. Response-Time Analysis for Non-Preemptive Global Scheduling with FIFO Spin Locks. In IEEE Real-Time Systems Symposium (RTSS). 115--127.Google ScholarGoogle Scholar
  52. A. Parate, M. Bohmer, D. Chu, D. Ganesan, and B. M. Marlin. 2013. Practical prediction and prefetch for faster access to applications on mobile phones. In Proceedings of the ACM International Joint Conference on Pervasive and Ubiquitous Computing. 275--284.Google ScholarGoogle Scholar
  53. Android Open Source Project. 2012. Source code to manage the Java heap in Android. https://android.googlesource.com/platform/art/+/master/runtime/gc/heap.cc.Google ScholarGoogle Scholar
  54. J.P. Rodríguez and P.M. Yomsi. 2019. Thermal-Aware Schedulability Analysis for Fixed-Priority Non-Preemptive Real-Time Systems. In IEEE Real-Time Systems Symposium (RTSS). 154--166.Google ScholarGoogle Scholar
  55. M. Saxena and M. M. Swift. 2010. FlashVM: Virtual Memory Management on Flash. In USENIX Annual Technical Conference (USENIX ATC).Google ScholarGoogle Scholar
  56. S. Son, S. Y. Lee, Y. Jin, J. Bae, J. Jeong, T. J. Ham, J. W. Lee, and Y. Hongil. 2021. ASAP: Fast Mobile Application Switch via Adaptive Prepaging. In USENIX Annual Technical Conference (USENIX ATC). 365--380.Google ScholarGoogle Scholar
  57. H. Sungju, J. Yoo, and S. Hong. 2015. Cross-layer resource control and scheduling for improving interactivity in Android. In Software: Practice and Experience. 1549--1570.Google ScholarGoogle Scholar
  58. Pyropus technology. 2017. Memory tester tool memtester. https://pyropus.ca/software/memtester/.Google ScholarGoogle Scholar
  59. P. Tseng, P. Hsiu, C. Pan, and T. W. Kuo. 2014. User-Centric Energy-Efficient Scheduling on Multi-Core Mobile Devices. In 51st ACM/EDAC/IEEE Design Automation Conference (DAC). 1--6.Google ScholarGoogle Scholar
  60. Website. 2021. Number of Smartphone and Mobile Phone Users Worldwide in 2021/2022: Demographics, Statistics, Predictions. https://financesonline.com/number-of-smartphone-users-worldwide/.Google ScholarGoogle Scholar
  61. Website. 2022. Perfetto: system profiling, app tracing and trace analysis. https://perfetto.dev/.Google ScholarGoogle Scholar
  62. X. Zhang, R. Bashizade, Y. Wang, S. Mukherjee, and A. R. Lebeck. 2021. Statistical Robustness of Markov Chain Monte Carlo Accelerators. In Proceedings of the 26th ACM International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS). 959--974.Google ScholarGoogle Scholar
  63. S. Zhao, H. Gu, and A.J. Mashtizadeh. 2021. SKQ: Event Scheduling for Optimizing Tail Latency in a Traditional OS Kernel. In USENIX Annual Technical Conference (USENIX ATC). 759--772.Google ScholarGoogle Scholar
  64. S. Zhao, Z. Luo, Z. Jiang, H. Wang, F. Xu, S. Li, J. Yin, and G. Pan. 2019. AppUsage2Vec: Modeling Smartphone App Usage for Prediction. In IEEE 35th International Conference on Data Engineering (ICDE). 1322--1333.Google ScholarGoogle Scholar
  65. X. Zhu, D. Liu, K. Zhong, J. Ren, and T. Li. 2017. Smartswap: High-performance and user experience friendly swapping in mobile systems. In Proceedings of the 54th Annual Design Automation Conference (DAC). 1--6.Google ScholarGoogle Scholar

Index Terms

  1. ICE: Collaborating Memory and Process Management for User Experience on Resource-limited Mobile Devices

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Conferences
          EuroSys '23: Proceedings of the Eighteenth European Conference on Computer Systems
          May 2023
          910 pages
          ISBN:9781450394871
          DOI:10.1145/3552326

          Copyright © 2023 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 8 May 2023

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate241of1,308submissions,18%
        • Article Metrics

          • Downloads (Last 12 months)612
          • Downloads (Last 6 weeks)51

          Other Metrics

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader